Fix build #50
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: test | |
on: | |
pull_request: | |
env: | |
RUST_BACKTRACE: 1 | |
# Spend CI time only on latest ref: https://docs.github.com/en/actions/using-jobs/using-concurrency | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
jobs: | |
unit: | |
strategy: | |
# Prevent GitHub from cancelling all in-progress jobs when a matrix job fails. | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest, macos-latest, windows-latest] | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
override: true | |
toolchain: stable | |
profile: minimal | |
# Smart caching for Rust projects. | |
# Includes workaround for macos cache corruption. | |
# - https://github.com/rust-lang/cargo/issues/8603 | |
# - https://github.com/actions/cache/issues/403 | |
- uses: Swatinem/rust-cache@v2 | |
# Real CI work starts here | |
- name: Build workspace | |
run: cargo build | |
- name: Run workspace unit tests | |
run: cargo test --workspace --lib | |
- name: Run workspace doc tests | |
run: cargo test --workspace --doc | |
if: false # currently go doc generates stuff that rust expects to be valid symbols | |
codegen: | |
strategy: | |
# Prevent GitHub from cancelling all in-progress jobs when a matrix job fails. | |
fail-fast: false | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
override: true | |
toolchain: stable | |
profile: minimal | |
# Smart caching for Rust projects. | |
# Includes workaround for macos cache corruption. | |
# - https://github.com/rust-lang/cargo/issues/8603 | |
# - https://github.com/actions/cache/issues/403 | |
- uses: Swatinem/rust-cache@v2 | |
- uses: extractions/setup-just@v2 | |
- run: |- | |
curl -sSL https://github.com/sharkdp/fd/releases/download/v8.7.1/fd-v8.7.1-i686-unknown-linux-gnu.tar.gz | tar xz -C /usr/local/bin --strip-components=1 | |
- run: |- | |
curl -sSL https://github.com/chmln/sd/releases/download/v1.0.0/sd-v1.0.0-x86_64-unknown-linux-gnu.tar.gz | tar xz -C /usr/local/bin --strip-components=1 | |
- uses: arduino/setup-protoc@v3 | |
- run: just protos | |
- run: just swagger | |
- run: just codegen | |
- name: Ensure generated output is committed | |
run: | | |
if ! git diff --exit-code .; then | |
echo "Uncommitted changes" | |
echo "Please run codegeneration locally and commit the results" | |
exit 1 | |
fi |