aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Youri/Submit/Check/Rpmlint.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Youri/Submit/Check/Rpmlint.pm')
-rw-r--r--lib/Youri/Submit/Check/Rpmlint.pm89
1 files changed, 0 insertions, 89 deletions
diff --git a/lib/Youri/Submit/Check/Rpmlint.pm b/lib/Youri/Submit/Check/Rpmlint.pm
deleted file mode 100644
index a38f2ba..0000000
--- a/lib/Youri/Submit/Check/Rpmlint.pm
+++ /dev/null
@@ -1,89 +0,0 @@
-# $Id$
-package Youri::Submit::Check::Rpmlint;
-
-=head1 NAME
-
-Youri::Submit::Check::Rpmlint - Rpmlint-based check
-
-=head1 DESCRIPTION
-
-This check plugin wraps rpmlint, and reject packages triggering results
-declared as fatal.
-
-=cut
-
-use warnings;
-use strict;
-use Carp;
-use base qw/Youri::Submit::Check/;
-
-=head2 new(%args)
-
-Creates and returns a new Youri::Submit::Check::Rpmlint object.
-
-Specific parameters:
-
-=over
-
-=item results $results
-
-List of rpmlint result id considered as fatal.
-
-=item path $path
-
-Path to the rpmlint executable (default: /usr/bin/rpmlint)
-
-=item config $config
-
-Specific rpmlint configuration.
-
-=back
-
-=cut
-
-
-sub _init {
- my $self = shift;
- my %options = (
- results => undef,
- path => '/usr/bin/rpmlint',
- config => '',
- @_
- );
-
- croak "no results to check" unless $options{results};
- croak "fatal should be an arrayref" unless ref $options{results} eq 'ARRAY';
-
- $self->{_config} = $options{config};
- $self->{_path} = $options{path};
- $self->{_pattern} = '^(?:' . join('|', @{$options{results}}) . ')$';
-}
-
-sub run {
- my ($self, $package, $repository, $target, $define) = @_;
- croak "Not a class method" unless ref $self;
-
- my @errors;
-
- my $command = "$self->{_path} -f $self->{_config} " . $package->as_file();
- open(RPMLINT, "$command |") or die "Can't run $command: $!";
- while (my $line = <RPMLINT>) {
- my ($id, $value) = $line =~ /^[EW]: \S+ (\S+)(.*)$/;
- $id or next;
- if ($id =~ /$self->{_pattern}/o) {
- push(@errors, "$id$value");
- }
- }
-
- return @errors;
-}
-=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;