Do not build components unneeded for perf bot in try builds

This commit is contained in:
Jakub Beránek 2023-06-01 08:29:19 +02:00
parent 871b595202
commit db113b1c2b
No known key found for this signature in database
GPG Key ID: 909CD0D26483516B
4 changed files with 16 additions and 0 deletions

View File

@ -578,6 +578,7 @@ jobs:
actions: write
name: "try - ${{ matrix.name }}"
env:
DIST_TRY_BUILD: 1
CI_JOB_NAME: "${{ matrix.name }}"
CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
SCCACHE_BUCKET: rust-lang-ci-sccache2

View File

@ -264,6 +264,7 @@ docker \
--env RUST_CI_OVERRIDE_RELEASE_CHANNEL \
--env CI_JOB_NAME="${CI_JOB_NAME-$IMAGE}" \
--env BASE_COMMIT="$BASE_COMMIT" \
--env DIST_TRY_BUILD \
--init \
--rm \
rust-ci \

View File

@ -757,6 +757,7 @@ jobs:
<<: *base-ci-job
name: try - ${{ matrix.name }}
env:
DIST_TRY_BUILD: 1
<<: [*shared-ci-variables, *prod-variables]
if: github.event_name == 'push' && (github.ref == 'refs/heads/try' || github.ref == 'refs/heads/try-perf') && github.repository == 'rust-lang-ci/rust'
strategy:

View File

@ -48,6 +48,11 @@ RUSTC_PGO_CRATES = [
LLVM_BOLT_CRATES = LLVM_PGO_CRATES
def is_try_build() -> bool:
return os.environ.get("DIST_TRY_BUILD", "0") != "0"
class Pipeline:
# Paths
def checkout_path(self) -> Path:
@ -851,6 +856,13 @@ def run(runner: BenchmarkRunner):
build_args = sys.argv[1:]
# Skip components that are not needed for try builds to speed them up
if is_try_build():
LOGGER.info("Skipping building of unimportant components for a try build")
for target in ("rust-docs", "rustc-docs", "rust-docs-json", "rust-analyzer",
"rustc-src", "clippy", "miri", "rustfmt"):
build_args.extend(["--exclude", target])
timer = Timer()
pipeline = create_pipeline()
@ -865,6 +877,7 @@ def run(runner: BenchmarkRunner):
print_binary_sizes(pipeline)
if __name__ == "__main__":
runner = DefaultBenchmarkRunner()
run(runner)