Fix: Correct pip_opts var expansion in lf-act-venv 65/73565/1 master v0.92.3
authorAnil Belur <abelur@linuxfoundation.org>
Tue, 26 Aug 2025 21:29:36 +0000 (07:29 +1000)
committerAnil Belur <abelur@linuxfoundation.org>
Tue, 26 Aug 2025 21:30:30 +0000 (07:30 +1000)
Fix shell variable expansion issue where quoted $pip_opts was being
treated as a single argument instead of multiple pip options. Use
unquoted expansion with shellcheck disable comment to allow proper
argument splitting.

Change-Id: I91014c585216449587719f58e7e1c73f14be82fd
Signed-off-by: Anil Belur <abelur@linuxfoundation.org>
jenkins-init-scripts/lf-env.sh

index 319c4ca..de1c4d5 100644 (file)
@@ -266,7 +266,8 @@ lf-activate-venv () {
 
         # First, try to install with enhanced options
         echo "${FUNCNAME[0]}(): INFO: Attempting to install with network-safe options..."
 
         # First, try to install with enhanced options
         echo "${FUNCNAME[0]}(): INFO: Attempting to install with network-safe options..."
-        if ! "$lf_venv/bin/python3" -m pip install "$pip_opts" \
+        # shellcheck disable=SC2086
+        if ! "$lf_venv/bin/python3" -m pip install $pip_opts \
                         pip 'setuptools<66' virtualenv; then
 
             echo "${FUNCNAME[0]}(): WARNING: Initial install failed, trying fallback options..."
                         pip 'setuptools<66' virtualenv; then
 
             echo "${FUNCNAME[0]}(): WARNING: Initial install failed, trying fallback options..."
@@ -315,7 +316,8 @@ lf-activate-venv () {
             echo "${FUNCNAME[0]}(): INFO: Installing additional packages: $pkg_list"
             # $pkg_list is expected to be unquoted
             # shellcheck disable=SC2086
             echo "${FUNCNAME[0]}(): INFO: Installing additional packages: $pkg_list"
             # $pkg_list is expected to be unquoted
             # shellcheck disable=SC2086
-            if ! "$lf_venv/bin/python3" -m pip install "$pip_opts" \
+            # shellcheck disable=SC2086
+            if ! "$lf_venv/bin/python3" -m pip install $pip_opts \
                         --upgrade-strategy eager $pkg_list; then
                 lf-echo-stderr "${FUNCNAME[0]}(): ERROR: Failed to install packages: $pkg_list"
                 return 1
                         --upgrade-strategy eager $pkg_list; then
                 lf-echo-stderr "${FUNCNAME[0]}(): ERROR: Failed to install packages: $pkg_list"
                 return 1