diff --git a/.github/buildomat/README.md b/.github/buildomat/README.md new file mode 100644 index 0000000000000..ee18e415a1eea --- /dev/null +++ b/.github/buildomat/README.md @@ -0,0 +1,5 @@ +# Buildomat CI + +For builds on illumos, we use Oxide Computer's [Buildomat CI](https://github.com/oxidecomputer/buildomat). + +Compute resources for CI are provided by Oxide Computer. diff --git a/.github/buildomat/build-and-test.sh b/.github/buildomat/build-and-test.sh new file mode 100644 index 0000000000000..3f104fa7cf99a --- /dev/null +++ b/.github/buildomat/build-and-test.sh @@ -0,0 +1,20 @@ +#!/bin/env bash + +set -o errexit +set -o pipefail +set -o xtrace + +# Enable ANSI colors in Cargo output. +export CARGO_TERM_COLOR=always + +cargo --version +rustc --version + +banner libc +ptime -m cargo build --verbose + +banner test +ptime -m cargo test --verbose + +banner libctest +ptime -m cargo test --verbose --manifest-path libc-test/Cargo.toml diff --git a/.github/buildomat/config.toml b/.github/buildomat/config.toml new file mode 100644 index 0000000000000..55ba305e7566f --- /dev/null +++ b/.github/buildomat/config.toml @@ -0,0 +1,7 @@ +# Configuration for buildomat. See +# https://github.com/oxidecomputer/buildomat?tab=readme-ov-file#per-repository-configuration. + +enable = true +# The buildomat jobs don't have access to any secrets, so it's okay for GitHub +# users to create them. +org_only = false diff --git a/.github/buildomat/jobs/x86_64-unknown-illumos.sh b/.github/buildomat/jobs/x86_64-unknown-illumos.sh new file mode 100644 index 0000000000000..846661a8e31dc --- /dev/null +++ b/.github/buildomat/jobs/x86_64-unknown-illumos.sh @@ -0,0 +1,8 @@ +#!/bin/env bash +#: +#: name = "x86_64-unknown-illumos" +#: variety = "basic" +#: target = "helios-latest" +#: rust_toolchain = "stable" + +exec .github/buildomat/build-and-test.sh illumos