Dist-Zilla-Plugin-RPM

 view release on metacpan or  search on metacpan

lib/Dist/Zilla/Plugin/RPM.pm  view on Meta::CPAN

    my $spec = $self->spec_file;
    for my $file ($self->zilla->files->flatten) {
        if ($file->name eq $self->spec_file) {
            $self->zilla->prune_file($file);
        }
    }
    return;
}

has '_rpmbuild_options' => (
  is => 'ro', isa => 'ArrayRef[Str]', lazy => 1,
  default => sub {
    my $self = shift;
    return( [
      $self->sign ? '--sign' : (),
      $self->ignore_build_deps ? '--nodeps' : (),
    ] );
  },
);

has '_rpmbuild_stage' => (

lib/Dist/Zilla/Plugin/RPM.pm  view on Meta::CPAN

    $self->_execute_rpmbuild;
    $self->log('RPMs build: '.join(', ', @{$self->_packages_build} ));

    if( $self->push_packages ) {
        $self->_execute_push_command;
    }

    return;
}

has '_packages_build' => ( is => 'ro', isa => 'ArrayRef[Str]', lazy => 1,
  default => sub { [] }
);

sub _execute_rpmbuild {
  my $self = shift;
  my ($in, $out, $err);
  my $lang = $ENV{'LANG'};
  $ENV{'LANG'} = 'C';
  $self->log('building RPM...');
  IPC::Run::run( $self->_rpmbuild_command, \$in, \$out, \$err )

lib/Dist/Zilla/Plugin/RPM.pm  view on Meta::CPAN

  foreach my $line ( split(/\n/, $out ) ) {
    if( $line =~ m/^Wrote: (.*)$/) {
      push(@{$self->_packages_build}, $1);
    }
  }
  $ENV{'LANG'} = $lang;
  return;
}

has _packages_to_push => (
  is => 'ro', isa => 'ArrayRef[Str]', lazy => 1,
  default => sub {
    my $self = shift;
    my $regex = $self->push_ignore_packages;
    return( [ grep { $_ !~ m/$regex/ } @{$self->_packages_build} ] );
  },
);

has _push_command => (
  is => 'ro', isa => 'ArrayRef', lazy => 1,
  default => sub {
    my $self = shift;
    return( [ split(/ /, $self->push_command) ] );
  },
);

sub _execute_push_command {
  my $self = shift;
  my ($in, $out, $err);



( run in 0.565 second using v1.01-cache-2.11-cpan-5f2e87ce722 )