combine helm image set and upgrade

This commit is contained in:
2026-05-29 12:10:03 -04:00
parent 67460d7eda
commit d40431fb35
7 changed files with 32 additions and 75 deletions
+6 -2
View File
@@ -3,7 +3,7 @@
<!-- action-docs-description source="action.yml" -->
## Description
Login to an OCI registry, update chart dependencies, and run helm upgrade for the chart in the current directory
Login to an OCI registry, update chart dependencies, and run helm upgrade
<!-- action-docs-description source="action.yml" -->
<!-- action-docs-inputs source="action.yml" -->
@@ -11,12 +11,16 @@ Login to an OCI registry, update chart dependencies, and run helm upgrade for th
| name | description | required | default |
| --- | --- | --- | --- |
| `DEPLOYMENT_NAME` | <p>The Helm release name and target namespace</p> | `true` | `""` |
| `DEPLOYMENT_NAME` | <p>The Helm release name</p> | `true` | `""` |
| `DEPLOYMENT_NAMESPACE` | <p>The Kubernetes namespace (defaults to DEPLOYMENT_NAME)</p> | `false` | `""` |
| `REGISTRY` | <p>OCI registry hostname for helm dependency login</p> | `true` | `""` |
| `REGISTRY_USERNAME` | <p>Username for OCI registry login</p> | `true` | `""` |
| `REGISTRY_TOKEN` | <p>Token for OCI registry login</p> | `true` | `""` |
| `CHART_PATH` | <p>Path to the Helm chart</p> | `false` | `./helm` |
| `VALUES_FILE` | <p>The values file to use</p> | `false` | `./helm/values.yaml` |
| `IMAGE_PATH` | <p>The registry path to the image (optional)</p> | `false` | `""` |
| `IMAGE_TAG` | <p>The image tag to deploy (optional)</p> | `false` | `""` |
| `TAG_KEY` | <p>Helm --set key for the image tag (e.g. deploy.api.tag)</p> | `false` | `""` |
<!-- action-docs-inputs source="action.yml" -->
<!-- action-docs-runs source="action.yml" -->
+25 -4
View File
@@ -1,9 +1,12 @@
name: Helm Upgrade
description: Login to an OCI registry, update chart dependencies, and run helm upgrade for the chart in the current directory
description: Login to an OCI registry, update chart dependencies, and run helm upgrade
inputs:
DEPLOYMENT_NAME:
description: "The Helm release name and target namespace"
description: "The Helm release name"
required: true
DEPLOYMENT_NAMESPACE:
description: "The Kubernetes namespace (defaults to DEPLOYMENT_NAME)"
default: ""
REGISTRY:
description: "OCI registry hostname for helm dependency login"
required: true
@@ -19,6 +22,15 @@ inputs:
VALUES_FILE:
description: "The values file to use"
default: "./helm/values.yaml"
IMAGE_PATH:
description: "The registry path to the image (optional)"
default: ""
IMAGE_TAG:
description: "The image tag to deploy (optional)"
default: ""
TAG_KEY:
description: "Helm --set key for the image tag (e.g. deploy.api.tag)"
default: ""
runs:
using: composite
@@ -33,9 +45,18 @@ runs:
- name: Helm Upgrade
shell: sh
run: |
NAMESPACE="${{ inputs.DEPLOYMENT_NAMESPACE }}"
if [ -z "$NAMESPACE" ]; then NAMESPACE="${{ inputs.DEPLOYMENT_NAME }}"; fi
SET_FLAGS=""
if [ -n "${{ inputs.TAG_KEY }}" ] && [ -n "${{ inputs.IMAGE_TAG }}" ]; then
SET_FLAGS="$SET_FLAGS --set ${{ inputs.TAG_KEY }}=${{ inputs.IMAGE_TAG }}"
fi
if [ -n "${{ inputs.IMAGE_PATH }}" ]; then
SET_FLAGS="$SET_FLAGS --set image.repository=${{ inputs.IMAGE_PATH }}"
fi
helm dependency update ${{ inputs.CHART_PATH }}
echo "Running: helm upgrade ${{ inputs.DEPLOYMENT_NAME }} ${{ inputs.CHART_PATH }} -n ${{ inputs.DEPLOYMENT_NAME }} --values ${{ inputs.VALUES_FILE }}"
helm upgrade ${{ inputs.DEPLOYMENT_NAME }} ${{ inputs.CHART_PATH }} -n ${{ inputs.DEPLOYMENT_NAME }} --values ${{ inputs.VALUES_FILE }}
echo "Running: helm upgrade ${{ inputs.DEPLOYMENT_NAME }} ${{ inputs.CHART_PATH }} -n ${NAMESPACE} --values ${{ inputs.VALUES_FILE }}${SET_FLAGS}"
helm upgrade ${{ inputs.DEPLOYMENT_NAME }} ${{ inputs.CHART_PATH }} -n ${NAMESPACE} --values ${{ inputs.VALUES_FILE }} $SET_FLAGS
- name: Remove kubeconfig
if: always()