X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/44c95f99098fa6c6acbfa82d4b6cbc6015eb6e39..7ef658fad17ab37abe8130b392bd1f41c82fc50f:/build/build-dev-docker-jobs-image.sh diff --git a/build/build-dev-docker-jobs-image.sh b/build/build-dev-docker-jobs-image.sh index 46e525bfa7..b0990d0c49 100755 --- a/build/build-dev-docker-jobs-image.sh +++ b/build/build-dev-docker-jobs-image.sh @@ -15,52 +15,38 @@ Syntax: WORKSPACE=path Path to the Arvados source tree to build packages from CWLTOOL=path (optional) Path to cwltool git repository. +SALAD=path (optional) Path to schema_salad git repository. +CWL_UTILS=path (optional) Path to cwl-utils git repository. EOF set -e if [[ -z "$WORKSPACE" ]] ; then - echo "$helpmessage" - echo - echo "Must set WORKSPACE" - exit 1 + export WORKSPACE=$(readlink -f $(dirname $0)/..) + echo "Using WORKSPACE $WORKSPACE" fi -if [[ -z "$ARVADOS_API_HOST" || -z "$ARVADOS_API_TOKEN" ]] ; then - echo "$helpmessage" - echo - echo "Must set ARVADOS_API_HOST and ARVADOS_API_TOKEN" - exit 1 -fi - -cd "$WORKSPACE" +context_dir="$(mktemp --directory --tmpdir dev-jobs.XXXXXXXX)" +trap 'rm -rf "$context_dir"' EXIT INT TERM QUIT -(cd sdk/python && python setup.py sdist) -sdk=$(cd sdk/python/dist && ls -t arvados-python-client-*.tar.gz | head -n1) - -(cd sdk/cwl && python setup.py sdist) -runner=$(cd sdk/cwl/dist && ls -t arvados-cwl-runner-*.tar.gz | head -n1) - -rm -rf sdk/cwl/cwltool_dist -mkdir -p sdk/cwl/cwltool_dist -if [[ -n "$CWLTOOL" ]] ; then - (cd "$CWLTOOL" && python setup.py sdist) - cwltool=$(cd "$CWLTOOL/dist" && ls -t cwltool-*.tar.gz | head -n1) - cp "$CWLTOOL/dist/$cwltool" $WORKSPACE/sdk/cwl/cwltool_dist -fi +for src_dir in "$WORKSPACE/sdk/python" "${CWLTOOL:-}" "${CWL_UTILS:-}" "${SALAD:-}" "$WORKSPACE/sdk/cwl"; do + if [[ -z "$src_dir" ]]; then + continue + fi + env -C "$src_dir" python3 setup.py sdist --dist-dir="$context_dir" +done +cd "$WORKSPACE" . build/run-library.sh +# This defines python_sdk_version and cwl_runner_version with python-style +# package suffixes (.dev/rc) +calculate_python_sdk_cwl_package_versions -python_sdk_ts=$(cd sdk/python && timestamp_from_git) -cwl_runner_ts=$(cd sdk/cwl && timestamp_from_git) - -if [[ $python_sdk_ts -gt $cwl_runner_ts ]]; then - gittag=$(git log --first-parent --max-count=1 --format=format:%H sdk/python) -else - gittag=$(git log --first-parent --max-count=1 --format=format:%H sdk/cwl) -fi +set -x +docker build --no-cache \ + -f "$WORKSPACE/sdk/dev-jobs.dockerfile" \ + -t arvados/jobs:$cwl_runner_version \ + "$context_dir" -docker build --build-arg sdk=$sdk --build-arg runner=$runner --build-arg cwltool=$cwltool -f "$WORKSPACE/sdk/dev-jobs.dockerfile" -t arvados/jobs:$gittag "$WORKSPACE/sdk" -echo arv-keepdocker arvados/jobs $gittag -arv-keepdocker arvados/jobs $gittag +arv-keepdocker arvados/jobs $cwl_runner_version