Add cargo audit, lychee to workflow.

Rename / tweak some workflow jobs.

Signed-off-by: Jason Volk <jason@zemos.net>
This commit is contained in:
Jason Volk
2025-05-02 00:46:59 +00:00
parent 77426c0d7a
commit 98d16a2f6c
16 changed files with 164 additions and 259 deletions

View File

@@ -13,10 +13,6 @@ on:
required: false
default: '["test", "bench"]'
description: Cargo profiles
docker_id:
type: string
required: false
description: Dockerhub acct/repo identity.
feat_sets:
type: string
required: false
@@ -53,11 +49,8 @@ on:
default: '["testing-slim"]'
description: System versions
env:
docker_id: ${{inputs.docker_id}}
jobs:
task:
bake:
name: Bake
runs-on: ${{matrix.machine}}
strategy:
@@ -75,7 +68,7 @@ jobs:
steps:
- uses: actions/checkout@v3
- name: Task
- name: Execute
env:
bake_target: ${{matrix.bake_target}}
cargo_profile: ${{matrix.cargo_profile}}

View File

@@ -1,16 +1,15 @@
name: Base Environment
name: Base
on:
workflow_call:
jobs:
systems:
name: Base Environment
name: System
uses: ./.github/workflows/bake.yml
with:
bake_targets: '["systems"]'
cargo_profiles: ${{vars.CARGO_PROFILES}}
docker_id: ${{vars.DOCKER_ID}}
feat_sets: ${{vars.FEAT_SETS}}
machines: ${{vars.MACHINES}}
rust_targets: ${{vars.RUST_TARGETS}}
@@ -20,13 +19,12 @@ jobs:
sys_versions: ${{vars.SYS_VERSIONS}}
buildsys:
name: Build Environment
name: Builder
uses: ./.github/workflows/bake.yml
needs: [systems]
with:
bake_targets: '["buildsys"]'
cargo_profiles: ${{vars.CARGO_PROFILES}}
docker_id: ${{vars.DOCKER_ID}}
feat_sets: ${{vars.FEAT_SETS}}
machines: ${{vars.MACHINES}}
rust_targets: ${{vars.RUST_TARGETS}}
@@ -36,13 +34,12 @@ jobs:
sys_versions: ${{vars.SYS_VERSIONS}}
complement:
name: Test Environment
name: Tester
uses: ./.github/workflows/bake.yml
needs: [systems]
with:
bake_targets: '["complement-tester"]'
cargo_profiles: ${{vars.CARGO_PROFILES}}
docker_id: ${{vars.DOCKER_ID}}
feat_sets: ${{vars.FEAT_SETS}}
machines: ${{vars.MACHINES}}
rust_targets: ${{vars.RUST_TARGETS}}

View File

@@ -10,7 +10,6 @@ jobs:
with:
bake_targets: '["install"]'
cargo_profiles: ${{vars.CARGO_PROFILES}}
docker_id: ${{vars.DOCKER_ID}}
feat_sets: ${{vars.FEAT_SETS}}
machines: ${{vars.MACHINES}}
rust_targets: ${{vars.RUST_TARGETS}}
@@ -26,7 +25,6 @@ jobs:
with:
bake_targets: '["complement-testee"]'
cargo_profiles: ${{vars.CARGO_PROFILES}}
docker_id: ${{vars.DOCKER_ID}}
feat_sets: ${{vars.FEAT_SETS}}
machines: ${{vars.MACHINES}}
rust_targets: ${{vars.RUST_TARGETS}}

View File

@@ -5,12 +5,11 @@ on:
jobs:
sources:
name: Acquire Source
name: Acquire
uses: ./.github/workflows/bake.yml
with:
bake_targets: '["sources"]'
cargo_profiles: ${{vars.CARGO_PROFILES}}
docker_id: ${{vars.DOCKER_ID}}
feat_sets: ${{vars.FEAT_SETS}}
machines: ${{vars.MACHINES}}
rust_targets: ${{vars.RUST_TARGETS}}
@@ -20,13 +19,12 @@ jobs:
sys_versions: ${{vars.SYS_VERSIONS}}
rocksdb:
name: Build RocksDB
name: RocksDB
uses: ./.github/workflows/bake.yml
needs: [sources]
with:
bake_targets: '["rocksdb"]'
cargo_profiles: ${{vars.CARGO_PROFILES}}
docker_id: ${{vars.DOCKER_ID}}
feat_sets: ${{vars.FEAT_SETS}}
machines: ${{vars.MACHINES}}
rust_targets: ${{vars.RUST_TARGETS}}
@@ -36,13 +34,12 @@ jobs:
sys_versions: ${{vars.SYS_VERSIONS}}
deps:
name: Build Dependencies
name: Build
uses: ./.github/workflows/bake.yml
needs: [rocksdb]
with:
bake_targets: '["deps"]'
bake_targets: '["deps-clippy", "deps-build-tests", "deps-build-bins"]'
cargo_profiles: ${{vars.CARGO_PROFILES}}
docker_id: ${{vars.DOCKER_ID}}
feat_sets: ${{vars.FEAT_SETS}}
machines: ${{vars.MACHINES}}
rust_targets: ${{vars.RUST_TARGETS}}

View File

@@ -9,9 +9,36 @@ jobs:
uses: ./.github/workflows/bake.yml
with:
bake_targets: '["fmt"]'
cargo_profiles: ${{vars.CARGO_PROFILES}}
docker_id: ${{vars.DOCKER_ID}}
feat_sets: ${{vars.FEAT_SETS}}
cargo_profiles: '["test"]'
feat_sets: '["none"]'
machines: ${{vars.MACHINES}}
rust_targets: ${{vars.RUST_TARGETS}}
rust_toolchains: '["nightly"]'
sys_names: ${{vars.SYS_NAMES}}
sys_targets: ${{vars.SYS_TARGETS}}
sys_versions: ${{vars.SYS_VERSIONS}}
audit:
name: Audit
uses: ./.github/workflows/bake.yml
with:
bake_targets: '["audit"]'
cargo_profiles: '["test"]'
feat_sets: '["none"]'
machines: ${{vars.MACHINES}}
rust_targets: ${{vars.RUST_TARGETS}}
rust_toolchains: '["nightly"]'
sys_names: ${{vars.SYS_NAMES}}
sys_targets: ${{vars.SYS_TARGETS}}
sys_versions: ${{vars.SYS_VERSIONS}}
lychee:
name: Lychee
uses: ./.github/workflows/bake.yml
with:
bake_targets: '["lychee"]'
cargo_profiles: '["test"]'
feat_sets: '["none"]'
machines: ${{vars.MACHINES}}
rust_targets: ${{vars.RUST_TARGETS}}
rust_toolchains: '["nightly"]'
@@ -25,7 +52,6 @@ jobs:
with:
bake_targets: '["clippy"]'
cargo_profiles: ${{vars.CARGO_PROFILES}}
docker_id: ${{vars.DOCKER_ID}}
feat_sets: ${{vars.FEAT_SETS}}
machines: ${{vars.MACHINES}}
rust_targets: ${{vars.RUST_TARGETS}}
@@ -40,12 +66,11 @@ jobs:
uses: ./.github/workflows/bake.yml
with:
bake_targets: '["docs"]'
cargo_profiles: ${{vars.CARGO_PROFILES}}
docker_id: ${{vars.DOCKER_ID}}
cargo_profiles: '["test"]'
feat_sets: ${{vars.FEAT_SETS}}
machines: ${{vars.MACHINES}}
rust_targets: ${{vars.RUST_TARGETS}}
rust_toolchains: ${{vars.RUST_TOOLCHAINS}}
rust_toolchains: '["nightly"]'
sys_names: ${{vars.SYS_NAMES}}
sys_targets: ${{vars.SYS_TARGETS}}
sys_versions: ${{vars.SYS_VERSIONS}}

View File

@@ -7,20 +7,13 @@ on:
pull_request:
branches:
- "**"
workflow_dispatch:
inputs:
bake:
type: string
required: false
description: JSON Object of inputs passed to the environment
concurrency:
group: ${{github.workflow}}-${{github.ref}}
cancel-in-progress: true
env:
docker_id: ${{vars.DOCKER_ID}}
inputs: ${{github.event.inputs}}
jobs:
@@ -29,12 +22,12 @@ jobs:
uses: ./.github/workflows/base.yml
deps:
name: Dependencies
name: Deps
uses: ./.github/workflows/deps.yml
needs: [base]
lint:
name: Linting
name: Lint
uses: ./.github/workflows/lint.yml
needs: [deps]

View File

@@ -5,12 +5,11 @@ on:
jobs:
unit:
name: Unit Tests
name: Unit
uses: ./.github/workflows/bake.yml
with:
bake_targets: '["tests-unit"]'
cargo_profiles: ${{vars.CARGO_PROFILES}}
docker_id: ${{vars.DOCKER_ID}}
feat_sets: ${{vars.FEAT_SETS}}
machines: ${{vars.MACHINES}}
rust_targets: ${{vars.RUST_TARGETS}}
@@ -20,12 +19,11 @@ jobs:
sys_versions: ${{vars.SYS_VERSIONS}}
smoke:
name: Smoke Tests
name: Smoke
uses: ./.github/workflows/bake.yml
with:
bake_targets: '["tests-smoke"]'
cargo_profiles: ${{vars.CARGO_PROFILES}}
docker_id: ${{vars.DOCKER_ID}}
feat_sets: ${{vars.FEAT_SETS}}
machines: ${{vars.MACHINES}}
rust_targets: ${{vars.RUST_TARGETS}}
@@ -35,18 +33,19 @@ jobs:
sys_versions: ${{vars.SYS_VERSIONS}}
complement:
name: Compliance Tests
name: Compliance
needs: [smoke]
runs-on: ${{matrix.machine}}
concurrency: ${{matrix.feat_set}}-${{matrix.sys_name}}-${{matrix.sys_target}}-${{matrix.sys_version}}
#concurrency: ${{matrix.feat_set}}-${{matrix.sys_name}}-${{matrix.sys_target}}-${{matrix.sys_version}}
concurrency: complement-cant-walk-and-chew-bubblegum
strategy:
fail-fast: false
matrix:
cargo_profile: ${{fromJSON(vars.CARGO_PROFILES)}}
feat_set: ${{fromJSON(vars.FEAT_SETS)}}
cargo_profile: ${{fromJSON('["test"]')}}
feat_set: ${{fromJSON('["all"]')}}
machine: ${{fromJSON(vars.MACHINES)}}
rust_target: ${{fromJSON(vars.RUST_TARGETS)}}
rust_toolchain: ${{fromJSON(vars.RUST_TOOLCHAINS)}}
rust_toolchain: ${{fromJSON('["nightly"]')}}
sys_name: ${{fromJSON(vars.SYS_NAMES)}}
sys_target: ${{fromJSON(vars.SYS_TARGETS)}}
sys_version: ${{fromJSON(vars.SYS_VERSIONS)}}