commit:     0c7067713b7495aa26a45d85ccebc9f0843c50c3
Author:     Andreas K. Huettel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Wed Jan  6 15:46:02 2021 +0000
Commit:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Jan  8 20:09:03 2021 +0000
URL:        https://gitweb.gentoo.org/proj/releng.git/commit/?id=0c706771

Add catalyst-auto option --nonetwork

Signed-off-by: Andreas K. Huettel <dilfridge <AT> gentoo.org>

 tools/catalyst-auto            | 16 +++++++++++++++-
 tools/catalyst-auto-riscv.conf | 15 ++++-----------
 2 files changed, 19 insertions(+), 12 deletions(-)

diff --git a/tools/catalyst-auto b/tools/catalyst-auto
index d71ad5a2..203abe81 100755
--- a/tools/catalyst-auto
+++ b/tools/catalyst-auto
@@ -24,6 +24,7 @@ preclean=0
 lastrun=0
 lock_file=
 parallel_sets=1
+nonetwork=0
 
 usage() {
        local msg=$1
@@ -45,12 +46,16 @@ Options:
   -t|--test           Stop after mangling specs and copying files
   --interval <days>   Exit if last successful run was less than <days> ago
   -l|--lock <file>    File to grab a lock on to prevent multiple invocations
+  -X|--nonetwork      Do not perform network operations (like uploading result)
+                      This needs to be supported by the config file as well.
   -h|--help           Show this message and quit
 
 EOH
 }
 
 send_email() {
+    if [[ ${nonetwork} == 0 ]]; then
+
        local subject="${EMAIL_SUBJECT_PREPEND} $1"
        local message=$2
        local logfile=$3
@@ -65,6 +70,8 @@ send_email() {
        printf 'From: %s\r\nTo: %s\r\nSubject: %s\r\n\r\n%b' \
                "${EMAIL_FROM}" "${EMAIL_TO}" "${subject}" "${body}" | \
                /usr/sbin/sendmail -f "${EMAIL_FROM}" ${EMAIL_TO//,/ }
+
+    fi
 }
 
 # Usage: run_cmd <logfile> <command to run>
@@ -151,6 +158,9 @@ parse_args() {
                -C|--preclean)
                        preclean=1
                        ;;
+               -X|--nonetwork)
+                       nonetwork=1
+                       ;;
                --interval)
                        lastrun=$1
                        shift
@@ -215,7 +225,7 @@ containerize() {
 # the script whenever there's an update.
 git_update() {
        # If we've already relaunched, nothing to do.
-       if [[ ${GIT_UPDATE} == "true" ]] ; then
+       if [[ ${GIT_UPDATE} == "true" || ${nonetwork} == 1 ]] ; then
                return
        fi
 
@@ -240,6 +250,8 @@ git_update() {
 # SSH fingerprint from DNS. To do this securely, we need to ensure DNSSEC is
 # working.
 verify_dnssec() {
+    if [[ ${nonetwork} == 0 ]]; then
+
        which dig >/dev/null || {
                echo "net-dns/bind-tools is needed to verify DNSSEC is working"
                exit 1
@@ -254,6 +266,8 @@ verify_dnssec() {
                echo "DNSSEC is not enabled in /etc/resolv.conf"
                exit 1
        fi
+
+    fi
 }
 
 run_catalyst_commands() {

diff --git a/tools/catalyst-auto-riscv.conf b/tools/catalyst-auto-riscv.conf
index 4a5d40b5..6a7e8657 100644
--- a/tools/catalyst-auto-riscv.conf
+++ b/tools/catalyst-auto-riscv.conf
@@ -24,15 +24,6 @@ SET_ilp32_SPECS="stage1-ilp32.spec stage2-ilp32.spec 
stage3-ilp32.spec"
 
 #KCONFIG_DIR=${REPO_DIR}/releases/kconfig/${ARCH}
 
-send_email() {
-       :
-}
-
-# no upload -> no dnssec needed
-verify_dnssec() {
-       :
-}
-
 update_symlinks() {
        # Symlink the latest stages3 to build from
        local d f
@@ -47,8 +38,10 @@ update_symlinks() {
 }
 
 upload() {
-       echo NOT Uploading "$@"
-#      rsync -e 'ssh -i /root/.ssh/id_rsa -o UserKnownHostsFile=/dev/null -o 
VerifyHostKeyDNS=yes -o StrictHostKeyChecking=no' "$@" 
al...@releng-incoming.gentoo.org:
+    if [[ ${nonetwork} == 0 ]]; then
+       echo Uploading "$@"
+       rsync -e 'ssh -i /root/.ssh/id_rsa -o UserKnownHostsFile=/dev/null -o 
VerifyHostKeyDNS=yes -o StrictHostKeyChecking=no' "$@" 
ri...@releng-incoming.gentoo.org:
+    fi
 }
 
 post_build() {

Reply via email to