feat(ci): gitops image-update PR workflow for home-kubernetes #39

Merged
kacerr merged 1 commits from feat/gitops-pr-action into main 2026-06-12 19:31:52 +02:00
Owner

What

Adds .gitea/workflows/gitops-update.yaml — a new CI workflow that automatically opens a pull request against kacerr/home-kubernetes whenever the Go image of this app is successfully built and pushed.

How it works

  • Auto-trigger: workflow_run on Build and Push (completed + success) — fires on every tag push.
  • Manual trigger: workflow_dispatch with tag input, optional dry_run toggle, and optional uh_cli_version override.
  • Uses uh-cli gitops deployment update to locate the fuj-management Deployment (namespace fuj) in gitops/home-kubernetes, bump its image to the new <tag>-go tag, and open the PR.
  • tea and uh-cli are downloaded fresh from their Gitea releases on each run (hermetic, no custom runner image).

Prerequisites before merging / using

  1. Create GITOPS_TOKEN secret in this repo — a Gitea personal access token for kacerr with write + pull-request access to kacerr/home-kubernetes.
  2. Verify uh-cli v0.1.0 binary uh-cli-v0.1.0-linux-amd64 is attached to that Gitea release; if not, publish the release first.
  3. Confirm manifest path: --git-path gitops/home-kubernetes must contain the fuj-management Deployment. Use dry-run dispatch first to test.

Testing plan

  • workflow_dispatch with dry_run=true, tag=0.37 → confirm diff logged, no PR opened.
  • workflow_dispatch with dry_run=false → confirm PR opens in home-kubernetes.
  • Push new git tag → Build and Push completes → this workflow auto-fires.

🤖 Generated with Claude Code

## What Adds `.gitea/workflows/gitops-update.yaml` — a new CI workflow that automatically opens a pull request against `kacerr/home-kubernetes` whenever the Go image of this app is successfully built and pushed. ## How it works - **Auto-trigger**: `workflow_run` on `Build and Push` (completed + success) — fires on every tag push. - **Manual trigger**: `workflow_dispatch` with `tag` input, optional `dry_run` toggle, and optional `uh_cli_version` override. - Uses `uh-cli gitops deployment update` to locate the `fuj-management` Deployment (namespace `fuj`) in `gitops/home-kubernetes`, bump its image to the new `<tag>-go` tag, and open the PR. - `tea` and `uh-cli` are downloaded fresh from their Gitea releases on each run (hermetic, no custom runner image). ## Prerequisites before merging / using 1. **Create `GITOPS_TOKEN` secret** in this repo — a Gitea personal access token for `kacerr` with **write + pull-request** access to `kacerr/home-kubernetes`. 2. **Verify `uh-cli v0.1.0` binary** `uh-cli-v0.1.0-linux-amd64` is attached to that Gitea release; if not, publish the release first. 3. **Confirm manifest path**: `--git-path gitops/home-kubernetes` must contain the `fuj-management` Deployment. Use dry-run dispatch first to test. ## Testing plan - [ ] `workflow_dispatch` with `dry_run=true`, `tag=0.37` → confirm diff logged, no PR opened. - [ ] `workflow_dispatch` with `dry_run=false` → confirm PR opens in `home-kubernetes`. - [ ] Push new git tag → `Build and Push` completes → this workflow auto-fires. 🤖 Generated with [Claude Code](https://claude.ai/claude-code)
kacerr added 1 commit 2026-06-12 19:28:46 +02:00
feat(ci): add gitops-update workflow to open image-bump PR in home-kubernetes
All checks were successful
Deploy to K8s / deploy (push) Successful in 12s
995abfacb2
After a successful Go image build, uh-cli opens a PR against
kacerr/home-kubernetes that bumps the fuj-management Deployment
(namespace fuj) to the newly published image tag. Supports
workflow_run auto-trigger and workflow_dispatch with dry-run option.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
kacerr merged commit 1df1863725 into main 2026-06-12 19:31:52 +02:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: kacerr/fuj-management#39