X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/3bfa2cd709a860d161326e66b8bf511f650d3f0e..a6b9fb8166440eef3144150024a875c858db9bb6:/build/run-build-test-packages-one-target.sh diff --git a/build/run-build-test-packages-one-target.sh b/build/run-build-test-packages-one-target.sh index 2e2e3cdb40..9af95d13d3 100755 --- a/build/run-build-test-packages-one-target.sh +++ b/build/run-build-test-packages-one-target.sh @@ -12,7 +12,14 @@ Syntax: --target Distribution to build packages for (default: debian10) --only-build - Build only a specific package (or $ONLY_BUILD from environment) + Build only a specific package (or ONLY_BUILD from environment) +--arch + Build a specific architecture (or ARCH from environment, defaults to native architecture) +--force-build + Build even if the package exists upstream or if it has already been + built locally +--force-test + Test even if there is no new untested package --upload If the build and test steps are successful, upload the packages to a remote apt repository (default: false) @@ -24,6 +31,8 @@ Syntax: Version to build (default: \$ARVADOS_BUILDING_VERSION-\$ARVADOS_BUILDING_ITERATION or 0.1.timestamp.commithash) +--skip-docker-build + Don't try to build Docker images WORKSPACE=path Path to the Arvados source tree to build packages from @@ -46,7 +55,7 @@ if ! [[ -d "$WORKSPACE" ]]; then fi PARSEDOPTS=$(getopt --name "$0" --longoptions \ - help,debug,upload,rc,target:,only-build:,build-version: \ + help,debug,upload,rc,target:,force-test,only-build:,force-build,arch:,build-version:,skip-docker-build \ -- "" "$@") if [ $? -ne 0 ]; then exit 1 @@ -70,9 +79,18 @@ while [ $# -gt 0 ]; do --target) TARGET="$2"; shift ;; + --force-test) + FORCE_TEST=1 + ;; + --force-build) + FORCE_BUILD=1 + ;; --only-build) ONLY_BUILD="$2"; shift ;; + --arch) + ARCH="$2"; shift + ;; --debug) DEBUG=" --debug" ;; @@ -86,6 +104,9 @@ while [ $# -gt 0 ]; do build_args+=("$1" "$2") shift ;; + --skip-docker-build) + SKIP_DOCKER_BUILD=1 + ;; --) if [ $# -gt 1 ]; then echo >&2 "$0: unrecognized argument '$2'. Try: $0 --help" @@ -102,6 +123,22 @@ if [[ -n "$ONLY_BUILD" ]]; then build_args+=(--only-build "$ONLY_BUILD") fi +if [[ -n "$FORCE_BUILD" ]]; then + build_args+=(--force-build) +fi + +if [[ -n "$FORCE_TEST" ]]; then + build_args+=(--force-test) +fi + +if [[ "$SKIP_DOCKER_BUILD" = 1 ]]; then + build_args+=(--skip-docker-build) +fi + +if [[ -n "$ARCH" ]]; then + build_args+=(--arch "$ARCH") +fi + exit_cleanly() { trap - INT report_outcomes