Files
reth/.github/workflows/ci.yml
Georgios Konstantopoulos 21db2936e6 ci: pin ubuntu to 20.04 to avoid glibc errors
ref: https://github.com/paradigmxyz/reth/actions/runs/5486255403/jobs/9996118421
ref: https://github.com/foundry-rs/foundry/issues/3827

Compiling serde v1.0.164
error: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.25' not found (required by /target/maxperf/deps/libserde_derive-6e9709c79bb5c7fa.so)
   --> /cargo/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.164/src/lib.rs:340:1
    |
340 | extern crate serde_derive;
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^
2023-07-07 15:37:04 +03:00

71 lines
1.8 KiB
YAML

on:
pull_request:
merge_group:
env:
RUSTFLAGS: -D warnings
CARGO_TERM_COLOR: always
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
name: ci
jobs:
lint:
name: code lint
runs-on: ubuntu-20.04
steps:
- name: Checkout sources
uses: actions/checkout@v3
- name: Install toolchain
uses: dtolnay/rust-toolchain@nightly
with:
components: rustfmt, clippy
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: cargo fmt
uses: actions-rs/cargo@v1
with:
command: fmt
args: --all --check
- name: cargo clippy
uses: actions-rs/clippy-check@v1
with:
args: --all --all-features -- -A clippy::incorrect_clone_impl_on_copy_type -A clippy::arc_with_non_send_sync
token: ${{ secrets.GITHUB_TOKEN }}
doc-lint:
name: doc lint
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- name: Install toolchain
uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- name: Check if documentation builds
run: RUSTDOCFLAGS="-D warnings" cargo doc --all --no-deps --all-features --document-private-items
grafana-lint:
name: grafana lint
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- name: Check dashboard JSON with jq
uses: sergeysova/jq-action@v2
with:
cmd: jq empty etc/grafana/dashboards/overview.json
lint-success:
if: always()
name: lint success
runs-on: ubuntu-20.04
needs: [lint, doc-lint, grafana-lint]
steps:
- name: Decide whether the needed jobs succeeded or failed
uses: re-actors/alls-green@release/v1
with:
jobs: ${{ toJSON(needs) }}