mirror of
https://github.com/ClusterCockpit/cc-docker.git
synced 2025-04-07 06:25:55 +02:00
Add check for perl modules
This commit is contained in:
parent
5a6912c1ac
commit
b8b7273016
45
scripts/checkPerlModules.pl
Executable file
45
scripts/checkPerlModules.pl
Executable file
@ -0,0 +1,45 @@
|
|||||||
|
#!/usr/bin/env perl
|
||||||
|
use warnings;
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
my $filename =
|
||||||
|
shift || &help; # command line argument is perl script to evaluate
|
||||||
|
my @modules; # array of 'use' statements from code we are checking
|
||||||
|
|
||||||
|
open( IN, $filename ) or die "couldn't open $filename for processing: $!
|
||||||
|
+\n";
|
||||||
|
|
||||||
|
while (<IN>) {
|
||||||
|
chomp;
|
||||||
|
if ( (/^use/) and not( /strict/ || /warnings/ ) ) {
|
||||||
|
push @modules, $_;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
close IN;
|
||||||
|
for my $code (@modules) {
|
||||||
|
my ( undef, $library ) = split( / /, $code ); # get the module name
|
||||||
|
$library =~ s/;//; # clean up the name
|
||||||
|
eval $code;
|
||||||
|
if ($@) {
|
||||||
|
warn "couldn't load $library: $@", "\n";
|
||||||
|
} else {
|
||||||
|
print "$library looks ok\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
sub help
|
||||||
|
{
|
||||||
|
print <<"END";
|
||||||
|
|
||||||
|
checkPerlModules.pl
|
||||||
|
|
||||||
|
This script finds all the "use" statements loading modules in the targ
|
||||||
|
+et perl
|
||||||
|
file (specified as a command line argument) and attempts to load them.
|
||||||
|
If there are problems loading the module, the error mesage returned is
|
||||||
|
+ printed.
|
||||||
|
|
||||||
|
END
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
12
setupDev.sh
12
setupDev.sh
@ -1,4 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
set -eu
|
||||||
echo ""
|
echo ""
|
||||||
echo "|--------------------------------------------------------------------------------------|"
|
echo "|--------------------------------------------------------------------------------------|"
|
||||||
echo "| Welcome to cc-docker automatic deployment script. |"
|
echo "| Welcome to cc-docker automatic deployment script. |"
|
||||||
@ -23,6 +24,17 @@ if [ ! -d cc-backend ]; then
|
|||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Check if required perl modules are installed
|
||||||
|
if ./scripts/checkPerlModules.pl migrateTimestamps.pl | grep "couldn't load"; then
|
||||||
|
echo "Perl Modules missing!"
|
||||||
|
echo -n "Stopped."
|
||||||
|
exit
|
||||||
|
else
|
||||||
|
echo "Perl Modules loaded."
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -n "GET HERE."
|
||||||
|
exit
|
||||||
# Creates data directory if it does not exists.
|
# Creates data directory if it does not exists.
|
||||||
# Contains all the mount points required by all the docker services
|
# Contains all the mount points required by all the docker services
|
||||||
# and their static files.
|
# and their static files.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user