X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/44c95f99098fa6c6acbfa82d4b6cbc6015eb6e39..574a5a55be32f0de2c4d848c3793ff187aa717d1:/build/package-testing/common-test-rails-server-package.sh diff --git a/build/package-testing/common-test-rails-server-package.sh b/build/package-testing/common-test-rails-server-package.sh index 6a7097c349..df98078de3 100755 --- a/build/package-testing/common-test-rails-server-package.sh +++ b/build/package-testing/common-test-rails-server-package.sh @@ -12,16 +12,36 @@ else PACKAGE_NAME=$1; shift fi -cd "/var/www/${PACKAGE_NAME%-server}/current" +API_GEMS_LS="$(mktemp --tmpdir api-gems-XXXXXX.list)" +trap 'rm -f "$API_GEMS_LS"' EXIT INT TERM QUIT + +cd "/var/www/${PACKAGE_NAME%-server}" + +check_gem_dirs() { + local when="$1"; shift + env -C shared/vendor_bundle/ruby ls -1 >"$API_GEMS_LS" + local ls_count="$(wc -l <"$API_GEMS_LS")" + if [ "$ls_count" = 1 ]; then + return 0 + fi + echo "Package $PACKAGE_NAME FAILED: $ls_count gem directories created after $when:" >&2 + case "${ARVADOS_DEBUG:-0}" in + 0) cat "$API_GEMS_LS" >&2 ;; + *) env -C shared/vendor_bundle/ruby find -maxdepth 3 -type d -ls >&2 ;; + esac + return 11 +} + +check_gem_dirs "initial install" case "$TARGET" in debian*|ubuntu*) apt-get install -y nginx dpkg-reconfigure "$PACKAGE_NAME" ;; - centos*) - yum install --assumeyes httpd - yum reinstall --assumeyes "$PACKAGE_NAME" + rocky*) + microdnf --assumeyes install httpd + microdnf --assumeyes reinstall "$PACKAGE_NAME" ;; *) echo -e "$0: Unknown target '$TARGET'.\n" >&2 @@ -29,4 +49,5 @@ case "$TARGET" in ;; esac -/usr/local/rvm/bin/rvm-exec default bundle list >"$ARV_PACKAGES_DIR/$PACKAGE_NAME.gems" +check_gem_dirs "package reinstall" +env -C current bundle list >"$ARV_PACKAGES_DIR/$PACKAGE_NAME.gems"