[Mageia-sysadm] [331] use mga-signpackage script with sudo to sign packages

root at mageia.org root at mageia.org
Thu Jan 20 18:10:17 CET 2011


Revision: 331
Author:   boklm
Date:     2011-01-20 18:10:16 +0100 (Thu, 20 Jan 2011)
Log Message:
-----------
use mga-signpackage script with sudo to sign packages

Modified Paths:
--------------
    build_system/mdv-youri-submit/trunk/lib/Youri/Submit/Action/Sign.pm

Modified: build_system/mdv-youri-submit/trunk/lib/Youri/Submit/Action/Sign.pm
===================================================================
--- build_system/mdv-youri-submit/trunk/lib/Youri/Submit/Action/Sign.pm	2011-01-20 16:38:50 UTC (rev 330)
+++ build_system/mdv-youri-submit/trunk/lib/Youri/Submit/Action/Sign.pm	2011-01-20 17:10:16 UTC (rev 331)
@@ -19,6 +19,8 @@
 sub _init {
     my $self   = shift;
     my %options = (
+	signuser   => 'signbot',
+	signscript => '/usr/bin/mga-signpackage',
         name       => '',
         path       => $ENV{HOME} . '/.gnupg',
         passphrase => '',
@@ -32,17 +34,17 @@
     $self->{_name}       = $options{name};
     $self->{_path}       = $options{path};
     $self->{_passphrase} = $options{passphrase};
+    $self->{_signuser}   = $options{signuser};
+    $self->{_signscript} = $options{signscript};
 }
 
 sub run {
     my ($self, $package, $repository, $target, $define) = @_;
     croak "Not a class method" unless ref $self;
 
-    $package->sign(
-        $self->{_name},
-        $self->{_path},
-        $self->{_passphrase}
-    ) unless $self->{_test};
+    if (! $self->{_test}) {
+	system('/usr/bin/sudo', '-u', $self->{_signuser}, $self->{_signscript}, $package->{_file}, $self->{_name}, $self->{_path}) == 0;
+    }
 }
 
 =head1 COPYRIGHT AND LICENSE
-------------- next part --------------
An HTML attachment was scrubbed...
URL: </pipermail/mageia-sysadm/attachments/20110120/8eb18b3d/attachment.html>


More information about the Mageia-sysadm mailing list