diff --git a/.github/buildomat/jobs/omicron-common-helios.sh b/.github/buildomat/jobs/omicron-common-helios.sh new file mode 100755 index 00000000000..53ae718d4d6 --- /dev/null +++ b/.github/buildomat/jobs/omicron-common-helios.sh @@ -0,0 +1,9 @@ +#!/bin/bash +#: +#: name = "omicron-common (helios)" +#: variety = "basic" +#: target = "helios-2.0" +#: rust_toolchain = "1.77.2" +#: output_rules = [] + +exec .github/buildomat/omicron-common.sh diff --git a/.github/buildomat/jobs/omicron-common-linux.sh b/.github/buildomat/jobs/omicron-common-linux.sh new file mode 100644 index 00000000000..8e24eb7a36e --- /dev/null +++ b/.github/buildomat/jobs/omicron-common-linux.sh @@ -0,0 +1,12 @@ +#!/bin/bash +#: +#: name = "omicron-common (ubuntu-22.04)" +#: variety = "basic" +#: target = "ubuntu-22.04" +#: rust_toolchain = "1.77.2" +#: output_rules = [] + +sudo apt-get update +sudo apt-get install -y libssl-dev pkg-config + +exec .github/buildomat/omicron-common.sh diff --git a/.github/buildomat/omicron-common.sh b/.github/buildomat/omicron-common.sh new file mode 100644 index 00000000000..657c368f14f --- /dev/null +++ b/.github/buildomat/omicron-common.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +# Verify that omicron-common builds successfully when used as a dependency +# in an external project. It must not leak anything that requires an external +# dependency (apart from OpenSSL/pkg-config). + +set -o errexit +set -o pipefail +set -o xtrace + +cargo --version +rustc --version + +cargo new --lib test-project +cd test-project +cargo add omicron-common \ + --git https://github.com/oxidecomputer/omicron.git \ + --rev "$GITHUB_SHA" +cargo check +cargo build --release