mirror of
https://codeberg.org/Toasterson/solstice-ci.git
synced 2026-04-10 13:20:41 +00:00
- Add detection and usage of GNU `tar` for platforms where BSD `tar` is incompatible with required options. - Refactor `job.sh` to delegate all environment setup to newly introduced per-OS setup scripts. - Add initial support for workflow setups via `workflow.kdl`, running pre-defined setup scripts before executing workflow steps. - Integrate step-wise execution and logging for workflows, with structured NDJSON output for detailed traceability. - Increment orchestrator version to 0.1.16. Signed-off-by: Till Wegmueller <toasterson@gmail.com>
23 lines
1.1 KiB
Text
23 lines
1.1 KiB
Text
workflow name="Solstice CI for solstice-ci" {
|
|
// Linux build and test on Ubuntu 22.04 runner
|
|
job id="linux-build" runs_on="ubuntu-22.04" {
|
|
setup path=".solstice/setup-linux.sh"
|
|
step name="Show toolchain" run="rustc -Vv && cargo -V"
|
|
step name="Format" run="cargo fmt --check"
|
|
step name="Clippy" run="cargo clippy --workspace --all-targets --all-features -- -D warnings"
|
|
step name="Build" run="cargo build --workspace"
|
|
step name="Test" run="cargo test --workspace --all-targets"
|
|
// Legacy script hook (runs after all other tests)
|
|
step name="Legacy job.sh" run=".solstice/job.sh"
|
|
}
|
|
|
|
// Illumos build (bhyve zone). Keep steps minimal; clippy/format may vary per toolchain.
|
|
job id="illumos-build" runs_on="illumos-latest" {
|
|
setup path=".solstice/setup-illumos.sh"
|
|
step name="Show toolchain" run="rustc -Vv && cargo -V"
|
|
step name="Build" run="cargo build --workspace"
|
|
step name="Test" run="cargo test --workspace --all-targets"
|
|
// Legacy script hook (runs after all other tests)
|
|
step name="Legacy job.sh" run=".solstice/job.sh"
|
|
}
|
|
}
|