diff --git a/bin/webdevops/taskloader/DockerTestServerspecTaskLoader.py b/bin/webdevops/taskloader/DockerTestServerspecTaskLoader.py index 928d776b9..c2dc0528c 100644 --- a/bin/webdevops/taskloader/DockerTestServerspecTaskLoader.py +++ b/bin/webdevops/taskloader/DockerTestServerspecTaskLoader.py @@ -116,7 +116,7 @@ def task_run(dockerfile, configuration, task): return True # build rspec/serverspec command - cmd = ['bundle', 'exec', 'rspec'] + cmd = ['bash', 'serverspec.sh'] cmd.extend(serverspec_opts) # Set environment variables diff --git a/tests/serverspec/serverspec.sh b/tests/serverspec/serverspec.sh new file mode 100644 index 000000000..d9fd3e54d --- /dev/null +++ b/tests/serverspec/serverspec.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +# Check if DOCKERFILE is set, needed for test +if [[ -z "$DOCKERFILE" ]]; then + echo "Environment variable 'DOCKERFILE' not set" + exit 1 +fi + +# Check if dockerfile exists +if [[ ! -f "${DOCKERFILE}" ]]; then + # Filesystem is maybe not synced? + sync + + # recheck if file is now available + if [[ ! -f "${DOCKERFILE}" ]]; then + echo "Dockerfile $DOCKERFILE' not found" + exit 1 + fi +fi + +exec bundle exec rspec "$@"