1
Fork 0
Commit graph

261 commits

Author SHA1 Message Date
Jakub Beránek
ae6d93ce13
Test citool on CI 2025-02-17 12:30:02 +01:00
Jakub Beránek
7f154fa4d1
Update documentation 2025-02-17 12:27:44 +01:00
Jakub Beránek
87c49f025f
Use citool in CI 2025-02-17 12:27:44 +01:00
Chris Denton
c94ab207fe
Don't install msys2
windows-msvc doesn't need it and windows-gnu has its own version
2025-02-05 14:22:54 +00:00
MarcoIeni
9b70b8bbbf
CI: free disk with in-tree script instead of GitHub Action
Co-authored-by: whiteio <chriswhiteiodev@gmail.com>
2025-01-21 16:19:11 +01:00
Jakub Beránek
c8b29d6f6f
CI: fix name of jobs
There is a difference between the `image` (the Dockerfile), the `name` of the job (which determines also its properties) and the `full_name`, which includes the `auto/try/pr` prefix.
2025-01-09 21:40:29 +01:00
Jakub Beránek
0cc11f8c48 Add a command to run a given Linux CI job locally 2025-01-07 18:15:13 +01:00
Jakub Beránek
8ecd033654 Rename CI script from calculate-job-matrix to ci.py 2025-01-07 18:15:13 +01:00
MarcoIeni
b731c36faa
ci: use ubuntu 24 instead of latest 2024-12-19 16:02:05 +01:00
Jakub Beránek
6e22b84296
[CI] Use a lockfile for installing the datadog package
Without a lockfile, it could fail to compile when the dependencies have changed.
2024-12-16 12:35:09 +01:00
Michael Goulet
24e7196f92
Rollup merge of #132605 - Kobzol:ci-increase-timeout, r=Mark-Simulacrum
CI: increase timeout from 4h to 6h

Our CI got a bit slower since the last time we [lowered](https://github.com/rust-lang/rust/pull/127648) the timeout, and if e.g. Docker build cache is broken, the timeout can be triggered.

Discussed [here](https://rust-lang.zulipchat.com/#narrow/channel/242791-t-infra/topic/ci.20job.20timings.20stats).
2024-11-26 20:35:37 -05:00
MarcoIeni
02b34154fd
CI: switch 7 linux jobs to free runners 2024-11-05 16:56:41 +01:00
Jakub Beránek
b910e977a3
CI: increase timeout from 4h to 6h
Our CI got a bit slower since the last time we lowered the timeout, and if e.g. Docker build cache is broken, the timeout can be triggered.
2024-11-04 18:55:21 +01:00
Jakub Beránek
91c4d09aed
Print how much disk space is left after CI build runs 2024-10-13 21:58:24 +02:00
Jakub Beránek
71cc27058d
Free up disk space on CI Linux runners 2024-10-13 21:58:24 +02:00
onur-ozkan
4454fa998c add new CI step: "setup upstream remote"
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-10-12 08:58:39 +03:00
Jakub Beránek
c1c0bd7a25
Upload average CPU consumption of CI jobs to DataDog 2024-09-27 11:39:52 +02:00
Jakub Beránek
3f4b9dd463
Lower timeout of CI jobs to 4 hours
The previous value, 10 hours, is unnecessarily long, since most of our jobs finish within 2.5 hours currently.
2024-07-12 11:27:46 +02:00
Chris Denton
48d3425364
Remove some msys2 utils 2024-06-12 17:33:52 +00:00
Jakub Beránek
9ce12c4cab
CI: remove Setup Python action 2024-06-07 11:26:36 +02:00
Jakub Beránek
2fe41c68d3 Fix publishing of toolstate history 2024-06-05 16:41:59 +02:00
Chris Denton
19cfe8d9e6
Add "Setup Python" action to github-hosted runners 2024-05-26 22:43:52 +00:00
Chris Denton
f63931bc1a
Cleanup custom mingw in CI 2024-05-26 22:43:40 +00:00
Jakub Beránek
7b6a3d029b
CI: fix toolstate publishing 2024-05-15 15:48:52 +02: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
74dbe8ae9e
Parse try build CI job name from commit message 2024-05-05 14:06:23 +02:00
Jakub Beránek
b194d5ce44
Output run_type from the matrix calculation job 2024-04-29 21:33:17 +02:00
Jakub Beránek
adbc84cfac
Remove redundant success expressions from steps 2024-04-29 21:33:17 +02:00
Jakub Beránek
686baf5589
Remove redundant success() condition 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
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
2632c6139d
Fix empty job matrix 2024-04-23 09:01:51 +02:00
Jakub Beránek
c251abc7ec
Load GitHub context from environment variables 2024-04-23 08:52:28 +02:00
Jakub Beránek
d2059aef27
Move auto jobs to calculate-job-matrix.py 2024-04-20 09:54:47 +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
bors
ccfcd950b3 Auto merge of #123451 - Kobzol:arbitrary-try-build, r=pietroalbini
CI: add a script for dynamically computing CI job matrix

It would be great if was easier to run specific CI workflows locally, and also to allow us to spawn a specific CI workflow by bors, to enable running arbitrary try builds. See discussion [here](https://rust-lang.zulipchat.com/#narrow/stream/242791-t-infra/topic/CI.20workflows.20refactoring).

This PR is a first step in that direction.
- Moves the definition of CI runners and (for now) PR jobs into a separate `jobs.yml` file.
- Adds a simple Python script that reads the file, decides which jobs should be active for the current CI workflow, and prints them as JSON to their output.
- The PR job then reads this output and generates its job matrix based on it.

By moving the job definitions from `ci.yml` into a separate file, we can handle it programmatically, which should make it easier to both do local execution of CI jobs and also to do arbitrary try builds.
2024-04-15 21:28:25 +00:00
Jakub Beránek
c22c81cbc1 Generate CI job matrix for PR jobs in Python 2024-04-04 14:45:02 +02:00
Jakub Beránek
ad75760637
CI: Redirect stderr to stdout to order GHA logs 2024-04-02 12:08:47 +02:00
Nilstrieb
24a0d7daff Update upload-artifact to v4
This contains a breaking change around artifact merging no longer being
done. This was not relied on, so it's fine.
2024-03-23 17:06:02 +01:00
Josh Stone
29430554f6 Update the minimum external LLVM to 17 2024-03-17 10:11:04 -07:00
bors
5aad51d015 Auto merge of #112268 - lqd:osx-1cgu, r=Kobzol
Build `rustc` with 1CGU on `x86_64-apple-darwin`

Distribute `x86_64-apple-darwin` artifacts built with `rust.codegen-units=1`, like we already do on Linux.

1) effect on code size on `x86_64-apple-darwin`: it's a 11.14% reduction on `librustc_driver.dylib`
- before, [`41d97c8a5dea2731b0e56fe97cd7cb79e21cff79`](https://ci-artifacts.rust-lang.org/rustc-builds/41d97c8a5dea2731b0e56fe97cd7cb79e21cff79/rustc-nightly-x86_64-apple-darwin.tar.xz): 161232048
- after, [`7549dbdc09f0c4f6cc84002ac03081828054784b`](https://ci-artifacts.rust-lang.org/rustc-builds/7549dbdc09f0c4f6cc84002ac03081828054784b/rustc-nightly-x86_64-apple-darwin.tar.xz): 143256928

2) time it took on CI:
- the [first `try` build](2229118712) took: 1h 33m
- the [second `try` build](2229583991) took: 1h 45m

3) most recent perf results on (a noisy) x64 mac are [here](https://github.com/rust-lang/rust/pull/112268#issuecomment-1575635073).

Related tracking issue for build configuration: #103595
2024-03-12 02:02:32 +00:00