Build web release workflow skill #2

Closed
opened 2026-06-24 19:52:37 -05:00 by erik · 2 comments
Owner

Goal

Create a reusable web-release skill and Forgejo workflow for slugkit.com that builds and publishes multi-platform Docker images to Docker Hub.

Requirements

  • Study the existing erikcraddock.me web deployment workflow as the reference pattern.
  • Add a web-release skill or workflow documentation suitable for this project.
  • Configure a Forgejo Actions workflow for forge.caradoc.com, not GitHub Actions-specific assumptions where Forgejo differs.
  • Build Docker images from the project Dockerfile.
  • Build both target platforms:
    • linux/amd64
    • linux/arm64
  • Push the published image to Docker Hub.
  • Use repository secrets or documented configuration for Docker Hub authentication.
  • Define a clear release trigger, such as version tags for web releases.
  • Document the Docker image name, required secrets, and release process.

Acceptance criteria

  • A Forgejo-compatible web release workflow exists in the repository.
  • The workflow builds linux/amd64 and linux/arm64 Docker images.
  • The workflow pushes the resulting image or manifest to Docker Hub.
  • Required Docker Hub secrets and setup steps are documented.
  • The release trigger and tag naming convention are documented.
  • The implementation is validated as far as practical without publishing an unintended release.

Dependencies

  • None
## Goal Create a reusable web-release skill and Forgejo workflow for `slugkit.com` that builds and publishes multi-platform Docker images to Docker Hub. ## Requirements - Study the existing `erikcraddock.me` web deployment workflow as the reference pattern. - Add a web-release skill or workflow documentation suitable for this project. - Configure a Forgejo Actions workflow for `forge.caradoc.com`, not GitHub Actions-specific assumptions where Forgejo differs. - Build Docker images from the project `Dockerfile`. - Build both target platforms: - `linux/amd64` - `linux/arm64` - Push the published image to Docker Hub. - Use repository secrets or documented configuration for Docker Hub authentication. - Define a clear release trigger, such as version tags for web releases. - Document the Docker image name, required secrets, and release process. ## Acceptance criteria - [ ] A Forgejo-compatible web release workflow exists in the repository. - [ ] The workflow builds `linux/amd64` and `linux/arm64` Docker images. - [ ] The workflow pushes the resulting image or manifest to Docker Hub. - [ ] Required Docker Hub secrets and setup steps are documented. - [ ] The release trigger and tag naming convention are documented. - [ ] The implementation is validated as far as practical without publishing an unintended release. ## Dependencies - None
erik 2026-06-24 20:42:17 -05:00
Author
Owner

Synced from todu comment by @todu on 2026-06-25T01:40:31.755Z

Close gate result

Readiness: READY

Acceptance criteria evidence:

  • Forgejo-compatible workflow exists: .forgejo/workflows/web-release.yml is present on main via merged PR #3 (da4ae3b).
  • Multi-platform builds: workflow uses Docker Buildx with platforms: linux/amd64,linux/arm64.
  • Docker Hub push: workflow uses docker/build-push-action@v6 with push: true and image evcraddock/slugkit-com.
  • Secrets/setup documented: docs/web-release.md and README document DOCKER_USERNAME, DOCKER_PASSWORD, and FORGE_CA_CERT_B64.
  • Release trigger/tag convention documented: workflow triggers on web-v*; docs specify web-v<major>.<minor>.<patch> and prerelease suffixes.
  • Validation without unintended release: docs include local validation commands and state not to push web-v* unless intending to publish; no release tag was pushed by this close gate.

PR #3 was approved, merged, and local main is fast-forwarded to origin/main at da4ae3b.

_Synced from todu comment by @todu on 2026-06-25T01:40:31.755Z_ ### Close gate result Readiness: READY Acceptance criteria evidence: - Forgejo-compatible workflow exists: `.forgejo/workflows/web-release.yml` is present on `main` via merged PR #3 (`da4ae3b`). - Multi-platform builds: workflow uses Docker Buildx with `platforms: linux/amd64,linux/arm64`. - Docker Hub push: workflow uses `docker/build-push-action@v6` with `push: true` and image `evcraddock/slugkit-com`. - Secrets/setup documented: `docs/web-release.md` and README document `DOCKER_USERNAME`, `DOCKER_PASSWORD`, and `FORGE_CA_CERT_B64`. - Release trigger/tag convention documented: workflow triggers on `web-v*`; docs specify `web-v<major>.<minor>.<patch>` and prerelease suffixes. - Validation without unintended release: docs include local validation commands and state not to push `web-v*` unless intending to publish; no release tag was pushed by this close gate. PR #3 was approved, merged, and local `main` is fast-forwarded to `origin/main` at `da4ae3b`.
Author
Owner

Synced from todu comment by @todu on 2026-06-25T01:37:21.554Z

Review update

  • PR: #3 is open with review artifacts posted.
  • Result: approved; all 6 acceptance criteria are covered by the workflow/docs diff.
  • Follow-up: waiting for explicit human merge approval before merging.
_Synced from todu comment by @todu on 2026-06-25T01:37:21.554Z_ ### Review update - PR: https://forge.caradoc.com/erik/slugkit.com/pulls/3 is open with review artifacts posted. - Result: approved; all 6 acceptance criteria are covered by the workflow/docs diff. - Follow-up: waiting for explicit human merge approval before merging.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
erik/slugkit.com#2
No description provided.