- Timestamp:
- Nov 11, 2019, 9:51:55 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
devel/pb/bin/pb
r2450 r2458 2281 2281 close(KEEP); 2282 2282 } 2283 2284 $delivery->{$ENV{'PBPROJ'}} = "" if (not defined $delivery->{$ENV{'PBPROJ'}}); 2285 my $repotag = ""; 2286 $repotag = "-$delivery->{$ENV{'PBPROJ'}}" if ($delivery->{$ENV{'PBPROJ'}} ne ""); 2287 2283 2288 if (($cmt eq "Sources") || ($cmt eq "Packages") || ($cmt eq "CPAN")) { 2284 2289 my ($pbpackager) = pb_conf_get("pbpackager"); … … 2286 2291 pb_log(0,"Exporting public key for $ENV{'PBPACKAGER'}\n"); 2287 2292 # Using pb_system is not working due to redirection below 2288 system("gpg --export -a \'$ENV{'PBPACKAGER'}\' > $ENV{'PBDESTDIR'}/$ENV{'PBPROJ'} .pubkey");2289 chmod 0644,"$ENV{'PBDESTDIR'}/$ENV{'PBPROJ'} .pubkey";2290 $src = "$src $ENV{'PBDESTDIR'}/$ENV{'PBPROJ'} .pubkey";2293 system("gpg --export -a \'$ENV{'PBPACKAGER'}\' > $ENV{'PBDESTDIR'}/$ENV{'PBPROJ'}$repotag.pubkey"); 2294 chmod 0644,"$ENV{'PBDESTDIR'}/$ENV{'PBPROJ'}$repotag.pubkey"; 2295 $src = "$src $ENV{'PBDESTDIR'}/$ENV{'PBPROJ'}$repotag.pubkey"; 2291 2296 2292 2297 my ($gpgaddkey) = pb_conf_get_if("pbadditionalgpg"); … … 2296 2301 foreach my $k (split(/,/,$pbadditionalgpg)) { 2297 2302 pb_log(0,"Exporting public key $k\n"); 2298 system("gpg --export -a \'$k\' > $ENV{'PBDESTDIR'}/$ENV{'PBPROJ'} -$k.pubkey");2299 $src = "$src $ENV{'PBDESTDIR'}/$ENV{'PBPROJ'} -$k.pubkey";2303 system("gpg --export -a \'$k\' > $ENV{'PBDESTDIR'}/$ENV{'PBPROJ'}$repotag-$k.pubkey"); 2304 $src = "$src $ENV{'PBDESTDIR'}/$ENV{'PBPROJ'}$repotag-$k.pubkey"; 2300 2305 } 2301 2306 } … … 2311 2316 my ($sshhost,$sshdir) = pb_conf_get($host,$dir); 2312 2317 # Not mandatory... 2313 $delivery->{$ENV{'PBPROJ'}} = "" if (not defined $delivery->{$ENV{'PBPROJ'}});2314 2318 my ($sshlogin,$sshport) = pb_conf_get_if($login,$port); 2315 2319 $sshport->{$ENV{'PBPROJ'}} = 22 if (not defined $sshport->{$ENV{'PBPROJ'}}); … … 2373 2377 my $repodir = $tdir; 2374 2378 $repodir =~ s|^$remdir/||; 2375 my $repotag = ""; 2376 $repotag = "-$delivery->{$ENV{'PBPROJ'}}" if ($delivery->{$ENV{'PBPROJ'}} ne ""); 2379 $repodir =~ s|//|/|g; 2377 2380 2378 2381 my ($pbrepo) = pb_conf_get("pbrepo"); … … 2390 2393 my $pbgpgcheck; 2391 2394 $pbgpgcheck = $gpgcheck->{$ENV{'PBPROJ'}} if (defined $gpgcheck); 2392 my $pbgpgkey = "$pbrepo->{$ENV{'PBPROJ'}}/$repodir/$ENV{'PBPROJ'} .pubkey";2395 my $pbgpgkey = "$pbrepo->{$ENV{'PBPROJ'}}/$repodir/$ENV{'PBPROJ'}$repotag.pubkey"; 2393 2396 my ($gpgaddpkey) = pb_conf_get_if("pbadditionalgpg"); 2394 2397 my $pbadditionalgpg; … … 2396 2399 if (defined $pbadditionalgpg) { 2397 2400 foreach my $k (split(/,/,$pbadditionalgpg)) { 2398 $pbgpgkey .= " $pbrepo->{$ENV{'PBPROJ'}}/$repodir/$ENV{'PBPROJ'} -$k.pubkey";2401 $pbgpgkey .= " $pbrepo->{$ENV{'PBPROJ'}}/$repodir/$ENV{'PBPROJ'}$repotag-$k.pubkey"; 2399 2402 } 2400 2403 } … … 2410 2413 cat > $ENV{'PBPROJ'}$repotag.repo << EOT 2411 2414 [$ENV{'PBPROJ'}$repotag] 2412 name=$pbos->{'name'} $pbos->{'version'} $pbos->{'arch'} - $ENV{'PBPROJ'} Vanilla Packages2415 name=$pbos->{'name'} $pbos->{'version'} $pbos->{'arch'} - $ENV{'PBPROJ'}$repotag Vanilla Packages 2413 2416 baseurl=$pbrepo->{$ENV{'PBPROJ'}}/$repodir 2414 2417 enabled=1 … … 2427 2430 createrepo -s $pbsha . 2428 2431 # Link to the key 2429 if [ -s $ENV{'PBPROJ'} .pubkey ]; then2432 if [ -s $ENV{'PBPROJ'}$repotag.pubkey ]; then 2430 2433 # Avoiding creating empty repomd.xml.key; fails on opensuse 12.1 2431 (cd repodata ; ln -sf ../$ENV{'PBPROJ'}.pubkey repomd.xml.key) 2434 # Signature done later 2435 (cd repodata ; ln -sf ../$ENV{'PBPROJ'}$repotag.pubkey repomd.xml.key) 2432 2436 fi 2433 # sign the repomd (at least useful for SLES - which requires a local key)2434 # gpg -a --detach-sign repodata/repomd.xml2435 2437 # SLES also looks for media.1/info.txt 2436 2438 EOF … … 2440 2442 # Prepare a script to ease urpmi setup 2441 2443 cat > $ENV{'PBPROJ'}$repotag.addmedia << EOT 2442 #rpm --import $pbrepo->{$ENV{'PBPROJ'}}/$repodir/$ENV{'PBPROJ'} .pubkey2444 #rpm --import $pbrepo->{$ENV{'PBPROJ'}}/$repodir/$ENV{'PBPROJ'}$repotag.pubkey 2443 2445 urpmi.addmedia $ENV{'PBPROJ'}$repotag $pbrepo->{$ENV{'PBPROJ'}}/$repodir with media_info/hdlist.cz 2444 2446 EOT … … 2452 2454 genhdlist . 2453 2455 fi 2454 (cd media_info ; ln -sf ../$ENV{'PBPROJ'} .pubkey pubkey)2456 (cd media_info ; ln -sf ../$ENV{'PBPROJ'}$repotag.pubkey pubkey) 2455 2457 EOF 2456 2458 } … … 2926 2928 # If target is deb family then sign Release file for Packages 2927 2929 my $pbos2 = pb_distro_get_context($v); 2930 2928 2931 if (($cmt =~ /Packages/) && ($pbos2->{'type'} eq "deb")) { 2929 2932 my $debarch = pb_get_debarch($pbos2); … … 2937 2940 pb_system("$shcmdbase \"chmod 644 $debfile/$f.gpg\"","Set mode to 644 for $debfile/$f.gpg"); 2938 2941 } 2942 } 2943 2944 if (($cmt =~ /Packages/) && 2945 ((($pbos2->{'name'} eq "sles") && ($pbos2->{'version'} ge 15)) || 2946 (($pbos2->{'name'} eq "opensuse") && ($pbos2->{'version'} ge 15)))) { 2947 pb_system("cd $ENV{'PBBUILDDIR'} ; $cpcmd $cptarget/repodata/repomd.xml . 2> /dev/null","Getting repomd.xml file from $cptarget/repodata"); 2948 pb_sign_file("$ENV{'PBBUILDDIR'}/repomd.xml"); 2949 pb_system("$cpcmd $ENV{'PBBUILDDIR'}/repomd.xml.gpg $cptarget/repodata/repomd.xml.asc 2> /dev/null","Putting back repomd.xml.asc file to $cptarget/repodata"); 2950 my ($void,$rpdir) = split(/:/,$cptarget); 2951 pb_system("$shcmdbase \"chmod 644 $rpdir/repodata/repomd.xml.asc\"","Set mode to 644 for $rpdir/repodata/repomd.xml.asc"); 2939 2952 } 2940 2953 … … 3659 3672 } 3660 3673 if (/^testver/) { 3661 s/^testver:\n\s+$ENV{'PBPROJ'}:(.*)$/#testver:\n# \s+$ENV{'PBPROJ'}: $1/;3674 s/^testver:\n\s+$ENV{'PBPROJ'}:(.*)$/#testver:\n# $ENV{'PBPROJ'}: $1/; 3662 3675 pb_log(0,"Commenting testver in $ENV{'PBCONFDIR'}/$newver/$ENV{'PBPROJ'}.yml\n"); 3663 3676 my $txt = $_; … … 5294 5307 5295 5308 pb_sign_setenv(); 5296 pb_log(0,"Signing Debian Releasefile as $ENV{'PBPACKAGER'}...\n");5309 pb_log(0,"Signing file $file as $ENV{'PBPACKAGER'}...\n"); 5297 5310 5298 5311 if (not defined $ENV{'PBPASSPHRASE'}) {
Note:
See TracChangeset
for help on using the changeset viewer.