mirror of https://github.com/ovh/the-bastion
parent
ebc3c2c6df
commit
8e7fc9b949
@ -1,56 +0,0 @@
|
||||
#! /usr/bin/env perl
|
||||
# vim: set filetype=perl ts=4 sw=4 sts=4 et:
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
use Carp;
|
||||
use CGI;
|
||||
use common::sense;
|
||||
use Config;
|
||||
use Cwd;
|
||||
use Data::Dumper;
|
||||
use DBD::SQLite;
|
||||
use Digest::MD5;
|
||||
use Digest::SHA;
|
||||
use Exporter;
|
||||
use Fcntl;
|
||||
use File::Basename;
|
||||
use File::Copy;
|
||||
use File::Find;
|
||||
use File::Path;
|
||||
use File::Temp;
|
||||
use Getopt::Long;
|
||||
use HTTP::Headers;
|
||||
use HTTP::Message;
|
||||
use HTTP::Request;
|
||||
use IO::Compress::Gzip;
|
||||
use IO::Handle;
|
||||
use IO::Pipe;
|
||||
use IO::Select;
|
||||
use IO::Socket::SSL;
|
||||
use IPC::Open2;
|
||||
use IPC::Open3;
|
||||
use JSON;
|
||||
use List::Util;
|
||||
use LWP::UserAgent;
|
||||
use MIME::Base64;
|
||||
use Net::IP;
|
||||
use Net::Netmask;
|
||||
use Net::Server::PreFork;
|
||||
use Net::Server::PreForkSimple;
|
||||
use POSIX;
|
||||
use Scalar::Util;
|
||||
use Socket;
|
||||
use Storable;
|
||||
use Symbol;
|
||||
use Sys::Hostname;
|
||||
use Sys::Syslog;
|
||||
use Term::ANSIColor;
|
||||
use Term::ReadKey;
|
||||
use Term::ReadLine;
|
||||
use Time::HiRes;
|
||||
use Time::Piece;
|
||||
use URI;
|
||||
|
||||
print "OK: all required Perl modules are present\n";
|
||||
@ -0,0 +1,39 @@
|
||||
#! /usr/bin/env bash
|
||||
# vim: set filetype=sh ts=4 sw=4 sts=4 et:
|
||||
|
||||
basedir=$(readlink -f "$(dirname "$0")"/../..)
|
||||
# shellcheck source=lib/shell/functions.inc
|
||||
. "$basedir"/lib/shell/functions.inc
|
||||
|
||||
action_doing "Checking list of needed Perl modules..."
|
||||
|
||||
missing=""
|
||||
|
||||
# shellcheck disable=SC2013
|
||||
for module in $(grep -RhEw '(use|require) ([a-zA-Z][a-zA-Z0-9_:]+)' "$basedir/lib/perl/" "$basedir/bin/" | \
|
||||
grep -v -e '"' -e "'" -e '# pragma optional module' -e OVH:: | \
|
||||
sed -re 's/#.*//' | \
|
||||
grep -Eo '(use|require) ([a-zA-Z][a-zA-Z0-9_:]+)' | \
|
||||
awk '{print $2}' | \
|
||||
sort -u | \
|
||||
grep -Ev '^[a-z0-9_]+$')
|
||||
do
|
||||
if [ "$1" != "corelist" ]; then
|
||||
action_detail "$module"
|
||||
if ! perl -M"$module" -e 1; then
|
||||
action_detail "... failed!"
|
||||
missing="$missing $module"
|
||||
fi
|
||||
else
|
||||
if corelist "$module" | grep -q 'not in CORE'; then
|
||||
action_detail "$module"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -n "$missing" ]; then
|
||||
action_error "Missing modules:$missing"
|
||||
else
|
||||
# shellcheck disable=SC2119
|
||||
action_done
|
||||
fi
|
||||
Loading…
Reference in new issue