Generate address on else and spend validators; uses title #1922
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: | |
push: | |
branches: ["main"] | |
pull_request: | |
branches: ["main"] | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
build: | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
save-if: ${{ github.ref == 'refs/heads/main' }} | |
key: ${{ runner.os }}-cache-build-v${{ inputs.cache-version }} | |
- name: Build release | |
run: | | |
sudo apt-get install -y pkg-config libssl-dev musl musl-dev musl-tools | |
rustup target add x86_64-unknown-linux-musl | |
cargo install --path=crates/aiken -F bundle_openssl --target=x86_64-unknown-linux-musl | |
mv $(which aiken) aiken | |
ldd aiken | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: aiken-${{ github.sha }}-${{ runner.arch }}-${{ runner.os }} | |
path: ./aiken | |
acceptance_tests: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
save-if: ${{ github.ref == 'refs/heads/main' }} | |
key: ${{ runner.os }}-cache-build-v${{ inputs.cache-version }} | |
- name: Run examples | |
run: | | |
cargo run -r -- check examples/hello_world | |
cargo run -r -- check examples/gift_card | |
- name: Run acceptance tests | |
working-directory: examples/acceptance_tests | |
run: | | |
cargo install cbor-diag-cli | |
bash ci | |
shell: bash | |
unit_tests: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
save-if: ${{ github.ref == 'refs/heads/main' }} | |
key: ${{ runner.os }}-cache-tests-v${{ inputs.cache-version }} | |
- name: Run unit tests | |
run: cargo test --verbose --workspace | |
benchmarks: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
save-if: ${{ github.ref == 'refs/heads/main' }} | |
key: ${{ runner.os }}-cache-build-v${{ inputs.cache-version }} | |
- name: Run benchmarks | |
run: | | |
cargo run -r -- check benchmarks | |
checks: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
save-if: ${{ github.ref == 'refs/heads/main' }} | |
key: ${{ runner.os }}-cache-unit-v${{ inputs.cache-version }} | |
- name: Format | |
run: cargo fmt --all -- --check | |
- name: Clippy | |
run: cargo clippy --all-targets --all-features -- -D warnings |