X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/0a274c87a1412df329469504b3581cc8c7084255..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 ee855d8012..df98078de3 100755 --- a/build/package-testing/common-test-rails-server-package.sh +++ b/build/package-testing/common-test-rails-server-package.sh @@ -12,7 +12,27 @@ 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*) @@ -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"