Commit graph

1934 commits

Author SHA1 Message Date
Matthias Krüger
0d4ae969eb
Rollup merge of #124829 - briansmith:b/armv7-profiler, r=Mark-Simulacrum
Enable profiler for armv7-unknown-linux-gnueabihf.

Allow code coverage measurement for armv7-unknown-linux-gnueabihf targets. Fixes #79640.
2024-05-11 23:43:24 +02:00
bors
a6e87c546d Auto merge of #124850 - dpaoliello:clang2022, r=Kobzol
Upgrade pre-built Clang used in MSVC and MacOS builds, move MSVC builds to Server 2022

Fixes #92948

Example working MacOS and Windows builds: <https://github.com/rust-lang/rust/actions/runs/8989360201>

There is a [bug in Clang 18](https://github.com/llvm/llvm-project/pull/81849) that causes issues when building for Arm64 in later parts of the build (specifically `libgit2`). As a workaround, we will still use the pre-built Clang to build LLVM but will use MSVC for the rest of the Arm64 build.
2024-05-10 00:04:22 +00:00
Daniel Paoliello
5212e07a4e Upgrade the version of Clang used in the build, move MSVC builds to Server 2022 2024-05-09 12:18:09 -07:00
bors
6f7e00a3e6 Auto merge of #124743 - Kobzol:arbitrary-try-build, r=pietroalbini
CI: enable arbitrary try builds, take two

Fixed version of https://github.com/rust-lang/rust/pull/124631, which hopefully won't completely break our CI this time 🤦‍♂️ Sorry once again. Only the last commit is new.

r? `@pietroalbini`
2024-05-09 10:39:50 +00:00
Marc Khouri
f44d611d85 Fuchsia test runner: fixup script
This commit fixes several issues in the fuchsia-test-runner.py script:

1. Migrate from `pm` to `ffx` for package management, as `pm` is now
deprecated. Furthermore, the `pm` calls used in this script no longer
work at Fuchsia's HEAD. This is the largest change in this commit, and
impacts all steps around repository management (creation and
registration of the repo, as well as package publishing).

2. Allow for `libtest` to be either statically or dynamically linked.
The script assumed it was dynamically linked, but the current Rust
behavior at HEAD is to statically link it.

3. Minor cleanup to use `ffx --machine json` rather than string parsing.

4. Minor cleanup to the docs around the script.
2024-05-07 17:29:38 +00:00
Brian Smith
de9b3b788f Enable profiler for armv7-unknown-linux-gnueabihf. 2024-05-06 15:25:37 -07:00
Jakub Beránek
b3e9060178
CI: fix auto builds and make sure that we always have at least a single CI job 2024-05-05 14:06:23 +02:00
Jakub Beránek
bf8bcc4c2d
Address review comments 2024-05-05 14:06:23 +02:00
Jakub Beránek
e2e280610d
Make the regex more robust 2024-05-05 14:06:23 +02:00
Jakub Beránek
74dbe8ae9e
Parse try build CI job name from commit message 2024-05-05 14:06:23 +02:00
Jakub Beránek
6778ecf960
Use sum type for WorkflowRunType 2024-05-05 14:06:23 +02:00
Matthias Krüger
f4d0776b4f
Rollup merge of #124663 - Kobzol:docker-local-download, r=Mark-Simulacrum
Enable reusing CI Docker cache when running CI images locally

When running a CI image locally, e.g. using `DEPLOY=1 src/ci/docker/run.sh dist-x86_64-linux`, it can take a long time until the Docker image is built, which is annoying.

Since we now use proper Docker caching on CI, it should be possible to just `docker pull` the prebuilt image to reuse the cache. We didn't want to do this on CI, since our caching key isn't perfect and it's possible that we can miss some changes, but I think that for local usage it is fine (we could introduce some env. var. to force disable the image download, if needed).

r? `@Mark-Simulacrum`
2024-05-04 22:27:31 +02:00
bors
6d721dd0b8 Auto merge of #124562 - dpaoliello:mingwserver2022, r=Mark-Simulacrum
Use Server 2022 in CI for mingw jobs

From my [previous testing](https://github.com/rust-lang/rust/issues/92948#issuecomment-2077771347), there is nothing blocking using Server 2022 for the Windows MinGW jobs.

This change:
* Adds new `os` entries for Server 2022.
* Renamed the Server 2019 `os` entries (as we'll be removing these over time).
* Moves the mingw jobs to Server 2022 and leaves the msvc jobs on Server 2019.

Partially fixes #92948
2024-05-04 07:49:50 +00:00
Jakub Beránek
02f4ef7cde
Allow reusing CI Docker cache when running CI images locally 2024-05-03 15:52:00 +02:00
Jakub Beránek
0372065097
Calculate the Docker hash key also locally 2024-05-03 15:50:02 +02:00
Jakub Beránek
27d1d0a6a4
Do not include Docker version in caching key
We are now using Docker caching directly rather than downloading archives from S3, so it should not be needed.

This should unblock reusing the cache locally.
2024-05-03 15:49:15 +02:00
Jakub Beránek
22456309ea
CI: remove env-x86_64-apple-tests YAML anchor 2024-05-02 21:23:52 +02:00
Daniel Paoliello
bc294b857e Use Server 2022 in CI for mingw jobs 2024-04-30 09:50:55 -07:00
Jakub Beránek
b194d5ce44
Output run_type from the matrix calculation job 2024-04-29 21:33:17 +02:00
Jakub Beránek
24bf3594a5
Rename JobType to WorkflowRunType 2024-04-29 21:33:17 +02:00
Jakub Beránek
0b1ecf1d8d
Remove the expand-yaml-anchors tool 2024-04-29 21:33:17 +02:00
Jakub Beránek
1ca92c0857
Replace dynamically generated ci.yml file with the original template 2024-04-29 21:32:35 +02:00
Jakub Beránek
23341500a6
Unify outcome jobs 2024-04-29 21:28:52 +02:00
Jakub Beránek
a700897d5a
Add missing checkout step 2024-04-27 15:48:35 +02:00
Jakub Beránek
163ea3328b
Move TOOLSTATE_REPO to top-level env 2024-04-27 11:36:42 +02:00
Jakub Beránek
e82c28debc
Remove master push hook 2024-04-25 11:06:27 +02:00
Jakub Beránek
86da0e758f
Remove useless condition
Neither `env.DEPLOY` nor `env.DEPLOY_ALT` should be present in this job.
2024-04-25 10:47:19 +02:00
Jakub Beránek
744dc2aa1d
Inline base-ci-job YAML anchor and remove unused anchors 2024-04-25 10:40:09 +02:00
Jakub Beránek
144bdf5bf1
Remove master CI job 2024-04-25 10:40:09 +02:00
Matthias Krüger
036bf570ad
Rollup merge of #124327 - Kobzol:ci-skip-jobs, r=pietroalbini
CI: implement job skipping in Python matrix calculation

This removes the `step` YAML anchor and the corresponding bash script.

Best reviewed commit-by-commit.

r? ```@pietroalbini```
2024-04-25 06:31:04 +02:00
León Orell Valerian Liehr
bef0f3fb4c
Rollup merge of #123881 - erickt:bump-fuchsia, r=tmandry
Bump Fuchsia versions

This updates the Fuchsia commit used in `auto - x86_64-gnu-integration` CI bot to use the Rust commit 703dc9ce64. This should help improve the coverage of this builder.

It also updates the SDK version to F20.20240412.3.1, and the Fuchsia Clang version to c777c011a709dffd4fa5e79cad7947b7c3405d02.

r? ``@tmandry``
2024-04-24 14:00:56 +02:00
Jakub Beránek
c36d78ed64
Turn CI_ONLY_WHEN_CHANNEL from an environment variable to a job attribute 2024-04-24 12:44:13 +02:00
Jakub Beránek
c59bc9a06a
Fix documentation 2024-04-24 12:15:17 +02:00
Jakub Beránek
4942a35f24
Remove step YAML anchor and env.SKIP_JOB 2024-04-24 11:12:39 +02:00
Jakub Beránek
246ee53637
Remove should-skip-this.sh 2024-04-24 11:12:17 +02:00
Jakub Beránek
e25735908f
Skip jobs based on the active channel in Python 2024-04-24 11:11:16 +02:00
Jakub Beránek
2a7fe14acd
Use a type alias for a CI job 2024-04-24 11:09:42 +02:00
bors
e7da0fa62f Auto merge of #124175 - Kobzol:ci-dynamic-job, r=pietroalbini
CI: dynamic jobs

This PR modifies our CI workflows to be dynamic. This means that when a GitHub event is generated, we will run a Python script (`calculate-job-matrix.py`), which decides which CI jobs should be generated. These jobs are defined in `src/ci/github-actions/jobs.yml`).

This should provide a few benefits:
- Once the migration to dynamic jobs is complete, we shouldn't need `expand-yaml-anchors` anymore.
- The job table on PRs (and also the left job column on auto/try builds) should be much cleaner and contain only the jobs that are actually relevant/executed.
- It should be much easier to support dynamic try builds, i.e. to run an arbitrary CI job on a try build.

See [this Zulip discussion](https://rust-lang.zulipchat.com/#narrow/stream/242791-t-infra/topic/job.20matrix.20re-ordered.20PR.20list) for more context.

r? `@ghost`
2024-04-24 06:40:14 +00:00
Jakub Beránek
2632c6139d
Fix empty job matrix 2024-04-23 09:01:51 +02:00
Jakub Beránek
162892b030
Make separate envs for try and auto builds 2024-04-23 08:55:35 +02:00
Jakub Beránek
2f2d59dd06
Fix image field in auto jobs 2024-04-23 08:53:07 +02:00
Jakub Beránek
c251abc7ec
Load GitHub context from environment variables 2024-04-23 08:52:28 +02:00
Guillaume Gomez
f122a5129c
Rollup merge of #124069 - onur-ozkan:run-clippy-on-bootstrap, r=albertlarsan68
enable clippy for bootstrap on CI PRs (in `mingw-check` image)

Let's keep the bootstrap codebase cleaner.
2024-04-21 13:30:24 +02:00
bors
426a698606 Auto merge of #123981 - Kobzol:update-nodejs, r=Mark-Simulacrum
CI: add script for installing NodeJS and update it to v20

I centralized the installation on a single place to make it simple to update the NodeJS version across the board.

Fixes: https://github.com/rust-lang/rust/issues/123965

r? `@Mark-Simulacrum`
2024-04-21 01:06:10 +00:00
bors
8cf135e191 Auto merge of #121712 - mati865:provide-prebuilt-std-for-gnullvm, r=Mark-Simulacrum
Provide prebuilt std for gnullvm targets

Revival of https://github.com/rust-lang/rust/pull/114346 which waiting on MCP that was accepted recently: https://github.com/rust-lang/compiler-team/issues/710#issuecomment-1942014308
2024-04-20 14:58:25 +00:00
Jakub Beránek
d2059aef27
Move auto jobs to calculate-job-matrix.py 2024-04-20 09:54:47 +02:00
Jakub Beránek
6f0ff0b03a
Refactor calculate-job-matrix.py 2024-04-20 09:21:55 +02:00
Jakub Beránek
7a90679e28
Perform PR and try builds dynamically 2024-04-20 09:07:11 +02:00
Jakub Beránek
9fec43ddf1
Move calculate-job-matrix.py to ci/github-actions 2024-04-20 09:06:04 +02:00
Jakub Beránek
a920ed4136
CI: add script for installing NodeJS and update it to v20 2024-04-18 11:11:07 +02:00