summary refs log tree commit diff
path: root/src/ci/github-actions
AgeCommit message (Collapse)AuthorLines
2025-05-25ci: split dist-arm-linux jobMarcoIeni-2/+5
2025-05-24Move `dist-x86_64-linux` CI job to GitHub temporarilyJakub Beránek-1/+1
To make it easier to migrate off the `rust-lang-ci/rust` repository. (cherry picked from commit 7d32303574c63cb396d5e1cb17f00061665a0f75)
2025-05-23Temporarily use Windows Server 2022 instead of Windows Server 2025 imagesJieyou Xu-2/+8
At the moment, it seems like Windows Server 2025 20250504.1.0 is misconfigured causing insufficient disk space failures. Temporarily go back to Windows Server 2022 in the hope that those are not also misconfigured. (cherry picked from commit f4ce73ede2f4df0f9983b337ceeed96c11f52c14)
2025-04-28Rollup merge of #140349 - marcoieni:codebuild-linux-large-runners, r=KobzolGuillaume Gomez-1/+1
ci: use aws codebuild for the `dist-x86_64-linux` job try-job: dist-x86_64-linux
2025-04-28ci: use aws codebuild for the `dist-x86_64-linux` jobMarcoIeni-1/+1
2025-04-27ci: clean more disk space in codebuildMarcoIeni-1/+7
2025-04-25Rollup merge of #140148 - marcoieni:ci-aws-codebuild, r=KobzolMatthias Krüger-1/+10
CI: use aws codebuild for job dist-arm-linux try-job: dist-arm-linux
2025-04-23CI: use aws codebuild for job dist-arm-linuxMarcoIeni-1/+10
2025-04-20Remove the `add_dummy_commit.sh` hackJakub Beránek-2/+0
The new git tests should be enough to check this scenario. We should ideally not be creating dummy commits on CI.
2025-04-15Rollup merge of #139859 - marcoieni:rename-macos-runner, r=KobzolMatthias Krüger-6/+6
CI: rename MacOS runner r? ``@Kobzol``
2025-04-15CI: rename MacOS runnerMarcoIeni-6/+6
2025-04-14ci: add runners for vanilla LLVM 20Josh Stone-0/+25
Ubuntu 25.04 has `llvm-20` packages that we can start testing with. The `Dockerfile` is otherwise the same as the `llvm-18`/`19` runners.
2025-04-08Rollup merge of #139386 - onur-ozkan:configurable-compiletest-libtest, ↵Stuart Cook-1/+1
r=jieyouxu,kobzol make it possible to use stage0 libtest on compiletest With https://github.com/rust-lang/rust/pull/119899, building the library tree will require a stage 1 compiler. This is because `compiletest` is defined as a `ToolStd` (since https://github.com/rust-lang/rust/pull/68019) in order to use the in-tree library. As a result, https://github.com/rust-lang/rust/pull/119899 makes certain development workflows more difficult as changes on the compiler tree will now require recompiling `compiletest` each time. This PR allows switching `ToolStd` to `ToolBootstrap` with a simple boolean option in `bootstrap.toml` to allow `compiletest` to use the stage 0 `libtest` instead. The changes under `src/ci` are clearly intended to make sure that `compiletest` doesn't break during future bootstrap beta bumps.
2025-04-07enable in-tree std on some runnersonur-ozkan-1/+1
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-05Update the minimum external LLVM to 19Josh Stone-29/+1
2025-04-02Demote i686-pc-windows-gnu to Tier 2Noratrieb-26/+1
In accordance with RFC 3771. I also added a stub doc page for the target and renamed the windows-gnullvm page for consistency.
2025-03-19Auto merge of #138690 - jieyouxu:temp-disable-fuchsia, r=Kobzolbors-7/+10
Temporarily disable Fuchsia test job to unblock queue See <https://rust-lang.zulipchat.com/#narrow/channel/242791-t-infra/topic/fuchsia.20failure/with/506637259> for efforts to fix the test job. This PR temporarily disables the Fuchsia test job to unblock the queue, so that neither the Fuchsia maintainers nor T-infra maintainers should feel pressured to fix the job ASAP. Please feel free to re-enable once the test job is fixed. FYI `@erickt` since you or other Fuchsia maintainers will need to revert this change to merge Fuchsia test job fixes in the future. r? infra-ci
2025-03-19Temporarily disable Fuchsia test job to unblock queueJieyou Xu-7/+10
See <https://rust-lang.zulipchat.com/#narrow/channel/242791-t-infra/topic/fuchsia.20failure/with/506637259> for efforts to fix the test job.
2025-03-17Rollup merge of #138533 - Kobzol:try-job-auto-tests, r=marcoieniMatthias Krüger-7/+5
Only use `DIST_TRY_BUILD` for try jobs that were not selected explicitly Some CI jobs (x64 Linux, ARM64 Linux and x64 MSVC) use the `opt-dist` tool to build an optimized toolchain using PGO and BOLT. When performing a default try build for x64 Linux, in most cases we want to run perf. on that artifact. To reduce the latency of this common use-case, `opt-dist` skips building several components not needed for perf., and it also skips running post-optimization tests, when it detects that the job is executed as a try job (not a merge/auto job). This is useful, but it also means that if you *want* to run the tests, you had to go to `jobs.yml` and manually comment this environment variable, create a WIP commit, do a try build, and then remove the WIP commit, which is annoying (in the similar way that modifying what gets run in try builds was annoying before we had the `try-job` annotations). I thought that we could introduce some additional PR description marker like `try-job-run-tests`, but it's hard to discover that such things exist. Instead, I think that there's a much simpler heuristic for determining whether `DIST_TRY_BUILD` should be used (that I implemented in this PR): - If you do just ``@bors` try`, without any custom try jobs selected, `DIST_TRY_BUILD` will be activated, to finish the build as fast as possible. - If you specify any custom try jobs, you are most likely doing experiments and you want to see if tests pass and everything builds as it should. The `DIST_TRY_BUILD` variable will thus *not* be set in this case. In this way, if you want to run dist tests, you can just add the `try-job: dist-x86_64-linux` line to the PR description, and you don't need to create any WIP commits. r? `@marcoieni`
2025-03-16Auto merge of #137011 - LuuuXXX:promote-ohos-with-host-tools, r=Amanieubors-1/+1
Promote ohos targets to tier2 with host tools. ### What does this PR try to resolve? Try to promote the following [[Tier 2 without Host Tools](https://doc.rust-lang.org/rustc/platform-support.html#tier-2-without-host-tools)](https://doc.rust-lang.org/rustc/platform-support.html#tier-2-without-host-tools) targets to [[Tier 2 with Host Tools](https://doc.rust-lang.org/rustc/platform-support.html#tier-2-with-host-tools)](https://doc.rust-lang.org/rustc/platform-support.html#tier-2-with-host-tools): - `aarch64-unknown-linux-ohos` - `armv7-unknown-linux-ohos` - `x86_64-unknown-linux-ohos` ### More Information? see MCP: https://github.com/rust-lang/compiler-team/issues/811 ### Blockage to be solved? - [x] Submit an MCP - [x] Submit code of promote ohos targets - [x] Resolve related dependencies (`measureme`) The modified code of the measureme has been merged (see https://github.com/rust-lang/measureme/pull/238). [done] The new version will was released (https://github.com/rust-lang/measureme/pull/240). [done]
2025-03-15Only use `DIST_TRY_BUILD` for try jobs that were not selected explicitlyJakub Beránek-7/+5
2025-03-13Fill `doc_url` for Rust for Linux and Fuchsia jobsJakub Beránek-0/+2
2025-03-07Rollup merge of #137957 - Noratrieb:no, r=wesleywiserJacob Pratt-1/+1
Remove i586-pc-windows-msvc See [MCP 840](https://github.com/rust-lang/compiler-team/issues/840). I left a specialized error message that should help users that hit this in the wild (for example, because they use it in their CI). ``` error: Error loading target specification: the `i586-pc-windows-msvc` target has been removed. Use the `i686-pc-windows-msvc` target instead. Windows 10 (the minimum required OS version) requires a CPU baseline of at least i686 so you can safely switch. Run `rustc --print target-list` for a list of built-in targets ``` ``@workingjubilee`` ``@calebzulawski`` fyi portable-simd uses this target in CI, if you wanna remove it already before this happens
2025-03-06Rollup merge of #137798 - marcoieni:ubuntu-24-large-runner-arm, r=KobzolMichael Goulet-1/+1
ci: use ubuntu 24 on arm large runner try-job: dist-aarch64-linux
2025-03-06remove zip file in /tmp to save some space and use large runnerLuuuXXX-1/+1
2025-03-04ci: use ubuntu 24 on arm large runnerMarcoIeni-1/+1
2025-03-03Re-enable Rust for Linux CI jobJakub Beránek-3/+2
2025-03-03Remove i586-pc-windows-msvcNoratrieb-1/+1
See MCP 840. I left a specialized error message that should help users that hit this in the wild (for example, because they use it in their CI).
2025-03-03Skip Rust for Linux in CI temporarilyJakub Beránek-2/+3
2025-02-17Delete the previous Python scriptJakub Beránek-318/+0
2025-02-17Add missing base-job directiveJakub Beránek-0/+2
2025-02-16Auto merge of #136914 - marcoieni:arm-ubuntu-24, r=jdnobors-1/+1
ci: use ubuntu 24 for free arm runner try-job: aarch64-gnu try-job: aarch64-gnu-debug
2025-02-14CI: split i686-mingw job to three free runnersMarcoIeni-3/+21
2025-02-14Auto merge of #137010 - workingjubilee:rollup-g00c07v, r=workingjubileebors-2/+2
Rollup of 9 pull requests Successful merges: - #135439 (Make `-O` mean `OptLevel::Aggressive`) - #136460 (Simplify `rustc_span` `analyze_source_file`) - #136904 (add `IntoBounds` trait) - #136908 ([AIX] expect `EINVAL` for `pthread_mutex_destroy`) - #136924 (Add profiling of bootstrap commands using Chrome events) - #136951 (Use the right binder for rebinding `PolyTraitRef`) - #136981 (ci: switch loongarch jobs to free runners) - #136992 (Update backtrace) - #136993 ([cg_llvm] Remove dead error message) r? `@ghost` `@rustbot` modify labels: rollup
2025-02-13ci: switch loongarch jobs to free runnersMarcoIeni-2/+2
2025-02-13ci: move `x86_64-gnu-debug` job to the free runnerMarcoIeni-3/+1
2025-02-12ci: use ubuntu 24 for free arm runnerMarcoIeni-1/+1
2025-02-11Auto merge of #136571 - marcoieni:ubuntu-24-large-runners, r=Mark-Simulacrumbors-3/+3
ci: use ubuntu 24 for x86 large runners try-job: dist-powerpc64le-linux try-job: x86_64-gnu-debug try-job: dist-arm-linux try-job: x86_64-fuchsia try-job: x86_64-gnu-distcheck try-job: dist-x86_64-linux try-job: dist-x86_64-linux-alt
2025-02-11Rollup merge of #136155 - tmiasko:msvc-enable-sanitizers, r=Mark-SimulacrumMatthias Krüger-4/+4
Enable sanitizers on MSVC CI jobs Previously MSVC CI would ignore all tests annotated with needs-sanitizer-support header.
2025-02-10Auto merge of #133092 - madsmtm:bootstrap-deployment-target, ↵bors-2/+10
r=Mark-Simulacrum,jieyouxu Always set the deployment target when building std `cc` has [a bug/feature](https://github.com/rust-lang/cc-rs/issues/1171) (I guess depending on how you look at it) where the default deployment target is taken from the SDK instead of from `rustc`. This causes `compiler-builtins` to build `compiler-rt` with the wrong deployment target on iOS. I've been meaning to change how `cc` works in this regard, but that's a lengthy process, so let's fix it in bootstrap for now. The behaviour can be seen locally with `./x build library --set build.optimized-compiler-builtins=true` for various target triples, and then inspecting with `otool -l build/host/stage1/lib/rustlib/*/lib/libcompiler_builtins-*.rlib | rg 'minos|version'`. I have added a rmake test that ensures that we now have the same version everywhere. Fixes https://github.com/rust-lang/rust/issues/128419 Fixes https://github.com/rust-lang/compiler-builtins/issues/650 Fixes https://github.com/rust-lang/rust/issues/136523 See also https://github.com/rust-lang/cargo/issues/13115, https://github.com/rust-lang/cc-rs/issues/1171, https://github.com/rust-lang/rust/issues/136113 See https://github.com/rust-lang/rust/pull/133092#issuecomment-2626206772 for a description of how the change works. try-job: i686-gnu-1 try-job: i686-gnu-2 try-job: x86_64-apple-1 try-job: aarch64-apple try-job: dist-apple-various try-job: dist-aarch64-apple try-job: dist-various-2 try-job: x86_64-fuchsia
2025-02-08Rollup merge of #136679 - Flakebi:loongarch64-diskspace, r=marcoieniMatthias Krüger-2/+2
ci: Use largedisk for loongarch `dist-loongarch64-linux` and `dist-loongarch64-musl` seem to run out of disk space when adding the amdgpu LLVM backend. There are changes underway to free more disk space, but that may take a while, so it was suggested to switch the affected jobs to a largedisk runner until that is ready. `dist-powerpc64-linux` is another job that ran out of disk space one time, but it succeeded the other times, so I did not include it here. amdgpu target PR with more references to the failures: #134740 r? ```@marcoieni```
2025-02-07ci: Use largedisk for loongarchFlakebi-2/+2
`dist-loongarch64-linux` and `dist-loongarch64-musl` seem to run out of disk space when adding the amdgpu LLVM backend. There are changes underway to free more disk space, but that may take a while, so it was suggested to switch the affected jobs to a largedisk runner until that is ready.
2025-02-06ci: use ubuntu 22 for free arm runnersMarcoIeni-1/+1
2025-02-06ci: use ubuntu 24 for x86 large runnersMarcoIeni-3/+3
2025-02-03ci: move dist-x86_64-msvc to windows 2025MarcoIeni-1/+1
2025-02-02Rollup merge of #133266 - mati865:windows-gnu-llvm-download, r=KobzolMatthias Krüger-12/+3
ci: fix explanation why LLVM download is disabled for windows-gnu Continuation of https://github.com/rust-lang/rust/pull/132781
2025-02-01Auto merge of #136136 - marcoieni:ubuntu-24, r=Kobzolbors-2/+2
ci: use ubuntu 24 on free runners try-job: aarch64-gnu try-job: aarch64-gnu-debug
2025-01-31Update deployment target setup in jobs.ymlMads Marquart-2/+10
Note that specifying MACOSX_STD_DEPLOYMENT_TARGET is still completely unnecessary here, but it's nice to have for future changes where we might want to version `std` and `rustc`'s deployment target separately.
2025-01-29ci: use windows 2025 for i686-mingwMarcoIeni-1/+5
2025-01-29Rollup merge of #136192 - marcoieni:remove-windows-unused-runner, r=KobzolMatthias Krüger-4/+0
ci: remove unused windows runner