Call "lftools jenkins" after credentials are set 51/62951/3
authorEric Ball <eball@linuxfoundation.org>
Fri, 24 Jan 2020 23:25:38 +0000 (15:25 -0800)
committerEric Ball <eball@linuxfoundation.org>
Mon, 27 Jan 2020 15:34:10 +0000 (07:34 -0800)
We have been seeing failures due to the "lftools jenkins plugins"
call being made without credentials being set first. The previous
method did not require credentials, so the failure was introduced
when we switched to using lftools. The os_plugin_version variable
is not needed before this part of the script, so by moving the
assignment to after JENKINS_USER and JENKINS_PASSWORD are set, the
script is once again successful.

Issue: IT-18593
Change-Id: Ib3e6099992abade5860eedd1bda07015b13f0f91
Signed-off-by: Eric Ball <eball@linuxfoundation.org>
releasenotes/notes/fix-configure-clouds-e71e71c12c614de0.yaml [new file with mode: 0644]
shell/jenkins-configure-clouds.sh

diff --git a/releasenotes/notes/fix-configure-clouds-e71e71c12c614de0.yaml b/releasenotes/notes/fix-configure-clouds-e71e71c12c614de0.yaml
new file mode 100644 (file)
index 0000000..1a68667
--- /dev/null
@@ -0,0 +1,9 @@
+---
+fixes:
+  - |
+    Call "lftools jenkins" after credentials are set to fix failures due to the
+    call being made without credentials being set first. The previous method
+    did not require credentials, so the failure was introduced when we switched
+    to using lftools. The os_plugin_version variable is not needed before the
+    JENKINS_USER and JENKINS_PASSWORD are set, so no other changes
+    are necessary.
index 405eced..e5dba54 100644 (file)
@@ -46,9 +46,6 @@ silos="${jenkins_silos:-jenkins}"
 
 set -eu -o pipefail
 
-os_plugin_version="$(lftools jenkins plugins list \
-  | grep -i 'OpenStack Cloud Plugin')"
-
 testversion() {
     local current_val="$1" operator="$2" test_value="$3"
     awk -vv1="$current_val" -vv2="$test_value" 'BEGIN {
@@ -319,6 +316,11 @@ for silo in $silos; do
     export JENKINS_USER
     export JENKINS_PASSWORD
 
+    # JENKINS_{URL,USER,PASSWORD} env vars are required for the "lftools jenkins
+    # plugins list" call
+    os_plugin_version="$(lftools jenkins plugins list \
+      | grep -i 'OpenStack Cloud Plugin')"
+
     echo "-----> Groovy script $script_file"
     for cloud in "${clouds[@]}"; do
         cfg_dir="${cloud}"