Permalink
Cannot retrieve contributors at this time
131 lines (104 sloc)
5.56 KB
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| ############################### | |
| # Filesystem interactions # | |
| ############################### | |
| # Don't create bazel-* symlinks in the WORKSPACE directory. | |
| # These require .gitignore and may scare users. Also, it's a workaround for | |
| # https://github.com/bazelbuild/rules_typescript/issues/12 which affects the common case of | |
| # having `tsconfig.json` in the WORKSPACE directory. Instead, you should run | |
| # `bazel info output_base` to find out where the outputs went. | |
| build --symlink_prefix=/ | |
| # Performance: avoid stat'ing input files | |
| build --watchfs | |
| # Turn off legacy external runfiles | |
| build --nolegacy_external_runfiles | |
| run --nolegacy_external_runfiles | |
| test --nolegacy_external_runfiles | |
| # This flag is needed to so that the bazel cache is not invalidated | |
| # when running bazel via `yarn bazel`. | |
| build --incompatible_strict_action_env | |
| # Do not build runfile forests by default. If an execution strategy relies on runfile | |
| # forests, the forest is created on-demand. See: https://github.com/bazelbuild/bazel/issues/6627 | |
| # and https://github.com/bazelbuild/bazel/commit/03246077f948f2790a83520e7dccc2625650e6df | |
| build --nobuild_runfile_links | |
| ############################### | |
| # Output control # | |
| ############################### | |
| # A more useful default output mode for bazel query | |
| # Prints eg. "ng_module rule //foo:bar" rather than just "//foo:bar" | |
| query --output=label_kind | |
| # By default, failing tests don't print any output, it goes to the log file | |
| test --test_output=errors | |
| #################################### | |
| # Stamping configurations. # | |
| # Run with "--config=release" or # | |
| # "--config=snapshot-build". # | |
| #################################### | |
| # Configures script to do version stamping. | |
| # See https://docs.bazel.build/versions/master/user-manual.html#flag--workspace_status_command | |
| build:release --workspace_status_command="yarn -s ng-dev release build-env-stamp --mode=release" | |
| build:release --stamp | |
| build:snapshot-build --workspace_status_command="yarn -s ng-dev release build-env-stamp --mode=snapshot" | |
| build:snapshot-build --stamp | |
| #################################### | |
| # Bazel custom flags # | |
| #################################### | |
| build --flag_alias=partial_compilation=@npm//@angular/bazel/src:partial_compilation | |
| ################################## | |
| # Always enable Ivy compilation # | |
| ################################## | |
| build --define=angular_ivy_enabled=True | |
| ################################ | |
| # Remote Execution Setup # | |
| ################################ | |
| # Use the Angular team internal GCP instance for remote execution. | |
| build:remote --remote_instance_name=projects/internal-200822/instances/primary_instance | |
| # Needed due to: https://github.com/bazelbuild/bazel/issues/7254 | |
| build:remote --define=EXECUTOR=remote | |
| # Since remote builds run within Google Cloud `k8`-based containers, we set the | |
| # host and target CPU accordingly. | |
| build:remote --cpu=k8 | |
| build:remote --host_cpu=k8 | |
| # Setup the remote build execution servers. | |
| build:remote --remote_cache=remotebuildexecution.googleapis.com | |
| build:remote --remote_executor=remotebuildexecution.googleapis.com | |
| build:remote --google_default_credentials=true | |
| # Setup the toolchain and platform for the remote build execution. The platform | |
| # is provided by the shared dev-infra package and targets k8 remote containers. | |
| build:remote --crosstool_top=@npm//@angular/build-tooling/bazel/remote-execution/cpp:cc_toolchain_suite | |
| build:remote --extra_toolchains=@npm//@angular/build-tooling/bazel/remote-execution/cpp:cc_toolchain | |
| build:remote --extra_execution_platforms=@npm//@angular/build-tooling/bazel/remote-execution:platform_with_network | |
| build:remote --host_platform=@npm//@angular/build-tooling/bazel/remote-execution:platform_with_network | |
| build:remote --platforms=@npm//@angular/build-tooling/bazel/remote-execution:platform_with_network | |
| ################################ | |
| # Sandbox settings # | |
| ################################ | |
| # By default, network access should be disabled unless explicitly granted for certain targets | |
| # using the `requires-network` tag. https://docs.bazel.build/versions/main/be/common-definitions.html | |
| build --sandbox_default_allow_network=false | |
| test --sandbox_default_allow_network=false | |
| ################################ | |
| # --config=build-results # | |
| ################################ | |
| # Sets up Build Event Service if the `builds-results` configuration is used. We | |
| # do not upload build results by default as this makes us reliant on external servers | |
| # that could cause builds to fail unnecessarily. If desired, build result uploading | |
| # can be manually uploaded, but given that the build event service server has been | |
| # less stable than the remote executors, we do not want to degrade CI stability. | |
| build:build-results --bes_instance_name=internal-200822 | |
| build:build-results --bes_backend=buildeventservice.googleapis.com | |
| build:build-results --bes_timeout=60s | |
| build:build-results --bes_results_url="https://source.cloud.google.com/results/invocations/" | |
| # Set remote caching settings | |
| build:remote --remote_accept_cached=true | |
| ################################ | |
| # --config=debug # | |
| ################################ | |
| # Enable debugging tests with --config=debug | |
| test:debug --test_arg=--node_options=--inspect-brk --test_output=streamed --test_strategy=exclusive --test_timeout=9999 --nocache_test_results | |
| ################################ | |
| # Local Environment Setup # | |
| # Needs to be last statement # | |
| ################################ | |
| # Load any settings which are specific to the current user. Needs to be *last* statement | |
| # in this config, as the user configuration should be able to overwrite flags from this file. | |
| try-import .bazelrc.user |