Phase 5: scaffold Crucible (sow-tools) — dispatcher + builder shims, container, PR-first CI, fail-closed (D11, D19).

This commit is contained in:
2026-06-11 20:36:13 +02:00
commit 0d6eb2aeaa
28 changed files with 987 additions and 0 deletions
+30
View File
@@ -0,0 +1,30 @@
SHELL := bash
.ONESHELL:
.PHONY: check test vet build smoke fmt image
# Lint + unit tests. Mirrors the `test` CI job; runs green inside `nix develop`.
check: vet test
shellcheck scripts/*.sh
yamllint .gitea
vet:
go vet ./...
test:
go test ./...
# Build every cmd/* binary into ./bin (gitignored — binaries are CI artifacts).
build:
scripts/build-binaries.sh
smoke: build
scripts/crucible-smoke.sh
fmt:
gofmt -l -w cmd internal
# Build the Crucible image locally. Requires docker; mirrors build-image CI.
IMAGE ?= crucible
GIT_SHA ?= $(shell git rev-parse --short=12 HEAD 2>/dev/null || echo unknown)
image:
docker build --build-arg GIT_SHA=$(GIT_SHA) -f docker/Dockerfile -t $(IMAGE):$(GIT_SHA) .