mirror of
https://github.com/scroll-tech/scroll.git
synced 2026-01-09 14:08:03 -05:00
99 lines
2.5 KiB
YAML
99 lines
2.5 KiB
YAML
name: Prover
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
- staging
|
|
- develop
|
|
- alpha
|
|
paths:
|
|
- 'prover/**'
|
|
- '.github/workflows/prover.yml'
|
|
pull_request:
|
|
types:
|
|
- opened
|
|
- reopened
|
|
- synchronize
|
|
- ready_for_review
|
|
paths:
|
|
- 'prover/**'
|
|
- '.github/workflows/prover.yml'
|
|
|
|
defaults:
|
|
run:
|
|
working-directory: 'prover'
|
|
|
|
jobs:
|
|
skip_check:
|
|
runs-on: ubuntu-latest
|
|
outputs:
|
|
should_skip: ${{ steps.skip_check.outputs.should_skip }}
|
|
steps:
|
|
- id: skip_check
|
|
uses: fkirc/skip-duplicate-actions@v5
|
|
with:
|
|
cancel_others: 'true'
|
|
concurrent_skipping: 'same_content_newer'
|
|
paths_ignore: '["**/README.md"]'
|
|
|
|
fmt:
|
|
needs: [skip_check]
|
|
if: |
|
|
github.event.pull_request.draft == false &&
|
|
(github.event.action == 'ready_for_review' || needs.skip_check.outputs.should_skip != 'true')
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 15
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: dtolnay/rust-toolchain@master
|
|
with:
|
|
toolchain: nightly-2023-12-03
|
|
components: rustfmt
|
|
- name: Cargo cache
|
|
uses: Swatinem/rust-cache@v2
|
|
with:
|
|
workspaces: "prover -> target"
|
|
- name: Cargo check
|
|
run: cargo check --all-features
|
|
- name: Cargo fmt
|
|
run: cargo fmt --all -- --check
|
|
|
|
clippy:
|
|
needs: [skip_check, fmt]
|
|
if: |
|
|
github.event.pull_request.draft == false &&
|
|
(github.event.action == 'ready_for_review' || needs.skip_check.outputs.should_skip != 'true')
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 30
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: dtolnay/rust-toolchain@master
|
|
with:
|
|
toolchain: nightly-2023-12-03
|
|
components: clippy
|
|
- name: Cargo cache
|
|
uses: Swatinem/rust-cache@v2
|
|
with:
|
|
workspaces: "prover -> target"
|
|
- name: Run clippy
|
|
run: cargo clippy --all-features --all-targets -- -D warnings
|
|
|
|
compile:
|
|
needs: [skip_check, clippy]
|
|
if: |
|
|
github.event.pull_request.draft == false &&
|
|
(github.event.action == 'ready_for_review' || needs.skip_check.outputs.should_skip != 'true')
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: dtolnay/rust-toolchain@master
|
|
with:
|
|
toolchain: nightly-2023-12-03
|
|
- name: Cache cargo
|
|
uses: Swatinem/rust-cache@v2
|
|
with:
|
|
workspaces: "prover -> target"
|
|
- name: Test
|
|
run: |
|
|
make prover |