X-Git-Url: https://gerrit.linuxfoundation.org/infra/gitweb?a=blobdiff_plain;f=jenkins-init-scripts%2Flf-env.sh;h=24a7637b24f5f995b11c48ae24a5af726405b175;hb=refs%2Ftags%2Fv0.74.0;hp=ad554f64b583f26bf15c8d078ff8fe6ffa06dda0;hpb=71db67ab46b4b431b46304703ad1f030e09ad0cc;p=releng%2Fglobal-jjb.git diff --git a/jenkins-init-scripts/lf-env.sh b/jenkins-init-scripts/lf-env.sh index ad554f64..24a7637b 100644 --- a/jenkins-init-scripts/lf-env.sh +++ b/jenkins-init-scripts/lf-env.sh @@ -23,7 +23,8 @@ # ################################################################################ # -# Name: lf-echo-stderr +# NAME +# lf-echo-stderr # # SYNOPSIS # source ~/lf-env.sh @@ -38,12 +39,14 @@ # ################################################################################ -function lf-echo-stderr() { echo "$@" 1>&2; } +lf-echo-stderr () { + echo "$@" 1>&2 +} ################################################################################ # # NAME -# lf-boolean() +# lf-boolean # # SYNOPSIS # # shellcheck disable=SC1090 @@ -65,8 +68,7 @@ function lf-echo-stderr() { echo "$@" 1>&2; } # ################################################################################ -function lf-boolean() -{ +lf-boolean () { if (( $# != 1 )); then echo "ERROR: ${FUNCNAME[0]}() line: ${BASH_LINENO[0]} : Missing Required Argument" return 1 @@ -77,9 +79,9 @@ function lf-boolean() true) return 0 ;; false) return 1 ;; '') - lf-echo-stderr "ERROR: ${FUNCNAME[0]}() line:{BASH_LINENO[0]} : A boolean cannot be a empty string" >&2 - return 2 - ;; + lf-echo-stderr "ERROR: ${FUNCNAME[0]}() line:{BASH_LINENO[0]} : A boolean cannot be a empty string" >&2 + return 2 + ;; *) lf-echo-stderr "ERROR: ${FUNCNAME[0]}() line: ${BASH_LINENO[0]} : Invalid value for a boolean: '$bool'" return 2 @@ -141,8 +143,7 @@ function lf-boolean() # ################################################################################ -function lf-activate-venv() -{ +lf-activate-venv () { lf_venv=$(mktemp -d /tmp/venv-XXXX) local python=python3 local options @@ -159,7 +160,7 @@ function lf-activate-venv() *) lf-echo-stderr "${FUNCNAME[0]}(): ERROR: Unknown switch '$1'." ; return 1 ;; esac done - if ! type $python > /dev/null; then + if ! type "$python" > /dev/null; then lf-echo-stderr "${FUNCNAME[0]}(): ERROR: Unknown Python: $python" return 1 fi @@ -170,14 +171,16 @@ function lf-activate-venv() python2*) local pkg_list="$*" # For Python2, just create venv and install pip - virtualenv -p $python $lf_venv || return 1 - $lf_venv/bin/pip install --upgrade --quiet pip || return 1 + virtualenv -p "$python" "$lf_venv" || return 1 + "$lf_venv/bin/pip" install --upgrade --quiet pip || return 1 if [[ -z $pkg_list ]]; then echo "${FUNCNAME[0]}(): WARNING: No packages to install" return 0 fi echo "${FUNCNAME[0]}(): INFO: Installing: $pkg_list" - $lf_venv/bin/pip install --upgrade --quiet $pkg_list || return 1 + # $pkg_list is expected to be unquoted + # shellcheck disable=SC2086 + "$lf_venv/bin/pip" install --upgrade --quiet $pkg_list || return 1 ;; python3*) local pkg_list="" @@ -188,15 +191,17 @@ function lf-activate-venv() *) pkg_list+="$arg " ;; esac done - $python -m venv $install_args $lf_venv || return 1 - $lf_venv/bin/pip install --upgrade --quiet pip virtualenv || return 1 + $python -m venv "$install_args" "$lf_venv" || return 1 + "$lf_venv/bin/pip" install --upgrade --quiet pip virtualenv || return 1 if [[ -z $pkg_list ]]; then echo "${FUNCNAME[0]}(): WARNING: No packages to install" return 0 fi echo "${FUNCNAME[0]}(): INFO: Installing: $pkg_list" - $lf_venv/bin/pip install --upgrade --quiet --upgrade-strategy eager \ - $pkg_list || return 1 + # $pkg_list is expected to be unquoted + # shellcheck disable=SC2086 + "$lf_venv/bin/pip" install --upgrade --quiet --upgrade-strategy eager \ + $pkg_list || return 1 ;; *) lf-echo-stderr "${FUNCNAME[0]}(): ERROR: No support for: $python" @@ -211,7 +216,7 @@ function lf-activate-venv() echo "${FUNCNAME[0]}(): INFO: Path not set, lf_venv set to: $lf_venv" fi -} # End lf-activate-venv() +} # End lf-activate-venv ################################################################################ # @@ -233,8 +238,7 @@ function lf-activate-venv() # ################################################################################ -function lf-git-validate-jira-urls() -{ +lf-git-validate-jira-urls () { echo "Checking for JIRA URLs in commit message..." # if JIRA_URL is not defined, nothing to do if [[ -v JIRA_URL ]]; then @@ -254,7 +258,7 @@ function lf-git-validate-jira-urls() ################################################################################ # # NAME -# lf-jjb-check-ascii() +# lf-jjb-check-ascii # # SYNOPSIS # # shellcheck disable=SC1090 @@ -272,8 +276,7 @@ function lf-git-validate-jira-urls() # ################################################################################ -function lf-jjb-check-ascii() -{ +lf-jjb-check-ascii () { if [[ ! -d "jjb" ]]; then lf-echo-stderr "${FUNCNAME[0]}(): ERROR: missing jjb directory" lf-echo-stderr "This function can only be run from top of global-jjb directory" @@ -295,8 +298,7 @@ function lf-jjb-check-ascii() # Shellcheck knows they are shell variables and will check for # 'used-before-set'. -function lf-set-maven-options() -{ +lf-set-maven-options () { # Disable 'unused-variable' check # shellcheck disable=SC2034 maven_options="--show-version --batch-mode -Djenkins \