ci: return to using dash in CentOS job
What changed, and why it matters
This is a routine Continuous Integration (CI) maintenance change for Bitcoin Core. It switches the CentOS test container back from using the ksh shell to the dash shell, because a Red Hat bug that previously required ksh has been fixed. The change only affects internal test scripts and installed CI packages; it does not touch Bitcoin Core's network code, wallet, consensus logic, or any user-facing software.
No security action needed. This is a normal CI tooling update.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The commit modifies two CI shell scripts. In 00_setup_env_native_centos.sh, ‘ksh’ is removed from CI_BASE_PACKAGES and ‘dash’ is added. In 03_test_script.sh, the CONFIG_SHELL override for CentOS is changed from /bin/ksh back to /bin/dash, and the comment referencing Red Hat bug 2335416 is removed. This is a revert of a temporary CI workaround once the upstream bug was resolved. There is no change to compiled code, dependencies build logic, or runtime behavior of Bitcoin Core.
Changed components
ci/test/00_setup_env_native_centos.shci/test/03_test_script.shInspect captured patch +2 / −2
diff --git a/ci/test/00_setup_env_native_centos.sh b/ci/test/00_setup_env_native_centos.sh
index 98e731e6..ef77b2f0 100755
--- a/ci/test/00_setup_env_native_centos.sh
+++ b/ci/test/00_setup_env_native_centos.sh
@@ -8,7 +8,7 @@ export LC_ALL=C.UTF-8
export CONTAINER_NAME=ci_native_centos
export CI_IMAGE_NAME_TAG="quay.io/centos/centos:stream10"
-export CI_BASE_PACKAGES="gcc-c++ glibc-devel libstdc++-devel ccache make ninja-build git python3 python3-pip which patch xz procps-ng ksh rsync coreutils bison e2fsprogs cmake"
+export CI_BASE_PACKAGES="gcc-c++ glibc-devel libstdc++-devel ccache make ninja-build git python3 python3-pip which patch xz procps-ng rsync coreutils bison e2fsprogs cmake dash"
export PIP_PACKAGES="pyzmq"
export DEP_OPTS="DEBUG=1"
export GOAL="install"
diff --git a/ci/test/03_test_script.sh b/ci/test/03_test_script.sh
index 83b67da2..a0676c6a 100755
--- a/ci/test/03_test_script.sh
+++ b/ci/test/03_test_script.sh
@@ -92,7 +92,7 @@ fi
if [ -z "$NO_DEPENDS" ]; then
if [[ $CI_IMAGE_NAME_TAG == *centos* ]]; then
- SHELL_OPTS="CONFIG_SHELL=/bin/ksh" # Temporarily use ksh instead of dash, until https://bugzilla.redhat.com/show_bug.cgi?id=2335416 is fixed.
+ SHELL_OPTS="CONFIG_SHELL=/bin/dash"
else
SHELL_OPTS="CONFIG_SHELL="
fi
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.