Make declared variables global
When variables use the 'declare' directive, it is by default a local
variable. While other variables have global scope.
For example:
declare -A AN_ARRAY # local in scope
foo=1 # global in scope
This causes errors to occur as some of the variables will be local only
and others will be global.
Update the code, as appropriate, so that variables using the 'declare'
directive also include the '-g' flag to have them also be global. Not
every instance of a declared variable has been updated.
Closes-Bug: #1669509
Co-Authored-By: John L. Villalovos <john.l.villalovos@intel.com>
Change-Id: I2180b68fe861ad19c6d4ec0df0f9f8a528347862
(cherry picked from commit afef8bf097
)
This commit is contained in:
parent
79c19b6af4
commit
49f5b9f5ec
@ -12,7 +12,7 @@
|
||||
|
||||
# ensure we don't re-source this in the same environment
|
||||
[[ -z "$_DEVSTACK_FUNCTIONS" ]] || return 0
|
||||
declare -r _DEVSTACK_FUNCTIONS=1
|
||||
declare -r -g _DEVSTACK_FUNCTIONS=1
|
||||
|
||||
# Include the common functions
|
||||
FUNC_DIR=$(cd $(dirname "${BASH_SOURCE:-$0}") && pwd)
|
||||
|
@ -37,12 +37,12 @@ set +o xtrace
|
||||
|
||||
# ensure we don't re-source this in the same environment
|
||||
[[ -z "$_DEVSTACK_FUNCTIONS_COMMON" ]] || return 0
|
||||
declare -r _DEVSTACK_FUNCTIONS_COMMON=1
|
||||
declare -r -g _DEVSTACK_FUNCTIONS_COMMON=1
|
||||
|
||||
# Global Config Variables
|
||||
declare -A GITREPO
|
||||
declare -A GITBRANCH
|
||||
declare -A GITDIR
|
||||
declare -A -g GITREPO
|
||||
declare -A -g GITBRANCH
|
||||
declare -A -g GITDIR
|
||||
|
||||
TRACK_DEPENDS=${TRACK_DEPENDS:-False}
|
||||
|
||||
@ -306,7 +306,7 @@ function warn {
|
||||
# ``os_PACKAGE`` - package type: ``deb`` or ``rpm``
|
||||
# ``os_CODENAME`` - vendor's codename for release: ``trusty``
|
||||
|
||||
declare os_VENDOR os_RELEASE os_PACKAGE os_CODENAME
|
||||
declare -g os_VENDOR os_RELEASE os_PACKAGE os_CODENAME
|
||||
|
||||
# Make a *best effort* attempt to install lsb_release packages for the
|
||||
# user if not available. Note can't use generic install_package*
|
||||
@ -361,7 +361,7 @@ function GetOSVersion {
|
||||
|
||||
# Translate the OS version values into common nomenclature
|
||||
# Sets global ``DISTRO`` from the ``os_*`` values
|
||||
declare DISTRO
|
||||
declare -g DISTRO
|
||||
|
||||
function GetDistro {
|
||||
GetOSVersion
|
||||
@ -2372,9 +2372,9 @@ function sudo_with_proxies {
|
||||
# Resolution is only in whole seconds, so should be used for long
|
||||
# running activities.
|
||||
|
||||
declare -A _TIME_TOTAL
|
||||
declare -A _TIME_START
|
||||
declare -r _TIME_BEGIN=$(date +%s)
|
||||
declare -A -g _TIME_TOTAL
|
||||
declare -A -g _TIME_START
|
||||
declare -r -g _TIME_BEGIN=$(date +%s)
|
||||
|
||||
# time_start $name
|
||||
#
|
||||
|
@ -19,7 +19,7 @@ set +o xtrace
|
||||
|
||||
# PROJECT_VENV contains the name of the virtual environment for each
|
||||
# project. A null value installs to the system Python directories.
|
||||
declare -A PROJECT_VENV
|
||||
declare -A -g PROJECT_VENV
|
||||
|
||||
|
||||
# Python Functions
|
||||
|
@ -74,7 +74,7 @@ NEUTRON_ROOTWRAP_DAEMON_CMD="sudo $NEUTRON_ROOTWRAP-daemon $NEUTRON_ROOTWRAP_CON
|
||||
NEUTRON_CONFIG_ARG=${NEUTRON_CONFIG_ARG:-""}
|
||||
|
||||
# Additional neutron api config files
|
||||
declare -a _NEUTRON_SERVER_EXTRA_CONF_FILES_ABS
|
||||
declare -a -g _NEUTRON_SERVER_EXTRA_CONF_FILES_ABS
|
||||
|
||||
# Functions
|
||||
# ---------
|
||||
|
@ -141,10 +141,10 @@ _Q_PLUGIN_EXTRA_CONF_PATH=/etc/neutron
|
||||
# These config files are relative to ``/etc/neutron``. The above
|
||||
# example would specify ``--config-file /etc/neutron/file1`` for
|
||||
# neutron server.
|
||||
declare -a Q_PLUGIN_EXTRA_CONF_FILES
|
||||
declare -a -g Q_PLUGIN_EXTRA_CONF_FILES
|
||||
|
||||
# same as Q_PLUGIN_EXTRA_CONF_FILES, but with absolute path.
|
||||
declare -a _Q_PLUGIN_EXTRA_CONF_FILES_ABS
|
||||
declare -a -g _Q_PLUGIN_EXTRA_CONF_FILES_ABS
|
||||
|
||||
|
||||
Q_RR_CONF_FILE=$NEUTRON_CONF_DIR/rootwrap.conf
|
||||
|
Loading…
Reference in New Issue
Block a user