Support CI tests for old rust-gpu
versions
#76
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: push | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
env: | |
# For setup-rust, see https://github.com/moonrepo/setup-rust/issues/22 | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
jobs: | |
install-and-build-shaders: | |
strategy: | |
fail-fast: false | |
matrix: | |
os: | |
- ubuntu-latest | |
- macos-latest | |
- windows-latest | |
rust-gpu-version: [latest] | |
include: | |
# As well as testing on each OS, we also want to test to make sure we're still supporting | |
# older versions of `rust-gpu`. However, we can assume that these tests are already okay | |
# across platforms, so we only need to test on Linux, the chepeast in terms of minutes. | |
# | |
# `0.7.0` currently fails building `spirv-builder-cli` with: | |
# """ | |
# package `is_terminal_polyfill v1.70.1` cannot be built because it requires rustc | |
# 1.70.0 or newer, while the currently active rustc version is 1.69.0-nightly | |
# """ | |
# It's probably easily fixable. But also `0.7.0` was released in April 2023, so there's | |
# unlikely many users of it? | |
- os: ubuntu-latest | |
rust-gpu-version: 0.8.0 | |
- os: ubuntu-latest | |
rust-gpu-version: 0.9.0 | |
runs-on: ${{ matrix.os }} | |
defaults: | |
run: | |
shell: bash | |
env: | |
RUST_LOG: debug | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: moonrepo/setup-rust@v1 | |
- uses: extractions/setup-just@v2 | |
- name: Install Rust toolchain | |
run: | | |
rustup default stable | |
rustup update | |
- run: cargo test | |
- name: Run a full build | |
run: just build-shader-template ${{ matrix.rust-gpu-version }} | |
lints: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: moonrepo/setup-rust@v1 | |
- uses: extractions/setup-just@v2 | |
- uses: cargo-bins/cargo-binstall@main | |
- run: just setup-lints | |
- run: just lints |