Files
sow-tools/.gitea/workflows/release.yml
T
archvillainetteandClaude Opus 4.8 8344a02d7a
build-image / build-image (push) Successful in 57s
test / test (push) Successful in 1m21s
release / release (push) Failing after 36s
ci: publish crucible image under deployment/ namespace
registry.westgate.pw/sow/crucible -> /deployment/crucible across build-image
+ release workflows, flake.nix image name, Dockerfile, docs.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-14 07:50:38 +02:00

39 lines
1.1 KiB
YAML

# Tag a Crucible release: re-tag the already-built immutable image and attach
# per-platform binary bundles. Tag-gated; never PR-triggered (deploy/release is
# not a PR concern, D7). The :<sha> image from build-image is the source of truth.
name: release
on:
push:
tags:
- "v*"
env:
REGISTRY: registry.westgate.pw
IMAGE: deployment/crucible
jobs:
release:
runs-on: nix-docker
steps:
- uses: actions/checkout@v4
with: { fetch-depth: 0 }
- name: Build release binaries
run: |
nix develop --command bash -c '
set -euo pipefail
GOOS=linux GOARCH=amd64 bash scripts/build-binaries.sh
mkdir -p dist
tar -C bin -czf "dist/crucible-linux-amd64-${GITHUB_REF_NAME}.tar.gz" .
'
- name: Upload release artifacts
uses: actions/upload-artifact@v4
with:
name: crucible-${{ github.ref_name }}
path: dist/*
# TODO(phase-6): re-tag registry.westgate.pw/deployment/crucible:<sha> as :<tag>
# and pin it from sow-platform releases/*.yml once the registry is live.