Add an `--avb-resolve-rollback-index-location-conflict`
option in merge_target_files. When this option is set,
the merge tool will resolve conflicting index locations
by assigning the smallest unused index location.
This is to support merging system and vendor target files
from two different targets. In this case, the two target
files may have conflict rollback index location because
they were built independently.
Test: atest releasetools_test
Test: validate_target_files *-target_files-*.zip
Test: merge_target_files &&
add_img_to_target_files &&
img_from_target_files &&
flash device
Bug: 300604688
Change-Id: Ibd18ef2a9f3784157fe17966f5364c3c81c9bd9f
avbtool by default generates a random salt everytime, this makes builds
less reproducible. Use sha256 checksum of kernel image as the hex to
make the build reproducible.
Test: th
Bug: 293313353
Change-Id: I959b3dee77654098ab9fde475f11eaee8d40c790
The CL that splits rust complation and linking into separate actions
is being reverted to save disk space. Delete the intermediates that
are no longer needed in order to immediately free the disk space.
Bug: 293349612
Test: builds
Change-Id: I1e9f015bf9b6ffe8ba3ccd11ac3075e90640e9b3
The LOCAL_POST_INSTALL_CMD is problematic for m installclean-less
builds.
Bug: 205632228
Test: presubmits
Change-Id: Id4eb2fd5fbd4f080aec89fa90583ac2ec97c5e1c
The staging directory isn't used after the module packaging zip is
built. Delete the staging directory to reduce disk usage without
affecting incremental build performance.
Bug: 302573555
Change-Id: I377c60714f78760d0b6c2588935c12e10a9ed224
Test: treehugger
This is to ensure a partition doesn't need to be aware of the other
partitions in order to be built.
Also sort the image info file so it's easier to compare with bazel.
Bug: 297269187
Test: m && emulator on sdk_phone_x86_64-userdebug
Change-Id: I8e4b2049f602c8db109bf53e1359751a9ed9dd7a
This is to avoid the problem of multiple source commands / builds run in parallel overwriting the binaries in the reclient dir.
TESTED=ran concurrent builds, ensured binaries weren't being overwritten.
Bug: b/302378775
NOTE FOR REVIEWERS - original patch and result patch are not identical.
PLEASE REVIEW CAREFULLY.
Diffs between the patches:
fi
+ local RECLIENT_VERSION=`readlink prebuilts/remoteexecution-client/live`
+
+ local NONCOG_RECLIENT_BIN_DIR_BASE="${OUT_DIR}/.reclient"
+ local NONCOG_RECLIENT_BIN_DIR="${NONCOG_RECLIENT_BIN_DIR_BASE}/${RECLIENT_VERSION}"
+ if [ -d "${NONCOG_RECLIENT_BIN_DIR}" ]; then
+ if [ `ls ${NONCOG_RECLIENT_BIN_DIR} | wc -l` -gt 1 ] ; then
+ # binaries already exist, only update the symlink to ensure correct
+ # reclient version is set.
+ ln -sf ${RECLIENT_VERSION} ${NONCOG_RECLIENT_BIN_DIR_BASE}/live
+ return
+ fi
+ # Create the non cog directory and copy binaries into it.
+ mkdir -p ${NONCOG_RECLIENT_BIN_DIR}
-
- # Copy the binaries out of live.
- cp $TOP/prebuilts/remoteexecution-client/live/* $NONCOG_RECLIENT_BIN_DIR
+ cp ${TOP}/prebuilts/remoteexecution-client/live/* ${NONCOG_RECLIENT_BIN_DIR}
+ ln -sf ${RECLIENT_VERSION} ${NONCOG_RECLIENT_BIN_DIR_BASE}/live
- export RBE_DIR=$NONCOG_RECLIENT_BIN_DIR
+ export RBE_DIR="${NONCOG_RECLIENT_BIN_DIR_BASE}/live"
Original patch:
diff a/cogsetup.sh b/cogsetup.sh
--- a/cogsetup.sh
+++ b/cogsetup.sh
@@ -39,22 +39,30 @@
# non-cog part of the overall filesystem. This is to workaround the problem
# described in b/289391270.
function _copy_reclient_binaries_from_cog() {
- local NONCOG_RECLIENT_BIN_DIR="${HOME}/.cog/reclient/bin"
- if [ ! -d "$NONCOG_RECLIENT_BIN_DIR" ]; then
- # Create the non cog directory if it doesn't exist.
- mkdir -p ${NONCOG_RECLIENT_BIN_DIR}
- else
- # Clear out the non cog directory if it does exist.
- rm -f ${NONCOG_RECLIENT_BIN_DIR}/*
+ if [[ "${OUT_DIR}" == "" ]]; then
+ OUT_DIR="out"
fi
+ local RECLIENT_VERSION=`readlink prebuilts/remoteexecution-client/live`
- local TOP=$(gettop)
+ local NONCOG_RECLIENT_BIN_DIR_BASE="${OUT_DIR}/.reclient"
+ local NONCOG_RECLIENT_BIN_DIR="${NONCOG_RECLIENT_BIN_DIR_BASE}/${RECLIENT_VERSION}"
+ if [ -d "${NONCOG_RECLIENT_BIN_DIR}" ]; then
+ if [ `ls ${NONCOG_RECLIENT_BIN_DIR} | wc -l` -gt 1 ] ; then
+ # binaries already exist, only update t
Change-Id: Ia6cb7faae6366ee7491fcf91777318b772a3ba88
Also always use BUILD_NUMBER_FROM_FILE in the BUILD_FINGERPRINT.
The build number file now always exists, even if HAS_BUILD_NUMBER is
false.
Bug: 297269187
Test: m bazel_sandwich
Change-Id: Idf745b600b167e5cec161e07139be09a037bdc13