Skip to content

Commit

Permalink
fix identation and incorrect interpolation
Browse files Browse the repository at this point in the history
  • Loading branch information
htrgouvea committed Aug 23, 2024
1 parent 0fd039e commit 78aac6a
Showing 1 changed file with 43 additions and 42 deletions.
85 changes: 43 additions & 42 deletions lib/SecurityGate/Engine/Dependencies.pm
Original file line number Diff line number Diff line change
@@ -1,56 +1,57 @@
package SecurityGate::Engine::Dependencies;
package SecurityGate::Engine::Dependencies {
use strict;
use warnings;
use Mojo::UserAgent;
use Mojo::JSON;
use Exporter 'import';

use strict;
use warnings;
use Mojo::UserAgent;
use Mojo::JSON;
use Exporter 'import';
our @EXPORT_OK = qw(@SEVERITIES);
our @SEVERITIES = ("critical", "high", "medium", "low");

our @EXPORT_OK = qw(@SEVERITIES);
our @SEVERITIES = ("critical", "high", "medium", "low");
sub new {
my ($class, $token, $repository, $severity_limits) = @_;

sub new {
my ($class, $token, $repository, $severity_limits) = @_;

my %severity_counts = map { $_ => 0 } @SEVERITIES;

my $endpoint = "https://api.github.com/repos/$repository/dependabot/alerts";
my $userAgent = Mojo::UserAgent -> new();
my $request = $userAgent -> get($endpoint, {Authorization => "Bearer $token"}) -> result();

if ($request -> code() == 200) {
my $data = $request -> json();
my %severity_counts = map { $_ => 0 } @SEVERITIES;

foreach my $alert (@$data) {
if ($alert -> {state} eq "open") {
my $severity = $alert -> {security_vulnerability} -> {severity};
$severity_counts{$severity}++;
my $endpoint = "https://api.github.com/repos/$repository/dependabot/alerts";
my $userAgent = Mojo::UserAgent -> new();
my $request = $userAgent -> get($endpoint, {Authorization => "Bearer $token"}) -> result();

if ($request -> code() == 200) {
my $data = $request -> json();

foreach my $alert (@$data) {
if ($alert -> {state} eq "open") {
my $severity = $alert -> {security_vulnerability} -> {severity};
$severity_counts{$severity}++;
}
}
}

print "[!] Total of security alerts:\n\n";
print "[!] Total of security alerts:\n\n";

foreach my $severity (@SEVERITIES) {
print "[-] $severity: $severity_counts{$severity}\n";
}
foreach my $severity (@SEVERITIES) {
print "[-] $severity: $severity_counts{$severity}\n";
}

print "\n";

print "\n";
my $threshold_exceeded = 0;

my $threshold_exceeded = 0;
foreach my $severity (@SEVERITIES) {
if ($severity_counts{$severity} > $severity_limits -> {$severity}) {
print "[+] More than $severity_limits -> {$severity} $severity security alerts found.\n";
$threshold_exceeded = 1;
foreach my $severity (@SEVERITIES) {
if ($severity_counts{$severity} > $severity_limits -> {$severity}) {
print "[+] More than $severity_limits->{$severity} $severity security alerts found.\n";
$threshold_exceeded = 1;
}
}
}

return $threshold_exceeded;
}

else {
print "Error: Unable to fetch alerts. HTTP status code: " . $request -> code() . "\n";
return 1;
return $threshold_exceeded;
}

else {
print "Error: Unable to fetch alerts. HTTP status code: " . $request -> code() . "\n";
return 1;
}
}
}

1;
1;

0 comments on commit 78aac6a

Please sign in to comment.