Repository navigation
Expand file tree
/
Copy pathbuildbuddy.bazelrc
More file actions
50 lines (46 loc) · 2.9 KB
/
Copy pathbuildbuddy.bazelrc
File metadata and controls
50 lines (46 loc) · 2.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# Shared base config for BuildBuddy RBE and BES.
# Prefixed with `_` because it should not be used directly; use
# `--config=buildbuddy_presubmit` or `--config=buildbuddy_postsubmit` instead.
# API keys (`--remote_header=x-buildbuddy-api-key=...`) must be configured in
# `user.bazelrc` or passed by CI.
build:_buildbuddy_base --bes_results_url=https://rules-python.buildbuddy.io/invocation/
build:_buildbuddy_base --bes_backend=grpcs://rules-python.buildbuddy.io
build:_buildbuddy_base --build_metadata=REPO_URL=https://github.com/bazel-contrib/rules_python
common:_buildbuddy_base --remote_cache=grpcs://rules-python.buildbuddy.io
common:_buildbuddy_base --remote_timeout=10m
common:_buildbuddy_base --remote_executor=grpcs://rules-python.buildbuddy.io
# Use BuildBuddy's Ubuntu 24.04 RBE container and hermetic GCC 13 toolchain
# instead of its default Ubuntu 16.04 executor image (GCC 5.4.0).
build:_buildbuddy_base --extra_execution_platforms=@toolchains_buildbuddy//platforms:linux_x86_64
build:_buildbuddy_base --extra_toolchains=@toolchains_buildbuddy//toolchains/cc:ubuntu_gcc_x86_64
# Compress remote cache transfers with zstd to improve network throughput.
common:_buildbuddy_base --remote_cache_compression
# Chunk large blobs using FastCDC (SplitBlob/SpliceBlob) for efficient
# deduplicated transfer.
common:_buildbuddy_base --experimental_remote_cache_chunking
# Automatically rewind and regenerate lost inputs when evicted from remote cache.
common:_buildbuddy_base --rewind_lost_inputs
# Diagnostic logs for troubleshooting cache misses and gRPC errors
common:_buildbuddy_base --remote_grpc_log=bazel-remote-grpc.log
common:_buildbuddy_base --execution_log_compact_file=bazel-execution-log.binpb.zst
# Detailed timing profiles for the BuildBuddy Timing tab
common:_buildbuddy_base --noslim_profile
common:_buildbuddy_base --experimental_profile_include_target_label
common:_buildbuddy_base --experimental_profile_include_primary_output
# Re-apply `--enable_platform_specific_config` after setting `--remote_executor`
# and `--extra_execution_platforms` so `macos` and `windows` in `.bazelrc`
# inherit the priority of `--config=buildbuddy_*` (e.g. when set in
# `~/.bazelrc` by `setup-bazel`, which has higher priority than `.bazelrc`'s
# top-level `--enable_platform_specific_config`).
common:_buildbuddy_base --enable_platform_specific_config
# For PR presubmit runs.
# Requires a BuildBuddy CAS-only API key.
common:buildbuddy_presubmit --config=_buildbuddy_base
# Isolate presubmit cache so untrusted PRs cannot poison the postsubmit cache.
common:buildbuddy_presubmit --remote_instance_name=presubmit
# A CAS-only key doesn't allow uploading locally generated results.
common:buildbuddy_presubmit --remote_upload_local_results=false
# For postsubmit CI runs on committed code.
# Requires a BuildBuddy read+write API key.
common:buildbuddy_postsubmit --config=_buildbuddy_base
common:buildbuddy_postsubmit --remote_upload_local_results=true