Skip to content

Commit

Permalink
Auto merge of #135813 - marcoieni:free-runner-i686-mingw, r=<try>
Browse files Browse the repository at this point in the history
CI: split i686-mingw job to two free runners

try-job: i686-mingw-1
try-job: i686-mingw-2
try-job: i686-mingw-3
  • Loading branch information
bors committed Jan 31, 2025
2 parents c37fbd8 + 2325bb9 commit a8fe99a
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 9 deletions.
16 changes: 10 additions & 6 deletions src/bootstrap/mk/Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -99,27 +99,31 @@ prepare:

# Set of tests that represent around half of the time of the test suite.
# Used to split tests across multiple CI runners.
STAGE_2_TEST_SET1 := test --stage 2 --skip=compiler --skip=src
STAGE_2_TEST_SET2 := test --stage 2 --skip=tests --skip=coverage-map --skip=coverage-run --skip=library --skip=tidyselftest
TEST_SET1 := --skip=compiler --skip=src
TEST_SET2 := --skip=tests --skip=coverage-map --skip=coverage-run --skip=library --skip=tidyselftest

## MSVC native builders

# this intentionally doesn't use `$(BOOTSTRAP)` so we can test the shebang on Windows
ci-msvc-py:
$(Q)$(CFG_SRC_DIR)/x.py $(STAGE_2_TEST_SET1)
$(Q)$(CFG_SRC_DIR)/x.py test --stage 2 $(TEST_SET1)
ci-msvc-ps1:
$(Q)$(CFG_SRC_DIR)/x.ps1 $(STAGE_2_TEST_SET2)
$(Q)$(CFG_SRC_DIR)/x.ps1 test --stage 2 $(TEST_SET2)
ci-msvc: ci-msvc-py ci-msvc-ps1

## MingW native builders

# Set of tests that should represent half of the time of the test suite.
# Used to split tests across multiple CI runners.
# Test both x and bootstrap entrypoints.
ci-mingw-x-1:
$(Q)$(CFG_SRC_DIR)/x test --stage 2 --skip=compiler $(TEST_SET2)
ci-mingw-x-2:
$(Q)$(CFG_SRC_DIR)/x test --stage 2 --skip=src $(TEST_SET2)
ci-mingw-x:
$(Q)$(CFG_SRC_DIR)/x $(STAGE_2_TEST_SET1)
$(Q)$(CFG_SRC_DIR)/x test --stage 2 $(TEST_SET1)
ci-mingw-bootstrap:
$(Q)$(BOOTSTRAP) $(STAGE_2_TEST_SET2)
$(Q)$(BOOTSTRAP) test --stage 2 $(TEST_SET2)
ci-mingw: ci-mingw-x ci-mingw-bootstrap

.PHONY: dist
26 changes: 23 additions & 3 deletions src/ci/github-actions/jobs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -446,6 +446,7 @@ auto:
# Windows Builders #
######################

# x86_64-msvc is split into two jobs to run tests in parallel.
- name: x86_64-msvc-1
env:
RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc --enable-profiler
Expand Down Expand Up @@ -517,14 +518,33 @@ auto:
# came from the mingw-w64 SourceForge download site. Unfortunately
# SourceForge is notoriously flaky, so we mirror it on our own infrastructure.

- name: i686-mingw
# i686-mingw is split into two jobs to run tests in parallel.
- name: i686-mingw-1
env:
RUST_CONFIGURE_ARGS: --build=i686-pc-windows-gnu
SCRIPT: make ci-mingw
SCRIPT: make ci-mingw-x-1
# We are intentionally allowing an old toolchain on this builder (and that's
# incompatible with LLVM downloads today).
NO_DOWNLOAD_CI_LLVM: 1
<<: *job-windows-8c
<<: *job-windows-25

- name: i686-mingw-2
env:
RUST_CONFIGURE_ARGS: --build=i686-pc-windows-gnu
SCRIPT: make ci-mingw-x-2
# We are intentionally allowing an old toolchain on this builder (and that's
# incompatible with LLVM downloads today).
NO_DOWNLOAD_CI_LLVM: 1
<<: *job-windows-25

- name: i686-mingw-3
env:
RUST_CONFIGURE_ARGS: --build=i686-pc-windows-gnu
SCRIPT: make ci-mingw-bootstrap
# We are intentionally allowing an old toolchain on this builder (and that's
# incompatible with LLVM downloads today).
NO_DOWNLOAD_CI_LLVM: 1
<<: *job-windows-25

# x86_64-mingw is split into two jobs to run tests in parallel.
- name: x86_64-mingw-1
Expand Down

0 comments on commit a8fe99a

Please sign in to comment.