Skip to content

docs(api-explorer): propose command-hyperlink design for large-output… #583

docs(api-explorer): propose command-hyperlink design for large-output…

docs(api-explorer): propose command-hyperlink design for large-output… #583

Workflow file for this run

name: CICD
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
cicd:
runs-on: ubuntu-latest
concurrency: ${{ github.workflow }}-${{ github.ref }}
permissions:
contents: read
checks: write
issues: write
defaults:
run:
working-directory: rust
steps:
- name: Checkout code
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@29eef336d9b2848a0b548edc03f92a220660cdb8 # stable
with:
components: clippy, rustfmt
- name: Cache cargo
uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: |
~/.cargo/registry
~/.cargo/git
rust/target
key: ${{ runner.os }}-cargo-${{ hashFiles('rust/Cargo.lock') }}
restore-keys: ${{ runner.os }}-cargo-
- name: Check
run: cargo check
- name: Format
run: cargo fmt --check
- name: Lint
run: cargo clippy --all-targets -- -D warnings
- name: Test
run: cargo test
- name: Audit dependencies for known vulnerabilities
uses: rustsec/audit-check@69366f33c96575abad1ee0dba8212993eecbe998 # v2.0.0
with:
working-directory: rust
token: ${{ secrets.GITHUB_TOKEN }}
# RUSTSEC-2026-0194/0195: quick-xml DoS advisories, pulled in transitively via
# phonenumber's capped version range; no fix available until phonenumber bumps it.
ignore: RUSTSEC-2026-0194,RUSTSEC-2026-0195
- name: Check API catalog for unresolved external $refs
working-directory: .
run: |
set -o pipefail
if grep -r '"[$]ref"[[:space:]]*:[[:space:]]*"[^#]' rust/schemas/api/*.json; then
echo "ERROR: unresolved external \$ref(s) in committed API catalog schemas (shown above)"
exit 1
fi