Add powers and convert to Minion #1388
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: | |
push: | |
branches: | |
- main # run for pushes to the main branch. other branches need to create a PR if they want testing. | |
paths: | |
- conjure_oxide/** | |
- solvers/** | |
- crates/** | |
- Cargo.* | |
- conjure_oxide/tests/** | |
- .github/workflows/test.yml | |
- .github/workflows/code-coverage-deploy.yml | |
pull_request: | |
paths: | |
- conjure_oxide/** | |
- solvers/** | |
- crates/** | |
- Cargo.* | |
- conjure_oxide/tests/** | |
- .github/workflows/test.yml | |
- .github/workflows/code-coverage-deploy.yml | |
workflow_dispatch: | |
env: | |
SCCACHE_GHA_ENABLED: "true" | |
RUSTC_WRAPPER: "sccache" | |
SCCACHE_GHA_VERSION: 5 | |
jobs: | |
build-and-test: | |
name: "Test" | |
timeout-minutes: 10 | |
strategy: | |
# run all combinations of the matrix even if one combination fails. | |
fail-fast: false | |
matrix: | |
rust_release: | |
- stable | |
- nightly | |
conjure_version: | |
- 2.5.1 | |
os: | |
- ubuntu-latest | |
- macos-latest | |
include: | |
- os: ubuntu-latest | |
release_suffix: linux | |
- os: macos-latest | |
release_suffix: macos-intel | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Run sccache-cache | |
uses: mozilla-actions/[email protected] | |
- name: Disable rust-lld (to fix linkme) | |
run: | | |
echo RUSTFLAGS=${RUSTFLAGS}\ -Zlinker-features=-lld >> $GITHUB_ENV | |
echo RUSTDOCFLAGS=${RUSTDOCFLAGS}\ -Zlinker-features=-lld >> $GITHUB_ENV | |
if: matrix.rust_release == 'nightly' | |
- run: rustup update ${{ matrix.rust_release }} && rustup default ${{ matrix.rust_release }} | |
- run: cargo build -vv --workspace | |
- uses: ./.github/actions/install-conjure | |
with: | |
os_arch: ${{ matrix.release_suffix }} | |
version: ${{ matrix.conjure_version }} | |
- run: cargo test --workspace | |
examples: | |
name: "Examples" | |
timeout-minutes: 10 | |
strategy: | |
# run all combinations of the matrix even if one combination fails. | |
fail-fast: false | |
matrix: | |
rust_release: | |
- stable | |
- nightly | |
os: | |
- ubuntu-latest | |
- macos-latest | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Run sccache-cache | |
uses: mozilla-actions/[email protected] | |
- name: Disable rust-lld (to fix linkme) | |
run: | | |
echo RUSTFLAGS=${RUSTFLAGS}\ -Zlinker-features=-lld >> $GITHUB_ENV | |
echo RUSTDOCFLAGS=${RUSTDOCFLAGS}\ -Zlinker-features=-lld >> $GITHUB_ENV | |
if: matrix.rust_release == 'nightly' | |
- run: rustup update ${{ matrix.rust_release }} && rustup default ${{ matrix.rust_release }} | |
- run: cargo build -vv --workspace --examples | |
audit: | |
name: "Audit" | |
runs-on: ubuntu-latest | |
strategy: | |
# run all combinations of the matrix even if one combination fails. | |
fail-fast: false | |
matrix: | |
rust_release: | |
- stable | |
- nightly | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Run sccache-cache | |
uses: mozilla-actions/[email protected] | |
- run: rustup update ${{ matrix.rust_release }} && rustup default ${{ matrix.rust_release }} | |
- run: cargo install cargo-audit | |
- run: cargo audit |