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](https://github.com/rust-lang-ci/rust/actions/runs/8155512915/job/22291187124 ) took: 1h 33m
- the [second `try` build](https://github.com/rust-lang-ci/rust/actions/runs/8157057880/job/22295839911 ) 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
bors
4a0cc881dc
Auto merge of #112267 - lqd:win-1cgu, r=Kobzol
...
Build `rustc` with 1CGU on `x86_64-pc-windows-msvc`
Distribute `x86_64-pc-windows-msvc` artifacts built with `rust.codegen-units=1`, like we already do on Linux.
1) effect on code size on `x86_64-pc-windows-msvc`: it's a 3.67% reduction on `rustc_driver.dll`
- before, [`41d97c8a5dea2731b0e56fe97cd7cb79e21cff79`](https://ci-artifacts.rust-lang.org/rustc-builds/41d97c8a5dea2731b0e56fe97cd7cb79e21cff79/rustc-nightly-x86_64-pc-windows-msvc.tar.xz ): 137605632
- after, [`704aaa875e4acccc973cbe4579e66afbac425691`](https://ci-artifacts.rust-lang.org/rustc-builds/704aaa875e4acccc973cbe4579e66afbac425691/rustc-nightly-x86_64-pc-windows-msvc.tar.xz ): 132551680
2) time it took on CI
- the [first `try` build](https://github.com/rust-lang-ci/rust/actions/runs/8155647651/job/22291592507 ) took: 1h 31m
- the [second `try` build](https://github.com/rust-lang-ci/rust/actions/runs/8157043594/job/22295790552 ) took: 1h 32m
3) most recent perf results:
- on a slightly noisy desktop [here](https://github.com/rust-lang/rust/pull/112267#issuecomment-1575758155 )
- ChrisDenton's results [here](https://github.com/rust-lang/rust/pull/112267#issuecomment-1583295338 )
Related tracking issue for build configuration: #103595
2024-03-11 21:40:34 +00:00
Josh Stone
bef1cd80d8
ci: add a runner for vanilla LLVM 18
2024-03-07 18:30:04 -08:00
Rémy Rakic
7d6969bb28
build rustc with 1CGU on x86_64-pc-windows-msvc
2024-03-05 16:50:48 +00:00
Rémy Rakic
b36fa70917
build rustc with 1CGU on x86_64-apple-darwin
2024-03-05 16:42:42 +00:00