Compare commits

...

7 Commits

Author SHA1 Message Date
deac 98f5b830e2 Merge branch 'main' of ssh://gitea.pixelparasol.com:4122/pixel-parasol-public/gitea-actions
/ publish (push) Successful in 7s
2026-05-29 12:35:09 -04:00
deac 2b68567518 mask kubeconfig 2026-05-29 12:35:05 -04:00
gitea-actions 2a98963df8 chore: bump version [skip ci] 2026-05-29 16:30:56 +00:00
deac ea84f7e741 obfuscated kube contexts
/ publish (push) Successful in 7s
2026-05-29 12:30:47 -04:00
gitea-actions 62ee7dcb72 chore: bump version [skip ci] 2026-05-29 16:10:19 +00:00
deac 49a9d89b19 Merge branch 'main' of ssh://gitea.pixelparasol.com:4122/pixel-parasol-public/gitea-actions
/ publish (push) Successful in 7s
2026-05-29 12:10:08 -04:00
deac d40431fb35 combine helm image set and upgrade 2026-05-29 12:10:03 -04:00
9 changed files with 42 additions and 86 deletions
-1
View File
@@ -3,7 +3,6 @@ ACTIONS := \
node \ node \
git/create_tag \ git/create_tag \
helm/diff \ helm/diff \
helm/set_deployment_image \
helm/template \ helm/template \
helm/upgrade \ helm/upgrade \
infisical/fetch-secret \ infisical/fetch-secret \
+1 -2
View File
@@ -21,9 +21,8 @@ Reusable composite actions for Gitea CI/CD pipelines.
| Action | Description | | Action | Description |
|---|---| |---|---|
| [helm/diff](helm/diff/README.md) | Diff a Helm chart against a running deployment | | [helm/diff](helm/diff/README.md) | Diff a Helm chart against a running deployment |
| [helm/set_deployment_image](helm/set_deployment_image/README.md) | Set the image for a Kubernetes deployment via Helm |
| [helm/template](helm/template/README.md) | Render a Helm chart for a deployment | | [helm/template](helm/template/README.md) | Render a Helm chart for a deployment |
| [helm/upgrade](helm/upgrade/README.md) | Log in to an OCI registry and run `helm upgrade` for the chart in the current directory | | [helm/upgrade](helm/upgrade/README.md) | Log in to an OCI registry, update chart dependencies, and run `helm upgrade` |
### Infisical ### Infisical
+1 -1
View File
@@ -1 +1 @@
1.2.0 1.4.0
-1
View File
@@ -5,6 +5,5 @@ Composite actions for managing Helm chart deployments.
| action | description | | action | description |
| --- | --- | | --- | --- |
| [diff](diff/README.md) | Diff a Helm chart for a deployment in a Kubernetes cluster | | [diff](diff/README.md) | Diff a Helm chart for a deployment in a Kubernetes cluster |
| [set_deployment_image](set_deployment_image/README.md) | Set the image for a deployment in a Kubernetes cluster |
| [template](template/README.md) | Template a Helm chart for a deployment in a Kubernetes cluster | | [template](template/README.md) | Template a Helm chart for a deployment in a Kubernetes cluster |
| [upgrade](upgrade/README.md) | Login to an OCI registry, update chart dependencies, and run helm upgrade | | [upgrade](upgrade/README.md) | Login to an OCI registry, update chart dependencies, and run helm upgrade |
-28
View File
@@ -1,28 +0,0 @@
# Helm Upgrade Deployment Image
<!-- action-docs-description source="action.yml" -->
## Description
Set the image for a deployment in a Kubernetes
<!-- action-docs-description source="action.yml" -->
<!-- action-docs-inputs source="action.yml" -->
## Inputs
| name | description | required | default |
| --- | --- | --- | --- |
| `DEPLOYMENT_NAME` | <p>The Kubernetes Deployment to update</p> | `true` | `""` |
| `DEPLOYMENT_NAMESPACE` | <p>The Kubernetes namespace of the Deployment</p> | `true` | `""` |
| `IMAGE_PATH` | <p>The registry path to the image</p> | `true` | `""` |
| `IMAGE_TAG` | <p>The image tag to deploy</p> | `true` | `""` |
| `CONTAINER_NAME` | <p>The container component to update</p> | `true` | `""` |
| `VALUES_FILE` | <p>The values file to use</p> | `false` | `./helm/values.yaml` |
| `CHART_PATH` | <p>Path to the Helm chart</p> | `false` | `./helm` |
| `TAG_KEY` | <p>Helm --set key for the image tag (e.g. deploy.api.tag)</p> | `true` | `""` |
<!-- action-docs-inputs source="action.yml" -->
<!-- action-docs-runs source="action.yml" -->
## Runs
This action is a `composite` action.
<!-- action-docs-runs source="action.yml" -->
-37
View File
@@ -1,37 +0,0 @@
name: Helm Upgrade Deployment Image
description: Set the image for a deployment in a Kubernetes
inputs:
DEPLOYMENT_NAME:
description: "The Kubernetes Deployment to update"
required: true
DEPLOYMENT_NAMESPACE:
description: "The Kubernetes namespace of the Deployment"
required: true
IMAGE_PATH:
description: "The registry path to the image"
required: true
IMAGE_TAG:
description: "The image tag to deploy"
required: true
CONTAINER_NAME:
description: "The container component to update"
required: true
VALUES_FILE:
description: "The values file to use"
default: "./helm/values.yaml"
CHART_PATH:
description: "Path to the Helm chart"
default: "./helm"
TAG_KEY:
description: "Helm --set key for the image tag (e.g. deploy.api.tag)"
required: true
runs:
using: composite
steps:
- name: Helm Set Image
shell: sh
run: |
CMD="helm upgrade ${{ inputs.DEPLOYMENT_NAME }} ${{ inputs.CHART_PATH }} -n ${{ inputs.DEPLOYMENT_NAMESPACE }} --values ${{ inputs.VALUES_FILE }} --set ${TAG_KEY}=${{ inputs.IMAGE_TAG }} --set image.repository=${{ inputs.IMAGE_PATH }}"
echo "Running: $CMD"
eval "$CMD"
+6 -2
View File
@@ -3,7 +3,7 @@
<!-- action-docs-description source="action.yml" --> <!-- action-docs-description source="action.yml" -->
## Description ## 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-description source="action.yml" -->
<!-- action-docs-inputs 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 | | 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` | <p>OCI registry hostname for helm dependency login</p> | `true` | `""` |
| `REGISTRY_USERNAME` | <p>Username for OCI registry login</p> | `true` | `""` | | `REGISTRY_USERNAME` | <p>Username for OCI registry login</p> | `true` | `""` |
| `REGISTRY_TOKEN` | <p>Token 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` | | `CHART_PATH` | <p>Path to the Helm chart</p> | `false` | `./helm` |
| `VALUES_FILE` | <p>The values file to use</p> | `false` | `./helm/values.yaml` | | `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-inputs source="action.yml" -->
<!-- action-docs-runs source="action.yml" --> <!-- action-docs-runs source="action.yml" -->
+25 -4
View File
@@ -1,9 +1,12 @@
name: Helm Upgrade 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: inputs:
DEPLOYMENT_NAME: DEPLOYMENT_NAME:
description: "The Helm release name and target namespace" description: "The Helm release name"
required: true required: true
DEPLOYMENT_NAMESPACE:
description: "The Kubernetes namespace (defaults to DEPLOYMENT_NAME)"
default: ""
REGISTRY: REGISTRY:
description: "OCI registry hostname for helm dependency login" description: "OCI registry hostname for helm dependency login"
required: true required: true
@@ -19,6 +22,15 @@ inputs:
VALUES_FILE: VALUES_FILE:
description: "The values file to use" description: "The values file to use"
default: "./helm/values.yaml" 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: runs:
using: composite using: composite
@@ -33,9 +45,18 @@ runs:
- name: Helm Upgrade - name: Helm Upgrade
shell: sh shell: sh
run: | 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 }} helm dependency update ${{ inputs.CHART_PATH }}
echo "Running: 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 ${{ inputs.DEPLOYMENT_NAME }} --values ${{ inputs.VALUES_FILE }} helm upgrade ${{ inputs.DEPLOYMENT_NAME }} ${{ inputs.CHART_PATH }} -n ${NAMESPACE} --values ${{ inputs.VALUES_FILE }} $SET_FLAGS
- name: Remove kubeconfig - name: Remove kubeconfig
if: always() if: always()
+9 -10
View File
@@ -14,20 +14,19 @@ inputs:
runs: runs:
using: composite using: composite
steps: steps:
- name: Mask kubeconfig
shell: sh
run: echo "::add-mask::${{ inputs.K8S_CONFIG }}"
- name: Configure kubectl - name: Configure kubectl
shell: sh shell: sh
env:
K8S_CONFIG: ${{ inputs.K8S_CONFIG }}
run: | run: |
echo "Remove existing kubeconfig" echo "Configuring kubectl for context=${{ inputs.K8S_CONTEXT }} namespace=${{ inputs.K8S_NAMESPACE }}"
rm -f ~/.kube/config rm -f ~/.kube/config
echo "Re-creating .kube directory"
mkdir -p ~/.kube mkdir -p ~/.kube
printf '%s' "$K8S_CONFIG" > ~/.kube/config
echo "Set kubeconfig"
echo "${{ inputs.K8S_CONFIG }}" > ~/.kube/config
echo "Set kubeconfig context"
kubectl config set-context ${{ inputs.K8S_CONTEXT }} --cluster=${{ inputs.K8S_CONTEXT }} --namespace=${{ inputs.K8S_NAMESPACE }} kubectl config set-context ${{ inputs.K8S_CONTEXT }} --cluster=${{ inputs.K8S_CONTEXT }} --namespace=${{ inputs.K8S_NAMESPACE }}
echo "Use kubeconfig context ${{ inputs.K8S_CONTEXT }}"
kubectl config use-context ${{ inputs.K8S_CONTEXT }} kubectl config use-context ${{ inputs.K8S_CONTEXT }}
echo "kubectl configured successfully"