App-Workflow-Lint
view release on metacpan or search on metacpan
Changes
cpanfile
lib/App/Workflow/Lint.pm
lib/App/Workflow/Lint/Engine.pm
lib/App/Workflow/Lint/Formatter.pm
lib/App/Workflow/Lint/Rule.pm
lib/App/Workflow/Lint/Rule/DeprecatedSetEnv.pm
lib/App/Workflow/Lint/Rule/MissingConcurrency.pm
lib/App/Workflow/Lint/Rule/MissingPermissions.pm
lib/App/Workflow/Lint/Rule/MissingRunsOn.pm
lib/App/Workflow/Lint/Rule/MissingTimeout.pm
lib/App/Workflow/Lint/Rule/UnpinnedActions.pm
lib/App/Workflow/Lint/YAML.pm
LICENSE
Makefile.PL
MANIFEST This list of files
README.md
t/00-load.t
t/autofix.t
t/basic.t
t/cli.t
lib/App/Workflow/Lint/Engine.pm view on Meta::CPAN
package App::Workflow::Lint::Engine;
use strict;
use warnings;
use Carp qw(croak carp);
use YAML::XS qw(DumpFile);
use App::Workflow::Lint::YAML;
use App::Workflow::Lint::Rule::MissingPermissions;
use App::Workflow::Lint::Rule::MissingTimeout;
use App::Workflow::Lint::Rule::UnpinnedActions;
use App::Workflow::Lint::Rule::MissingConcurrency;
use App::Workflow::Lint::Rule::DeprecatedSetEnv;
use App::Workflow::Lint::Rule::MissingRunsOn;
=head1 NAME
App::Workflow::Lint::Engine - Workflow loading, rule execution, and fixing
=head1 SYNOPSIS
lib/App/Workflow/Lint/Engine.pm view on Meta::CPAN
DumpFile($file, $wf);
return 1;
}
#----------------------------------------------------------------------
sub rules {
return (
App::Workflow::Lint::Rule::MissingPermissions->new,
App::Workflow::Lint::Rule::MissingTimeout->new,
App::Workflow::Lint::Rule::UnpinnedActions->new,
App::Workflow::Lint::Rule::MissingConcurrency->new,
App::Workflow::Lint::Rule::DeprecatedSetEnv->new,
App::Workflow::Lint::Rule::MissingRunsOn->new,
);
}
#----------------------------------------------------------------------
sub check_file {
lib/App/Workflow/Lint/Rule/MissingTimeout.pm view on Meta::CPAN
package App::Workflow::Lint::Rule::MissingTimeout;
use strict;
use warnings;
use Carp qw(croak carp);
# Inherit the DSL from the base rule class
use parent 'App::Workflow::Lint::Rule';
#----------------------------------------------------------------------
# Metadata
t/autofix.t view on Meta::CPAN
use strict;
use warnings;
use Test::Most;
use_ok('App::Workflow::Lint::Rule::MissingTimeout');
my $rule = new_ok('App::Workflow::Lint::Rule::MissingTimeout');
my $wf = { jobs => { build => {} } };
my @out = $rule->check($wf, { file => 'test.yml' });
is scalar(@out), 1, 'one diagnostic returned';
like $out[0]{message}, qr/missing timeout/, 'message looks right';
done_testing;
use strict;
use warnings;
use Test::Most;
use_ok('App::Workflow::Lint::Rule::MissingTimeout');
new_ok('App::Workflow::Lint::Rule::MissingTimeout');
my $rule = App::Workflow::Lint::Rule::MissingTimeout->new;
my $wf = { jobs => { build => {} } };
my @out = $rule->check($wf, { file => 'test.yml' });
is scalar(@out), 1, 'one diagnostic returned';
like $out[0]{message}, qr/missing timeout/, 'message looks right';
done_testing;
( run in 2.415 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )