eric 14162f55c2 fix: use heredoc for python3 to avoid shell quoting bugs
The previous python3 -c '...' approach broke when lambdas
contained single quotes (e.g. '"' + tag + '"'), causing
the bash string to terminate early and output literal text
instead of variable values.
2026-06-18 19:21:22 -07:00

actions-k8s

Reusable Gitea Actions for Kubernetes deployments.

flux-deploy

Update a Flux HelmRelease image tag in a GitOps repo to trigger a Kubernetes deployment.

Usage (standard bjw-s app-template)

- name: Deploy to K8s via Flux
  uses: https://git.ericxliu.me/eric/actions-k8s/.gitea/actions/flux-deploy@main
  with:
    image-repository: git.ericxliu.me/eric/my-app
    image-tag: ${{ steps.build.outputs.tag }}
    gitops-file: apps/myapp/my-app/release.yaml
    deploy-key: ${{ secrets.K8S_FLUX_DEPLOY_KEY }}

Usage (custom tag keys — e.g. YAML anchors)

For non-standard layouts where image tags are stored in custom keys (e.g. rustImageTag: &rustImageTag "2026-06-17-abc1234"):

- name: Deploy to K8s via Flux
  uses: https://git.ericxliu.me/eric/actions-k8s/.gitea/actions/flux-deploy@main
  with:
    image-tag: ${{ env.TAG }}
    tag-keys: rustImageTag,uiImageTag
    gitops-file: apps/myapp/stock-analyzer/release.yaml
    deploy-key: ${{ secrets.K8S_FLUX_DEPLOY_KEY }}

Inputs

Input Required Default Description
image-repository No "" Full image repository to set in repository: fields. Optional when using tag-keys.
image-tag Yes Image tag to deploy
tag-keys No tag Comma-separated YAML keys to update. Handles unquoted, quoted, and YAML anchor formats.
gitops-repo No git@github.com:eric-x-liu/k8s-flux.git SSH URL of the GitOps repo
gitops-file Yes Path to the release YAML in the GitOps repo
deploy-key Yes SSH private key with push access to the GitOps repo
git-user-name No gitops-ci Git commit author name
git-user-email No gitops-ci@users.noreply.git.ericxliu.me Git commit author email
commit-message No Update {app} image to {tag} Custom commit message with {app} and {tag} placeholders
S
Description
Reusable Gitea Actions for Kubernetes deployments via Flux GitOps
Readme 33 KiB