1- try-import .bazelrc.local
2- try-import .bazelrc.windows.local
1+ try-import %workspace%/.bazelrc.local
2+ try-import %workspace%/.bazelrc.windows.local
3+ 
4+ # Enable bzlmod but without lockfile for a moment.
5+ # Lockfile is a problem to check in at the moment
6+ # because of constant Git conflicts and platform-specific
7+ # pieces.
8+ # https://github.com/bazelbuild/bazel/issues/20369
9+ # https://github.com/bazelbuild/bazel/issues/21491
10+ 
11+ common --enable_bzlmod --lockfile_mode=off
312
413# Ensure Windows support is accurate.
514
@@ -25,13 +34,24 @@ build --javacopt="--release 11"
2534build --experimental_strict_java_deps=strict
2635build --explicit_java_test_deps
2736
28- # Ensure builds are unpolluted by the user env
37+ # Allow spaces in runfile paths
38+ build --nobuild_runfile_links
2939
30- build --incompatible_strict_action_env
40+ # More JS magic
41+ build --experimental_allow_unresolved_symlinks
3142
32- # Except for the PATH environment variable
43+ # Required for faster TS builds
44+ build --@aspect_rules_ts//ts:skipLibCheck=always
45+ fetch --@aspect_rules_ts//ts:skipLibCheck=always
46+ query --@aspect_rules_ts//ts:skipLibCheck=always
3347
34- build --action_env=PATH
48+ build --@aspect_rules_ts//ts:default_to_tsc_transpiler
49+ fetch --@aspect_rules_ts//ts:default_to_tsc_transpiler
50+ query --@aspect_rules_ts//ts:default_to_tsc_transpiler
51+ 
52+ # Ensure builds are unpolluted by the user env
53+ 
54+ build --incompatible_strict_action_env
3555
3656# For build stamping
3757
@@ -53,19 +73,20 @@ test --test_env=DISPLAY
5373test --test_env=FIREFOX_NIGHTLY_BINARY
5474test --test_env=GITHUB_ACTIONS
5575test --test_env=MOZ_HEADLESS
56- test --test_env=PATH  # Remove once browser pinning works
5776test --test_env=SELENIUM_BROWSER
5877test --test_env=TRAVIS
5978test --test_env=PYTHON_VERSION
79+ test --test_env=SE_AVOID_STATS=true
6080
6181# Remove once rules_ruby support proper $LOAD_PATH expansion.
6282
6383test --test_env=RUBYOPT="-Irb/lib -w"
6484
65- # JRuby/TruffleRuby: https://github.com/jruby/jruby/issues/5661
85+ # Speed up JRuby startup.
86+ # https://github.com/jruby/jruby/wiki/Improving-startup-time
6687
67- build --action_env=HOME 
68- test --test_env=HOME 
88+ build --action_env=JRUBY_OPTS="--dev" 
89+ test --test_env=JRUBY_OPTS="--dev" 
6990
7091# Expose necessary variables for Selenium-Manager.
7192
@@ -76,78 +97,11 @@ test:windows --test_env=PROGRAMFILES(X86)="C:\\Program Files (x86)"
7697test --test_timeout=1800
7798
7899test:node_debug --test_output=streamed --test_strategy=exclusive --test_timeout=9999 --nocache_test_results
79- test:ruby_debug --test_output=streamed --test_env=RUBY_DEBUG_FORK_MODE=parent --run_under="@bundle//:bin/rdbg --nonstop --open --command"
80- 
81- # The RBE to use
82- build:remote --bes_results_url=https://gypsum.cluster.engflow.com/invocation
83- build:remote --bes_backend=grpcs://gypsum.cluster.engflow.com
84- build:remote --remote_executor=grpcs://gypsum.cluster.engflow.com
85- build:remote --remote_cache=grpcs://gypsum.cluster.engflow.com
86- 
87- # The number of cores available
88- build:remote -j 50
89- 
90- # Build Without The Bytes
91- build:remote --remote_download_outputs=minimal
92- 
93- build:remote --define=EXECUTOR=remote
94- build:remote --experimental_inmemory_dotd_files
95- build:remote --experimental_inmemory_jdeps_files
96- build:remote --remote_timeout=3600
97- build:remote --spawn_strategy=remote,local
98- #build:remote --nolegacy_important_outputs
99- build:remote --incompatible_strict_action_env=true
100- 
101- build:remote --crosstool_top=//common/remote-build/cc:toolchain
102- build:remote --extra_execution_platforms=//common/remote-build:platform
103- build:remote --extra_toolchains=//common/remote-build:cc-toolchain
104- build:remote --host_platform=//common/remote-build:platform
105- build:remote --platforms=//common/remote-build:platform
106- 
107- # The Docker images are running Linux
108- build:remote --cpu=k8
109- build:remote --host_cpu=k8
110- 
111- build:remote --disk_cache=
112- 
113- build:remote --incompatible_enable_cc_toolchain_resolution
114- build:remote --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1
115- test:remote --test_env=DISPLAY=:99.0
116- test:remote --test_tag_filters=-skip-remote,-remote
117- 
118- # Env vars we can hard code
119- build:remote --action_env=HOME=/home/dev
120- build:remote --action_env=PATH=/bin:/usr/bin:/usr/local/bin
121- test:remote --test_env=PATH=/bin:/usr/bin:/usr/local/bin
122- test:remote --test_env=HOME=/home/dev
123- 
124- # Make sure we sniff credentials properly
125- build:remote --credential_helper=%workspace%/scripts/credential-helper.sh
126- 
127- # Use pinned browsers when running remotely
128- build:remote --//common:pin_browsers
129- 
130- # The remote build machines are pretty small, and 50 threads may leave them
131- # thrashing, but our dev machines are a lot larger. Scale the workload so we
132- # make reasonable usage of everything, everywhere, all at once.
133- build:remote --local_cpu_resources='HOST_CPUS*10'
134- build:remote --local_ram_resources='HOST_RAM*4.0'
135- 
136- # A small hint that we're running our tests remotely
137- test:remote --test_env=REMOTE_BUILD=1
138- 
139- # Wait for up to 5 minutes for a test to pass
140- test:remote --test_timeout=600
141- 
142- # Extend the remote config for CI
143- build:remote-ci --config=remote
144- build:remote-ci --curses=no --color=yes --show_timestamps --show_progress_rate_limit=5
145- build:remote-ci --bes_upload_mode=wait_for_upload_complete
146- 
147- # Configuration changes suggested by EngFlow
148- build:remote --grpc_keepalive_time=30s
149- build:remote --nolegacy_important_outputs
100+ test:ruby_debug --test_output=streamed --test_env=RUBY_DEBUG_FORK_MODE=parent --run_under="@bundle//bin:rdbg --nonstop --open --command"
150101
151102build:release --config=remote
152103build:release --stamp
153104build:release --remote_download_outputs=toplevel
105+ 
106+ # RBE
107+ import %workspace%/.bazelrc.remote
0 commit comments