Skip to content

Update CI

Update CI #23

Workflow file for this run

name: CI
on:
pull_request:
push:
branches:
- main
env:
CARGO_TERM_COLOR: always
CARGO_TERM_VERBOSE: true
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: rustup show
- run: rustup component add rustfmt
- run: cargo fmt --all -- --check
vet:
runs-on: ubuntu-latest
needs: lint
steps:
- uses: actions/checkout@v4
- run: rustup show
- name: Install system packages needed by Bevy
run: |
sudo apt-get install -y g++ pkg-config libx11-dev libasound2-dev libudev-dev libxkbcommon-x11-0 libwayland-dev libxkbcommon-dev
- uses: Swatinem/rust-cache@v2
- run: cargo clippy --all-targets
test:
runs-on: ubuntu-latest
needs: lint
steps:
- uses: actions/checkout@v4
- run: rustup show
- name: Install system packages needed by Bevy
run: |
sudo apt-get install -y g++ pkg-config libx11-dev libasound2-dev libudev-dev libxkbcommon-x11-0 libwayland-dev libxkbcommon-dev
- uses: Swatinem/rust-cache@v2
- run: cargo test
build-debug:
strategy:
matrix:
os:
- ubuntu-latest
- macos-latest
- windows-latest
runs-on: ${{ matrix.os }}
needs:
- vet
- test
if: github.ref != 'refs/heads/main'
steps:
- uses: actions/checkout@v4
- run: rustup show
- name: Install system packages needed by Bevy
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get install -y g++ pkg-config libx11-dev libasound2-dev libudev-dev libxkbcommon-x11-0 libwayland-dev libxkbcommon-dev
- uses: Swatinem/rust-cache@v2
- run: cargo build --no-default-features
- uses: actions/upload-artifact@v4
with:
name: infinigen-debug-${{ runner.os }}-${{ runner.arch }}
path: target/debug/infinigen
build-release:
strategy:
matrix:
os:
- ubuntu-latest
- macos-latest
- windows-latest
runs-on: ${{ matrix.os }}
needs:
- vet
- test
steps:
- uses: actions/checkout@v4
- run: rustup show
- name: Install system packages needed by Bevy
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get install -y g++ pkg-config libx11-dev libasound2-dev libudev-dev libxkbcommon-x11-0 libwayland-dev libxkbcommon-dev
- uses: Swatinem/rust-cache@v2
- run: cargo build --release --no-default-features
- uses: actions/upload-artifact@v4
with:
name: infinigen-release-${{ runner.os }}-${{ runner.arch }}
path: target/release/infinigen