28 lines
640 B
YAML
28 lines
640 B
YAML
# 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: docker
|
|
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
|