Fix JIT reward #1554
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: 'Build' | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: [main] | |
env: | |
CARGO_TERM_COLOR: always | |
FOUNDRY_PROFILE: ci | |
jobs: | |
build: | |
name: 'Build + Fmt' | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: dtolnay/rust-toolchain@nightly | |
with: | |
components: clippy,rustfmt | |
toolchain: nightly | |
- name: Install Foundry | |
uses: foundry-rs/foundry-toolchain@v1 | |
with: | |
version: nightly | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
cache-on-failure: true | |
- name: "build nightly" | |
run: cargo build --workspace --all-features | |
# env: | |
# RUSTFLAGS: -D warnings | |
- name: "cargo fmt" | |
run: cargo fmt --all --check | |
clippy: | |
name: "clippy" | |
if: github.event.pull_request.draft == false | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@nightly | |
with: | |
components: clippy,rustfmt | |
toolchain: nightly | |
- name: Install Foundry | |
uses: foundry-rs/foundry-toolchain@v1 | |
with: | |
version: nightly | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
cache-on-failure: true | |
key: "clippy-nightly" | |
- name: "clippy all" | |
run: cargo clippy --all-targets | |
env: | |
RUSTFLAGS: -D warnings | |
build-tests: | |
name: 'Build Tests' | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install Rust toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: nightly | |
profile: minimal | |
override: true | |
- name: Install Foundry | |
uses: foundry-rs/foundry-toolchain@v1 | |
with: | |
version: nightly | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
cache-on-failure: true | |
- name: Build Tests | |
run: cargo build --tests | |
contracts: | |
name: 'Build, Format & Test Contracts' | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
working-directory: ./contracts | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Install Foundry | |
uses: foundry-rs/foundry-toolchain@v1 | |
with: | |
version: nightly | |
- name: Install uv | |
uses: astral-sh/setup-uv@v3 | |
with: | |
version: "0.4.18" | |
- name: Setup python virtual environment | |
run: uv venv .venv --python 3.12 | |
- name: Sync python dependencies | |
run: uv pip install -r requirements.txt | |
- name: Show Forge version | |
run: forge --version | |
- name: Run Forge fmt | |
run: forge fmt --check | |
id: fmt | |
- name: Run Forge tests | |
run: forge test -vvv --ffi | |
id: test |