Skip to content

Add release automation workflow - #15

Merged
ezqy merged 1 commit into
mainfrom
chore/release-workflow
Mar 10, 2026
Merged

Add release automation workflow#15
ezqy merged 1 commit into
mainfrom
chore/release-workflow

Conversation

@ezqy

@ezqy ezqy commented Mar 9, 2026

Copy link
Copy Markdown
Contributor

Summary

  • workflow_dispatch with version input + skip options for crates.io/Docker
  • Validates version against Cargo.toml and CHANGELOG.md before proceeding
  • Runs full CI (fmt, clippy, test, E2E) as gate
  • GitHub Release: auto-extracts changelog, creates tag + release
  • crates.io: cargo publish (skippable)
  • Docker: multi-arch (amd64/arm64) push to GHCR + Docker Hub (skippable)

Required secrets

Secret Purpose
CARGO_REGISTRY_TOKEN crates.io publish
DOCKERHUB_USERNAME Docker Hub login
DOCKERHUB_TOKEN Docker Hub login

GHCR uses the built-in GITHUB_TOKEN.

Test plan

  • YAML syntax valid
  • Dry-run with skip flags on next release

🤖 Generated with Claude Code

Adds a manual release workflow triggered via workflow_dispatch with:
- Version validation against Cargo.toml and CHANGELOG.md
- Full CI checks (fmt, clippy, test, E2E) before release
- GitHub Release with changelog extraction and git tag
- crates.io publish (skippable)
- Docker image push to GHCR + Docker Hub with multi-arch (amd64/arm64)

Requires secrets: CARGO_REGISTRY_TOKEN, DOCKERHUB_USERNAME, DOCKERHUB_TOKEN.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@ezqy
ezqy merged commit 12e4279 into main Mar 10, 2026
1 check passed
ezqy pushed a commit that referenced this pull request Mar 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant