# $Id: Sign.pm 1689 2007-06-28 22:44:24Z guillomovitch $ package Youri::Submit::Action::Sign; =head1 NAME Youri::Submit::Action::Sign - GPG signature =head1 DESCRIPTION This action plugin ensures GPG signature of packages. =cut use warnings; use strict; use Carp; use base qw/Youri::Submit::Step/; sub _init { my $self = shift; my %options = ( name => '', path => $ENV{HOME} . '/.gnupg', passphrase => '', @_ ); croak "undefined name" unless $options{name}; croak "undefined path" unless $options{path}; croak "invalid path $options{path}" unless -d $options{path}; $self->{_name} = $options{name}; $self->{_path} = $options{path}; $self->{_passphrase} = $options{passphrase}; } sub process_packages { my ($self, $packages, $repository, $target, $context) = @_; croak "Not a class method" unless ref $self; return if $self->{_test}; foreach my $package (@$packages) { $package->sign( $self->{_name}, $self->{_path}, $self->{_passphrase} ); } } =head1 COPYRIGHT AND LICENSE Copyright (C) 2002-2006, YOURI project This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. =cut 1;