aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Iurt/Emi.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Iurt/Emi.pm')
-rw-r--r--lib/Iurt/Emi.pm20
1 files changed, 13 insertions, 7 deletions
diff --git a/lib/Iurt/Emi.pm b/lib/Iurt/Emi.pm
index 1222ca0..3b7ce5a 100644
--- a/lib/Iurt/Emi.pm
+++ b/lib/Iurt/Emi.pm
@@ -106,6 +106,18 @@ sub find_prefixes_ready_to_upload {
return %targets;
}
+sub generate_upload_command {
+ my ($config, $prefix, $media, $target, $user, $packages, $finish, $youri_file) = @_;
+ # Most of this function should be in the config...
+ my $base_command = "/usr/bin/perl -I/usr/share/mga-youri-submit/lib /usr/share/mga-youri-submit/bin/youri-submit --config /etc/youri/submit-upload.conf";
+ my $all_posts = `$base_command --list posts $target`;
+ $all_posts =~ s/\n/ /g;
+ $all_posts =~ s/(^| +)/ --skip-post /g;
+ $all_posts =~ s/--skip-post *$//;
+ my $skip = $finish ? "" : $all_posts;
+ "$base_command --verbose --define user=$user --define prefix=$prefix --define section=$media $skip $target @$packages &> $youri_file";
+}
+
sub upload_prefix_in_media {
my ($config, $pkg_tree, $prefix, $media, $o_finish) = @_;
@@ -143,13 +155,7 @@ sub upload_prefix_in_media {
$user ||= $config->{upload_user};
- my $base_command = "/usr/bin/perl -I/usr/share/mga-youri-submit/lib /usr/share/mga-youri-submit/bin/youri-submit --config /etc/youri/submit-upload.conf";
- my $all_posts = `$base_command --list posts $target`;
- $all_posts =~ s/\n/ /g;
- $all_posts =~ s/(^| +)/ --skip-post /g;
- $all_posts =~ s/--skip-post *$//;
- my $skip = $o_finish ? "" : $all_posts;
- my $command = "$base_command --verbose --define user=$user --define prefix=$prefix --define section=$media $skip $target @packages &> $done$path/$youri_file";
+ my $command = generate_upload_command($config, $prefix, $media, $target, $user, \@packages, $o_finish, "$done$path/$youri_file");
plog('DEBUG', "running $command");
if (!system($command)) {
plog('INFO', "upload succeeded");