Tahinli/forge
public0 watching
★ 0
| 1 | # CI for forge itself. Format: docs/ci.md, parser: crates/forge-ci/src/config.rs. |
| 2 | # |
| 3 | # cmake is needed because aws-lc-sys (via aws-lc-rs, pulled in by rustls) builds its C |
| 4 | # sources with cmake. The rust image has a C compiler but not cmake. |
| 5 | # The workflow has no branch condition, so the build job also runs for pull requests. |
| 6 | |
| 7 | [on] |
| 8 | push = ["main"] |
| 9 | pull_request = true |
| 10 | manual = true |
| 11 | |
| 12 | [jobs.test] |
| 13 | image = "docker.io/library/rust:1" |
| 14 | run = """ |
| 15 | apt-get update |
| 16 | apt-get install -y --no-install-recommends cmake |
| 17 | cargo test --workspace |
| 18 | """ |
| 19 | timeout_minutes = 60 |
| 20 | |
| 21 | [jobs.build] |
| 22 | image = "docker.io/library/rust:1" |
| 23 | needs = ["test"] |
| 24 | run = """ |
| 25 | apt-get update |
| 26 | apt-get install -y --no-install-recommends cmake |
| 27 | cargo build --profile dist -p forge-web |
| 28 | mkdir -p dist |
| 29 | cp target/dist/forge dist/forge |
| 30 | """ |
| 31 | artifacts = ["dist/forge"] |
| 32 | timeout_minutes = 60 |