commit:     ec23d9c918f717d8a14482cbf59abb3278c85555
Author:     Mike Pagano <mpagano <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 14 22:29:32 2021 +0000
Commit:     Mike Pagano <mpagano <AT> gentoo <DOT> org>
CommitDate: Mon Jun 14 22:29:32 2021 +0000
URL:        https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=ec23d9c9

Add some checks during gpdoweb to fail fast on error

Signed-off-by: Mike Pagano <mpagano <AT> gentoo.org>

 scripts/gpdoweb           |  3 +++
 web/gentoo_sources_web.pm | 12 ++++++++++++
 web/makesite.pl           |  9 +++++++++
 3 files changed, 24 insertions(+)

diff --git a/scripts/gpdoweb b/scripts/gpdoweb
index f4959ca..4cfd951 100755
--- a/scripts/gpdoweb
+++ b/scripts/gpdoweb
@@ -5,6 +5,9 @@
 # calling make site
 cd ${WEB_LOCAL}
 ./makesite.pl
+if [ $? -eq 0 ]; then
+    exit 1
+fi
 
 # send generated htm files for site
 echo "calling rsync command: rsync --exclude=/trunk --exclude=/tarballs 
--delete -Cavze ssh ${WEB_LOCAL}/output/ ${USERNAME}@${WEB_GENPATCHES_BASE}"

diff --git a/web/gentoo_sources_web.pm b/web/gentoo_sources_web.pm
index 974efa0..0921ba4 100644
--- a/web/gentoo_sources_web.pm
+++ b/web/gentoo_sources_web.pm
@@ -35,6 +35,18 @@ $git_root='/home/mike/gentoo/linux-patches';
 $ebuild_base = '/usr/local/gentoo-x86'; # /usr/portage
 @kernels = 
('sys-kernel/mips-sources','sys-kernel/pf-sources','sys-kernel/rt-sources','sys-kernel/gentoo-sources','sys-kernel/zen-sources');
 
+sub precheck {
+
+       # run some early checks to make sure everything is present
+
+       if ( !-d  $ebuild_base) {
+               printf "WARNING: ebuild base directory $ebuild_base does not 
exist\n";
+               return 0
+       }
+
+       return 1
+}
+
 sub html_header {
        local *FD = shift;
        my $title = shift;

diff --git a/web/makesite.pl b/web/makesite.pl
index 5e4dd44..914dee9 100755
--- a/web/makesite.pl
+++ b/web/makesite.pl
@@ -17,6 +17,10 @@ use Sort::Versions;
 # print out arguments for easier debugging
 print "makesite.pl called with arguments: @ARGV \n";
 
+if (!precheck()) {
+       exit 0;
+}
+
 my $cmd = 'rm -rf /tmp/linux-patches';
 $output = `$cmd`;
 
@@ -184,6 +188,11 @@ sub make_kernels_page {
        my $kernel;
        print ">> Making kernels page\n";
        my %kernels = _get_genpatches_kernels();
+
+       if (!@kernels) {
+               print ">> No Kernels found, check ebuild_base variable in 
gentoo_sources_web.pm\n";
+               exit
+       }
        
        open(FD, '> '.$output_path.'/kernels.html');
        html_header *FD;

Reply via email to