Add support for Cargo feature flags #77
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: Tests | |
on: | |
pull_request: | |
push: | |
branches: [main, master] | |
env: | |
RUSTUP_MAX_RETRIES: 10 | |
CARGO_INCREMENTAL: 1 | |
CARGO_NET_RETRY: 10 | |
CARGO_TERM_COLOR: always | |
jobs: | |
build: | |
defaults: | |
run: | |
shell: bash | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: | |
- macos-latest | |
- ubuntu-latest | |
- windows-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Tests | |
run: cargo test --verbose | |
format: | |
defaults: | |
run: | |
shell: bash | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install Rust toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
components: rustfmt | |
toolchain: stable | |
- name: Check | |
run: cargo fmt -- --check | |
integration: | |
defaults: | |
run: | |
shell: bash | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: | |
- macos-latest | |
- ubuntu-latest | |
- windows-latest | |
sdk: | |
- latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Rust Cache | |
uses: Swatinem/rust-cache@v1 | |
- name: Install Crank | |
run: cargo install --path . --force | |
- name: Checkout Crankstart | |
uses: actions/checkout@v3 | |
with: | |
repository: pd-rs/crankstart | |
path: crankstart | |
- name: Install Playdate SDK | |
id: sdk | |
# then use ${{ steps.sdk.outputs.root/version }} | |
uses: pd-rs/get-playdate-sdk@main | |
with: | |
version: ${{ matrix.sdk }} | |
- name: Info | |
run: | | |
which pdc | |
pdc --version | |
- name: Build Examples | |
env: | |
RUST_LOG: trace | |
run: | | |
cd crankstart | |
# build projects without graphical dependencies: | |
# hello world | |
crank build --release --example=hello_world | |
crank build --release --example=hello_world --device | |
# life game | |
crank build --release --example=life | |
crank build --release --example=life --device | |
# TODO: check existence of produced packages |