# Lint + unit tests for the Crucible suite. PR-first: PRs + push to main (D7). name: test on: push: branches: [main] pull_request: jobs: test: runs-on: ovh-main container: image: nixos/nix:latest steps: - uses: actions/checkout@v4 with: { fetch-depth: 0 } - name: vet + test + lint run: | nix develop --command bash -c ' set -euo pipefail go vet ./... go test ./... shellcheck scripts/*.sh yamllint .gitea ' - name: binary smoke (fail-closed contract) run: nix develop --command make smoke