This commit is contained in:
@@ -12,6 +12,7 @@ on:
|
|||||||
|
|
||||||
env:
|
env:
|
||||||
CLUSTERS: cl01tl
|
CLUSTERS: cl01tl
|
||||||
|
BASE_BRANCH: manifests
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
render-manifests-helm:
|
render-manifests-helm:
|
||||||
@@ -30,7 +31,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Render Helm Manifests
|
- name: Render Helm Manifests
|
||||||
run: |
|
run: |
|
||||||
for cluster in $CLUSTERS; do
|
for cluster in ${CLUSTERS}; do
|
||||||
mkdir -p ${{ gitea.workspace }}/clusters/$cluster/manifests
|
mkdir -p ${{ gitea.workspace }}/clusters/$cluster/manifests
|
||||||
|
|
||||||
for chart_path in ${{ gitea.workspace }}/clusters/$cluster/helm/*; do
|
for chart_path in ${{ gitea.workspace }}/clusters/$cluster/helm/*; do
|
||||||
@@ -67,32 +68,88 @@ jobs:
|
|||||||
done
|
done
|
||||||
done
|
done
|
||||||
|
|
||||||
- name: Create Pull Request
|
# - name: Create Pull Request
|
||||||
id: pull-request
|
# id: pull-request
|
||||||
uses: peter-evans/create-pull-request@v7
|
# uses: peter-evans/create-pull-request@v7
|
||||||
with:
|
# with:
|
||||||
token: ${{ secrets.BOT_TOKEN }}
|
# token: ${{ secrets.BOT_TOKEN }}
|
||||||
add-paths: |
|
# add-paths: |
|
||||||
clusters/cl01tl/manifests/*
|
# clusters/cl01tl/manifests/*
|
||||||
commit-message: "chore: Update manifests after chart change"
|
# commit-message: "chore: Update manifests after chart change"
|
||||||
committer: gitea-bot <gitea-bot@alexlebens.net>
|
# committer: gitea-bot <gitea-bot@alexlebens.net>
|
||||||
author: gitea-bot <gitea-bot@alexlebens.net>
|
# author: gitea-bot <gitea-bot@alexlebens.net>
|
||||||
branch: auto/update-manifests
|
# branch: auto/update-manifests
|
||||||
branch-suffix: timestamp
|
# branch-suffix: timestamp
|
||||||
base: manifests
|
# base: manifests
|
||||||
title: "Manifest Update"
|
# title: "Manifest Update"
|
||||||
body: |
|
# body: |
|
||||||
This PR contains the newly rendered Kubernetes manifests.
|
# This PR contains the newly rendered Kubernetes manifests.
|
||||||
|
|
||||||
* Triggered by workflow run ${{ github.run_id }}
|
# * Triggered by workflow run ${{ github.run_id }}
|
||||||
* Review the `files changed` tab for the full YAML diff.
|
# * Review the `files changed` tab for the full YAML diff.
|
||||||
labels: |
|
# labels: |
|
||||||
manifests
|
# manifests
|
||||||
automated
|
# automated
|
||||||
|
|
||||||
|
- name: Check for Changes
|
||||||
|
id: check-changes
|
||||||
|
run: |
|
||||||
|
if git status --porcelain | grep -q .; then
|
||||||
|
echo ">> Changes detected"
|
||||||
|
echo "changes-detected=true" >> $GITEA_OUTPUT
|
||||||
|
else
|
||||||
|
echo ">> No changes detected, skipping PR creation"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
- name: Commit and Push Changes
|
||||||
|
id: commit-push
|
||||||
|
if: steps.check-changes.outputs.changes-detected == 'true'
|
||||||
|
run: |
|
||||||
|
BRANCH_NAME="auto/update-manifests-$(date +%s)"
|
||||||
|
|
||||||
|
# Configure Git
|
||||||
|
git config user.name "gitea-bot"
|
||||||
|
git config user.email "gitea-bot@alexlebens.net"
|
||||||
|
|
||||||
|
# Create a new branch and stage all changes
|
||||||
|
git checkout -b $BRANCH_NAME
|
||||||
|
git add .
|
||||||
|
git commit -m "chore: Update manifests after change"
|
||||||
|
|
||||||
|
# Push the new branch to the remote repository
|
||||||
|
REPO_URL="${{ secrets.REPO_URL }}/${{ gitea.repository }}"
|
||||||
|
git push -u "https://oauth2:${{ secrets.BOT_TOKEN }}@$(echo $REPO_URL | sed -e 's|https://||')" $BRANCH_NAME
|
||||||
|
|
||||||
|
echo "HEAD_BRANCH=$BRANCH_NAME" >> $GITEA_OUTPUT
|
||||||
|
echo "push=true" >> $GITEA_OUTPUT
|
||||||
|
|
||||||
|
- name: Create Pull Request
|
||||||
|
id: create-pull-request
|
||||||
|
if: steps.commit-push.outputs.push == 'true'
|
||||||
|
env:
|
||||||
|
GITEA_TOKEN: ${{ secrets.BOT_TOKEN }}
|
||||||
|
GITEA_URL: ${{ secrets.REPO_URL }}
|
||||||
|
OWNER: ${{ gitea.repository_owner }}
|
||||||
|
REPO: ${{ gitea.repository_name }}
|
||||||
|
HEAD_BRANCH: ${{ steps.commit-push.outputs.HEAD_BRANCH }}
|
||||||
|
run: |
|
||||||
|
echo ">> Creating PR from branch: ${HEAD_BRANCH} into ${BASE_BRANCH}"
|
||||||
|
|
||||||
|
apt update && apt install tea
|
||||||
|
|
||||||
|
tea pulls create \
|
||||||
|
--repo "${OWNER}/${REPO}" \
|
||||||
|
--head "${HEAD_BRANCH}" \
|
||||||
|
--base "${BASE_BRANCH}" \
|
||||||
|
--title "Automated Manifest Update: $(date +%F)" \
|
||||||
|
--body "This PR contains newly rendered Kubernetes manifests automatically generated by the CI workflow."
|
||||||
|
|
||||||
|
echo "pull-request-operation=created" >> $GITEA_OUTPUT
|
||||||
|
|
||||||
# - name: ntfy Created
|
# - name: ntfy Created
|
||||||
# uses: niniyas/ntfy-action@master
|
# uses: niniyas/ntfy-action@master
|
||||||
# if: steps.pull-request.outputs.pull-request-operation == 'created'
|
# if: steps.create-pull-request.outputs.pull-request-operation == 'created'
|
||||||
# with:
|
# with:
|
||||||
# url: "${{ secrets.NTFY_URL }}"
|
# url: "${{ secrets.NTFY_URL }}"
|
||||||
# topic: "${{ secrets.NTFY_TOPIC }}"
|
# topic: "${{ secrets.NTFY_TOPIC }}"
|
||||||
|
|||||||
Reference in New Issue
Block a user