Skip to content

Commit 47a3f30

Browse files
bricefclaude
andcommitted
Add just release command for semver tagging
Usage: just release v0.1.2 Validates semver format, checks for clean working tree, creates an annotated tag, and pushes to origin. CI picks up the tag and builds Docker images tagged with the version. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent ef02b40 commit 47a3f30

1 file changed

Lines changed: 18 additions & 0 deletions

File tree

justfile

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,24 @@ run-test: seed
9494
tui-test:
9595
TASKFLOW_API_KEY=seed-admin-key-for-testing go run ./cmd/taskflow-tui
9696

97+
# Tag and push a release (e.g. just release v0.1.2)
98+
release tag:
99+
#!/usr/bin/env bash
100+
set -euo pipefail
101+
if [[ ! "{{tag}}" =~ ^v[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
102+
echo "Error: tag must be semver (e.g. v0.1.2)" >&2
103+
exit 1
104+
fi
105+
if [ -n "$(git status --porcelain)" ]; then
106+
echo "Error: working tree is dirty — commit or stash first" >&2
107+
exit 1
108+
fi
109+
echo "Tagging {{tag}}..."
110+
git tag -a "{{tag}}" -m "Release {{tag}}"
111+
echo "Pushing tag to origin..."
112+
git push origin "{{tag}}"
113+
echo "Done. CI will build and push docker.io/fractallambda/taskflow:{{tag}}"
114+
97115
# Clean build artifacts
98116
clean:
99117
rm -f taskflow taskflow-server taskflow-mcp *.db *.db-wal *.db-shm seed-admin-key.txt

0 commit comments

Comments
 (0)