Compare commits
15 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 32c1f3a450 | |||
| b865730722 | |||
| 8682100cc6 | |||
| 5bad734c75 | |||
| 0343b2d9ee | |||
| 1c100f1c6b | |||
| bee206bec1 | |||
| e4b3d06e1d | |||
| 7408d8effb | |||
| 274ab32e2a | |||
| ce87523597 | |||
| 25710206d5 | |||
| c705885dda | |||
| 783d307998 | |||
| 06397c2b57 |
@@ -8,6 +8,11 @@ on:
|
||||
- "clusters/**"
|
||||
- ! "clusters/*/archive"
|
||||
|
||||
workflow_dispatch:
|
||||
|
||||
env:
|
||||
CLUSTERS: cl01tl
|
||||
|
||||
jobs:
|
||||
render-manifests-helm:
|
||||
runs-on: ubuntu-js
|
||||
@@ -24,38 +29,55 @@ jobs:
|
||||
uses: azure/setup-helm@v4
|
||||
with:
|
||||
token: ${{ secrets.GITEA_TOKEN }}
|
||||
version: latest
|
||||
version: v3.17.2 # Pending https://github.com/helm/helm/pull/30743
|
||||
|
||||
- name: Render Helm Manifests
|
||||
env:
|
||||
CLUSTERS: cl01tl
|
||||
run: |
|
||||
for cluster in $CLUSTERS; do
|
||||
mkdir clusters/$CLUSTER/manifests
|
||||
mkdir -p ${{ gitea.workspace }}/clusters/$cluster/manifests
|
||||
|
||||
for chart_path in clusters/$CLUSTER/helm/; do
|
||||
chart_name=$(basename "$chart")
|
||||
for chart_path in ${{ gitea.workspace }}/clusters/$cluster/helm/*; do
|
||||
chart_name=$(basename "$chart_path")
|
||||
|
||||
echo "--- Rendering chart: $chart_name ---"
|
||||
echo ">> Rendering chart: $chart_name"
|
||||
|
||||
if [ -f "$chart_path/Chart.yaml" ]; then
|
||||
OUTPUT_FILE="clusters/$CLUSTER/manifests/$chart_name.yaml"
|
||||
mkdir -p ${{ gitea.workspace }}/clusters/$cluster/manifests/$chart_name
|
||||
OUTPUT_FILE="${{ gitea.workspace }}/clusters/$cluster/manifests/$chart_name/$chart_name.yaml"
|
||||
|
||||
helm template "$chart_name" "$chart" --namespace "$chart_name" > "$OUTPUT_FILE"
|
||||
cd $chart_path
|
||||
|
||||
echo "Manifests for $chart_name rendered to $OUTPUT_FILE"
|
||||
echo ""
|
||||
echo ">> Building helm dependency ..."
|
||||
helm dependency build
|
||||
|
||||
echo ""
|
||||
echo ">> Linting helm ..."
|
||||
helm lint --namespace "$chart_name" --with-subcharts
|
||||
|
||||
echo ""
|
||||
echo ">> Rendering templates ..."
|
||||
helm template "$chart_name" ./ --namespace "$chart_name" --include-crds > "$OUTPUT_FILE"
|
||||
|
||||
echo ""
|
||||
echo ">> Manifests for $chart_name rendered to $OUTPUT_FILE"
|
||||
echo ""
|
||||
else
|
||||
echo "Directory $chart_path does not contain a Chart.yaml. Skipping ..."
|
||||
echo ""
|
||||
echo ">> Directory $chart_path does not contain a Chart.yaml. Skipping ..."
|
||||
echo ""
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
- name: Create Pull Request
|
||||
id: pull-request
|
||||
uses: peter-evans/create-pull-request@v7
|
||||
with:
|
||||
token: ${{ secrets.GITEA_TOKEN }}
|
||||
token: ${{ secrets.BOT_TOKEN }}
|
||||
commit-message: "chore: Update manifests after chart change"
|
||||
branch: auto/update-manifests
|
||||
branch-suffix: timestamp
|
||||
base: manifests
|
||||
title: "Manifest Update: App Changes"
|
||||
body: |
|
||||
@@ -63,19 +85,23 @@ jobs:
|
||||
|
||||
* Triggered by workflow run ${{ github.run_id }}
|
||||
* Review the `files changed` tab for the full YAML diff.
|
||||
add-paths: "clusters/*/rendered-manifests/"
|
||||
labels: |
|
||||
manifests
|
||||
automated
|
||||
add-paths: |
|
||||
clusters/cl01tl/manifests/*
|
||||
|
||||
- name: ntfy Success
|
||||
- name: ntfy Created
|
||||
uses: niniyas/ntfy-action@master
|
||||
if: success()
|
||||
if: steps.pull-request.outputs.pull-request-operation == 'created'
|
||||
with:
|
||||
url: "${{ secrets.NTFY_URL }}"
|
||||
topic: "${{ secrets.NTFY_TOPIC }}"
|
||||
title: "Manifest Render Success - Infrastructure"
|
||||
title: "Manifest Render PR Created - Infrastructure"
|
||||
priority: 3
|
||||
headers: '{"Authorization": "Bearer ${{ secrets.NTFY_CRED }}"}'
|
||||
tags: action,successfully,completed
|
||||
details: "Manifest rendering for Infrastructure has succeeded"
|
||||
details: "Manifest rendering for Infrastructure has created PR ${{ steps.pull-request.outputs.pull-request-number }}!"
|
||||
icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/png/gitea.png"
|
||||
|
||||
- name: ntfy Failed
|
||||
|
||||
Reference in New Issue
Block a user