diff options
Diffstat (limited to 'lib/Youri/Submit/Action/RebuildPackage.pm')
-rw-r--r-- | lib/Youri/Submit/Action/RebuildPackage.pm | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/Youri/Submit/Action/RebuildPackage.pm b/lib/Youri/Submit/Action/RebuildPackage.pm index d121090..a2ba4b0 100644 --- a/lib/Youri/Submit/Action/RebuildPackage.pm +++ b/lib/Youri/Submit/Action/RebuildPackage.pm @@ -32,6 +32,12 @@ sub run { croak "Not a class method" unless ref $self; $package->is_source or return 1; + + my $prefix; + if ($package->get_file_name() =~ m/^(\d{14})\..*$/) { + $prefix = $1; + } + my $srpm_name = $package->get_canonical_name; my @packages = $self->{rules}{$srpm_name} or return 1; my $svn = $repository->get_svn_url(); @@ -44,7 +50,11 @@ sub run { chdir 'current'; $updater->update_from_spec(glob('SPECS/*.spec')); system('svn', 'ci', '-m', "Rebuild for new $srpm_name"); - system("mgarepo submit &"); + if ($prefix) { + system("mgarepo submit --define dependencies=$prefix &"); + } else { + system("mgarepo submit &"); + } chdir $oldcwd; } } |