Changeset 1279 in ProjectBuilder for devel/pb/bin


Ignore:
Timestamp:
Mar 25, 2011, 1:23:12 AM (13 years ago)
Author:
Bruno Cornec
Message:
  • Adds delivery of the public key to each repository ateach delivery
  • Fix debian repo build
  • Adds suport for .deb package signing
File:
1 edited

Legend:

Unmodified
Added
Removed
  • devel/pb/bin/pb

    r1278 r1279  
    14151415                next if ($tmp !~ /^SD BUILD.*:/);
    14161416                $tmp =~ s|.*../(.*)_(.*).sd.*|$1|;
    1417                 $made="$made $tmp"."_*.sd";
     1417                $made = "$made $tmp"."_*.sd";
    14181418            }
    14191419            close(LOG);
     
    16101610        chomp($src);
    16111611        close(KEEP);
    1612         $src="$src $ENV{'PBBUILDDIR'}/pbscript.$$";
     1612        $src = "$src $ENV{'PBBUILDDIR'}/pbscript.$$";
     1613    }
     1614    if (($cmt eq "Sources") || ($cmt eq "Packages")) {
     1615        my ($pbpackager) = pb_conf_get("pbpackager");
     1616        $ENV{'PBPACKAGER'} = $pbpackager->{$ENV{'PBPROJ'}};
     1617        pb_log(0,"Exporting public key for $ENV{'PBPACKAGER'}\n");
     1618        # Using pb_system is not working due to redirection below
     1619        system("gpg --export -a \'$ENV{'PBPACKAGER'}\' > $ENV{'PBDESTDIR'}/$ENV{'PBPROJ'}.pubkey");
     1620        chmod 0644,"$ENV{'PBDESTDIR'}/$ENV{'PBPROJ'}.pubkey";
     1621        $src = "$src $ENV{'PBDESTDIR'}/$ENV{'PBPROJ'}.pubkey";
    16131622    }
    16141623    # Remove potential leading spaces (cause problem with basename)
     
    18251834echo "Creating Release metadata ($pbos->{'arch'} aka $debarch)"
    18261835cat \$TMPD/Release > dists/$pbos->{'version'}/contrib/binary-$debarch/Release
    1827 echo "Architecture: $debarch >> dists/$pbos->{'version'}/contrib/binary-$debarch/Release
     1836echo "Architecture: $debarch" >> dists/$pbos->{'version'}/contrib/binary-$debarch/Release
    18281837echo "Creating Source metadata"
    18291838dpkg-scansources $pbos->{'version'} /dev/null | gzip -c9 > dists/$pbos->{'version'}/contrib/source/Sources.gz
     
    38063815$ENV{'PBPASSPATH'} = $passpath->{$ENV{'PBPROJ'}} if ((not defined $ENV{'PBPASSPATH'})&& (defined $passpath->{$ENV{'PBPROJ'}})) ;
    38073816
     3817# Remove extra spaces
     3818$made =~ s/\s+/ /g;
     3819$made =~ s/^\s//g;
     3820$made =~ s/\s$//g;
     3821
    38083822if ($pbos->{'type'} eq "rpm") {
    38093823    eval
     
    38253839
    38263840        pb_log(0,"Signing RPM packages...\n");
    3827         $made =~ s/ +/ /g;
    3828         $made =~ s/^ //g;
    3829         $made =~ s/ $//g;
    38303841        pb_log(2,"pb_sign_pkg: pkgs:".Dumper(split(/ /,$made))."\n");
    38313842        $sign->rpmssign(split(/ /,$made));
    38323843    }
    38333844} elsif ($pbos->{'type'} eq "deb") {
    3834     #pb_system("debsign $made","Signing DEB packages");
     3845    my $changes = "";
     3846    foreach my $c (split(/ /,$made)) {
     3847        $changes .= " $ENV{'PBBUILDDIR'}/$c" if ($c =~ /\.changes$/);
     3848    }
     3849    pb_system("debsign -m\'$ENV{'PBPACKAGER'}\' $changes","Signing DEB packages");
    38353850} else {
    38363851    pb_log(0,"I don't know yet how to sign packages for type $pbos->{'type'}.\nPlease give feedback to dev team\n");
     3852}
    38373853pb_log(2,"exiting pb_sign_pkg\n");
    38383854}
    3839 }
    38403855
    384138561;
Note: See TracChangeset for help on using the changeset viewer.