aboutsummaryrefslogtreecommitdiff
path: root/ci/determinism_test.sh
diff options
context:
space:
mode:
authorChris Parsons <cparsons@google.com>2023-04-20 18:24:52 +0000
committerChristopher Parsons <cparsons@google.com>2023-04-20 18:30:52 +0000
commit34650543637c25081525c3b729f4e6e5925046d9 (patch)
treeb28157819b4f7a41ee5c12162782b301848e1a63 /ci/determinism_test.sh
parent85aa6aa91a11bccba5da61f942595dfa9101b650 (diff)
downloadbazel-34650543637c25081525c3b729f4e6e5925046d9.tar.gz
improvements to determinism_test
1. Remove -x from the script, which reduces the verbosity of script logs 2. Check the toplevel makefile determinism 3. Check the toplevel ninja file determinism (toggleable by an env var) 4. Allow target product and build variant to be set by env var Bug: 279031476 Test: Ran script in AOSP with and without the SKIP_NINJA_CHECK env var, and with and without product env vars. Change-Id: I0b91b2c45f3cdc5cf6fb62e72b0affc865bfa0ff
Diffstat (limited to 'ci/determinism_test.sh')
-rwxr-xr-xci/determinism_test.sh20
1 files changed, 17 insertions, 3 deletions
diff --git a/ci/determinism_test.sh b/ci/determinism_test.sh
index 47baafbf..622bc0e3 100755
--- a/ci/determinism_test.sh
+++ b/ci/determinism_test.sh
@@ -1,4 +1,4 @@
-#!/bin/bash -eux
+#!/bin/bash -eu
# Copyright (C) 2023 The Android Open Source Project
#
@@ -33,6 +33,16 @@ if [[ -z ${DIST_DIR+x} ]]; then
DIST_DIR="${OUT_DIR}/dist"
fi
+if [[ -z ${TARGET_PRODUCT+x} ]]; then
+ echo "TARGET_PRODUCT not set. Using aosp_arm64"
+ TARGET_PRODUCT=aosp_arm64
+fi
+
+if [[ -z ${TARGET_BUILD_VARIANT+x} ]]; then
+ echo "TARGET_BUILD_VARIANT not set. Using userdebug"
+ TARGET_BUILD_VARIANT=userdebug
+fi
+
UNAME="$(uname)"
case "$UNAME" in
Linux)
@@ -55,8 +65,8 @@ function clean_build {
--mk-metrics \
BAZEL_STARTUP_ARGS="--max_idle_secs=5" \
BAZEL_BUILD_ARGS="--color=no --curses=no --show_progress_rate_limit=5" \
- TARGET_PRODUCT=aosp_arm64 \
- TARGET_BUILD_VARIANT=userdebug \
+ TARGET_PRODUCT=${TARGET_PRODUCT} \
+ TARGET_BUILD_VARIANT=${TARGET_BUILD_VARIANT} \
nothing \
dist DIST_DIR=$DIST_DIR
}
@@ -65,6 +75,10 @@ function save_hash {
local -r filepath="$1"
find $OUT_DIR/soong/workspace -type f,l -iname "BUILD.bazel" -o -iname "*.bzl" | xargs "${PREBUILTS}"/md5sum > $filepath
find $OUT_DIR/soong/soong_injection -type f,l | xargs "${PREBUILTS}"/md5sum >> $filepath
+ "${PREBUILTS}"/md5sum $OUT_DIR/soong/Android-${TARGET_PRODUCT}.mk >> $filepath
+ if [[ -z ${SKIP_NINJA_CHECK+x} ]]; then
+ "${PREBUILTS}"/md5sum $OUT_DIR/soong/build.ninja >> $filepath
+ fi
}
TESTDIR=$(mktemp -t testdir.XXXXXX -d)