53 lines
1.8 KiB
YAML
53 lines
1.8 KiB
YAML
name: ci
|
|
|
|
on:
|
|
push:
|
|
pull_request:
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
concurrency:
|
|
group: ci-${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
rust:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 60
|
|
steps:
|
|
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
|
|
- uses: dtolnay/rust-toolchain@6d653ac52d5f748757700b3b0ec16abf11083d92
|
|
with:
|
|
toolchain: 1.92.0
|
|
components: rustfmt, clippy
|
|
- run: sudo apt-get update && sudo apt-get install -y --no-install-recommends build-essential clang libclang-dev pkg-config python3-cryptography openssl ripgrep curl rsync time
|
|
- run: python3 tools/check_format.py
|
|
- run: python3 -m unittest discover -s tools -p 'test_*.py'
|
|
- run: cargo check --locked --no-default-features
|
|
- run: cargo test --locked
|
|
- run: cargo clippy --locked --all-targets -- -D warnings
|
|
- run: cargo build --locked --release
|
|
- run: python3 tools/dependency_notices.py --check
|
|
docker:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 60
|
|
steps:
|
|
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
|
|
- run: sudo apt-get update && sudo apt-get install -y --no-install-recommends python3-cryptography openssl ripgrep
|
|
- run: docker build -f docker/Dockerfile -t panda-rpki:ci .
|
|
- run: docker run --rm panda-rpki:ci --help
|
|
- run: bash tests/synthetic_docker_e2e.sh
|
|
env:
|
|
PANDA_RPKI_TEST_IMAGE: panda-rpki:ci
|
|
audit:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 20
|
|
steps:
|
|
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
|
|
- uses: dtolnay/rust-toolchain@6d653ac52d5f748757700b3b0ec16abf11083d92
|
|
with:
|
|
toolchain: 1.92.0
|
|
- run: cargo install cargo-audit --locked --version 0.22.0
|
|
- run: cargo audit --json
|