Skip to content

Add release pipeline + bump workspace version to 0.3.0#50

Merged
powderluv merged 1 commit into
mainfrom
users/powderluv/release-pipeline
Apr 28, 2026
Merged

Add release pipeline + bump workspace version to 0.3.0#50
powderluv merged 1 commit into
mainfrom
users/powderluv/release-pipeline

Conversation

@powderluv

Copy link
Copy Markdown
Collaborator

Summary

Two changes prepping for the v0.3.0 release:

  1. .github/workflows/release.yml — new release pipeline modeled on spur's, triggered on v* tag push or workflow_dispatch.
  2. Cargo workspace version bumped 0.1.0 → 0.3.0 to match the upcoming release tag.

Release pipeline

Job Runs on Output
build-binary ubuntu-22.04 (glibc 2.35) target/release/spur-cloud-api
build-frontend ubuntu-latest, Node 20 frontend/dist/
package ubuntu-latest spur-cloud-{tag}-linux-amd64.tar.gz + sha256
verify matrix: ubuntu 22.04 / 24.04 / debian 12 --help smoke test
docker-images ubuntu-latest ghcr.io/<owner>/spur-cloud-{api,frontend}:{tag,latest}
release ubuntu-latest GitHub release with tarball + auto-generated notes

Tarball layout:

spur-cloud-vX.Y.Z-linux-amd64/
├── bin/spur-cloud-api
├── frontend/         # Vite dist (static assets)
├── etc/spur-cloud.toml.example
├── deploy/docker/    # Dockerfiles + entrypoint
├── deploy/k8s/       # K8s manifests
├── README.md
└── LICENSE

ghcr.io publishing uses the auto-provisioned GITHUB_TOKEN — no extra secrets needed. Both :{tag} and :latest are tagged.

Test plan

  • Trigger workflow_dispatch on this PR branch with a test tag — confirm artifacts produced and Docker images published. (Will be exercised when v0.3.0 is pushed.)

🤖 Generated with Claude Code

Adds a release workflow modeled on the spur repo:
- Triggered on `v*` tag push or `workflow_dispatch`
- Builds spur-cloud-api on Ubuntu 22.04 (glibc 2.35 → portable to 22.04+)
- Builds the Vite frontend
- Packages a `spur-cloud-{tag}-linux-amd64.tar.gz` containing the
  binary, frontend dist, deploy/docker manifests, deploy/k8s manifests,
  README, LICENSE, and an example config
- Smoke-tests `spur-cloud-api --help` on Ubuntu 22.04, 24.04, Debian 12
- Builds and pushes Docker images for the API and frontend to
  `ghcr.io/<owner>/spur-cloud-{api,frontend}:<tag>` (and `:latest`)
- Creates a GitHub release with auto-generated notes and the tarball

Bumps workspace version 0.1.0 → 0.3.0 to align with the upcoming
release tag (matches the release naming pattern; spur-cloud was at
v0.1.3 in tagged releases but the workspace version has not been
bumped before).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@powderluv
powderluv merged commit be5909c into main Apr 28, 2026
5 checks passed
@powderluv
powderluv deleted the users/powderluv/release-pipeline branch April 28, 2026 20:13
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