aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKousik Kumar <kousikk@google.com>2020-09-14 07:18:23 +0000
committerKousik Kumar <kousikk@google.com>2020-09-14 07:18:34 +0000
commit45abdb21af8e68df78cc42a1df4edf7d15cc4d80 (patch)
treeecfdf7ce784eb5623accf85d95c20eaa3bc65441
parent136274bfaa4a2a3e2505ff0ef1bdbb1544a3f3f3 (diff)
downloadbuild-45abdb21af8e68df78cc42a1df4edf7d15cc4d80.tar.gz
[DO NOT MERGE] Add rbesetup.sh script to Q branch
Bug: b/166182389 Merged-In: I2413a3648e9b2ff680cab6fededc07bbdd43378f Change-Id: I2413a3648e9b2ff680cab6fededc07bbdd43378f
-rw-r--r--rbesetup.sh43
1 files changed, 43 insertions, 0 deletions
diff --git a/rbesetup.sh b/rbesetup.sh
new file mode 100644
index 0000000000..5781f05e4c
--- /dev/null
+++ b/rbesetup.sh
@@ -0,0 +1,43 @@
+source build/envsetup.sh
+# This function prefixes the given command with appropriate variables needed
+# for the build to be executed with RBE.
+function use_rbe() {
+ local RBE_LOG_DIR="/tmp"
+ local RBE_BINARIES_DIR="prebuilts/remoteexecution-client/latest"
+ local DOCKER_IMAGE="gcr.io/androidbuild-re-dockerimage/android-build-remoteexec-image@sha256:582efb38f0c229ea39952fff9e132ccbe183e14869b39888010dacf56b360d62"
+ # Do not set an invocation-ID and let reproxy auto-generate one.
+ USE_RBE="true" \
+ FLAG_server_address="unix:///tmp/reproxy_$RANDOM.sock" \
+ FLAG_exec_root="$(gettop)" \
+ FLAG_platform="container-image=docker://${DOCKER_IMAGE}" \
+ RBE_use_application_default_credentials="true" \
+ RBE_log_dir="${RBE_LOG_DIR}" \
+ RBE_reproxy_wait_seconds="20" \
+ RBE_output_dir="${RBE_LOG_DIR}" \
+ RBE_log_path="text://${RBE_LOG_DIR}/reproxy_log.txt" \
+ RBE_CXX_EXEC_STRATEGY="remote_local_fallback" \
+ RBE_cpp_dependency_scanner_plugin="${RBE_BINARIES_DIR}/dependency_scanner_go_plugin.so" \
+ RBE_DIR=${RBE_BINARIES_DIR} \
+ RBE_re_proxy="${RBE_BINARIES_DIR}/reproxy" \
+ $@
+}
+# This function detects if the uploader is available and sets the path of it to
+# ANDROID_ENABLE_METRICS_UPLOAD.
+function _export_metrics_uploader() {
+ local uploader_path="$(gettop)/vendor/google/misc/metrics_uploader_prebuilt/metrics_uploader.sh"
+ if [ -x "${uploader_path}" ]; then
+ export ANDROID_ENABLE_METRICS_UPLOAD="${uploader_path}"
+ fi
+}
+# This function sets RBE specific environment variables needed for the build to
+# executed by RBE. This file should be sourced once per checkout of Android code.
+function _set_rbe_vars() {
+ unset USE_GOMA
+ export USE_RBE="true"
+ export RBE_CXX_EXEC_STRATEGY="remote_local_fallback"
+ export RBE_JAVAC=1
+ export RBE_R8=1
+ export RBE_D8=1
+}
+_export_metrics_uploader
+_set_rbe_vars