This github action performs common setup for running GitHub workflows for the hyperlight project.
jobs:
setup:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: hyperlight-dev/ci-setup-workflow@v2.0.0
with:
additional-toolchain-directory: guestsCheck out the consumer repository before invoking the action.
| Name | Description |
|---|---|
additional-toolchain-directory |
Optional directory containing another rust-toolchain.toml or rust-toolchain file. |
just-version |
Version of Just to install; defaults to 1.41. |
The action reads rust-toolchain.toml or rust-toolchain from the repository
root, falling back to stable when neither file exists. Set
additional-toolchain-directory when another directory, such as a guest
project, uses a different toolchain.
Rustup reads the version, profile, components, and targets from each toolchain
file. Put required extras such as clippy, rustfmt, x86_64-unknown-none,
or cross-compilation targets in those files.
This action performs the following steps:
- Installs rustup if needed and the root toolchain (or stable by default).
- Installs an additional toolchain when requested.
- Installs the requested components and targets.
- Installs Just.
- Sets up the clang toolchain on Linux.
- Enables the Windows Hypervisor Platform on Windows.
- Sets up environment variables needed to build / run tests based on the machine's configuration.
Runners need Bash 5 and rustup or curl. On macOS, the action discovers Homebrew on PATH or in its standard Apple Silicon and Intel locations, installing it noninteractively with the official installer when missing. Installing Homebrew requires the runner user to have the permissions required by that installer. The Rust setup action installs rustup when missing and Bash through Homebrew on macOS.
See the Code of Conduct.