Refactor RunnerParams
and RunnerConfig
, add test_artifacts_path
to ContextData
#7222
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: CI | |
on: | |
pull_request: | |
merge_group: | |
push: | |
branches: | |
- master | |
workflow_dispatch: | |
jobs: | |
test-forge-unit-and-integration: | |
name: Test Forge / Unit and Integration Tests | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
- uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 | |
- uses: software-mansion/setup-scarb@v1.3.2 | |
- uses: software-mansion/setup-universal-sierra-compiler@v1 | |
- run: cargo test --release --lib -p forge | |
- run: cargo test --release --bin snforge | |
- run: cargo test --release integration -p forge | |
test-forge-e2e: | |
name: Test Forge / E2E Tests | |
runs-on: ubuntu-latest | |
steps: | |
- name: Extract branch name | |
if: github.event_name != 'pull_request' | |
run: echo "BRANCH_NAME=$(echo ${GITHUB_REF#refs/heads/})" >> $GITHUB_ENV | |
- name: Extract branch name on pull request | |
if: github.event_name == 'pull_request' | |
run: echo "BRANCH_NAME=$(echo $GITHUB_HEAD_REF)" >> $GITHUB_ENV | |
- name: Extract repo name and owner | |
if: github.event_name != 'pull_request' | |
run: echo "REPO_NAME=$(echo ${{ github.repository }}.git)" >> $GITHUB_ENV | |
- name: Extract repo name and owner on pull request | |
if: github.event_name == 'pull_request' | |
run: echo "REPO_NAME=$(echo ${{ github.event.pull_request.head.repo.full_name }}.git)" >> $GITHUB_ENV | |
- name: Print repo name | |
run: echo 'The repo name is' $REPO_NAME | |
- name: Get branch name | |
run: echo 'The branch name is' $BRANCH_NAME | |
- name: Install cairo-profiler | |
run: | | |
curl -L https://raw.githubusercontent.com/software-mansion/cairo-profiler/main/scripts/install.sh | sh | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
- uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 | |
- uses: software-mansion/setup-scarb@v1.3.2 | |
- uses: software-mansion/setup-universal-sierra-compiler@v1 | |
- run: cargo test --release e2e -p forge | |
test-forge-runner: | |
name: Test Forge Runner | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
- uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 | |
- run: cargo test --release -p forge_runner | |
test-cheatnet: | |
name: Test Cheatnet | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
- uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 | |
- uses: software-mansion/setup-scarb@v1.3.2 | |
- uses: software-mansion/setup-universal-sierra-compiler@v1 | |
- name: Run Cheatnet tests | |
run: cargo test --release -p cheatnet | |
test-cast: | |
name: Test Cast | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@dc6353516c68da0f06325f42ad880f76a5e77ec9 | |
with: | |
toolchain: stable | |
- uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 | |
with: | |
cache-directories: crates/sncast/tests/utils/devnet | |
- name: Install starknet-devnet-rs | |
run: ./scripts/install_devnet.sh | |
- uses: software-mansion/setup-scarb@v1.3.2 | |
- uses: software-mansion/setup-universal-sierra-compiler@v1 | |
- name: Run tests | |
run: cargo test --release -p sncast | |
test-conversions: | |
name: Test Conversions | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@dc6353516c68da0f06325f42ad880f76a5e77ec9 | |
with: | |
toolchain: stable | |
- uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 | |
- name: Run tests | |
run: cargo test --release -p conversions | |
test-shared: | |
name: Test Shared | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
- uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 | |
- run: cargo test --release -p shared | |
test-scarb-api: | |
name: Test Scarb Api | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
- uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 | |
- uses: software-mansion/setup-scarb@v1.3.2 | |
- run: cargo test --release -p scarb-api | |
scarbfmt: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: software-mansion/setup-scarb@v1.3.2 | |
- name: Check cairo files format | |
run: | | |
output=$(find . -type f -name "Scarb.toml" -execdir sh -c ' | |
echo "Running \"scarb fmt\" in directory: $PWD" | |
scarb fmt --check | |
' \;) | |
echo "$output" | |
if grep -iq "Diff" <<< "$output"; then | |
exit 1 | |
fi | |
exit 0 | |
rustfmt: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@dc6353516c68da0f06325f42ad880f76a5e77ec9 | |
with: | |
toolchain: stable | |
- uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 | |
- name: Check formatting | |
run: cargo fmt --check | |
clippy: | |
runs-on: ubuntu-latest | |
env: | |
# Make sure CI fails on all warnings - including Clippy lints. | |
RUSTFLAGS: "-Dwarnings" | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@dc6353516c68da0f06325f42ad880f76a5e77ec9 | |
with: | |
toolchain: stable | |
- uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 | |
- run: cargo lint | |
build-docs: | |
name: Test Building Docs | |
runs-on: ubuntu-latest | |
env: | |
MDBOOK_VERSION: 0.4.31 | |
steps: | |
- uses: dtolnay/rust-toolchain@dc6353516c68da0f06325f42ad880f76a5e77ec9 | |
with: | |
toolchain: stable | |
- uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 | |
- uses: actions/checkout@v4 | |
- name: Install mdBook | |
run: | | |
cargo install --version ${MDBOOK_VERSION} mdbook | |
- name: Build with mdBook | |
run: mdbook build | |
working-directory: ./docs | |
typos: | |
name: Check typos | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: typos-action | |
uses: crate-ci/typos@v1.19.0 |