This commit is contained in:
@@ -68,6 +68,8 @@ jobs:
|
||||
done
|
||||
done
|
||||
|
||||
git restore --staged ${{ gitea.workspace }}/clusters/$cluster/helm
|
||||
|
||||
# - name: Create Pull Request
|
||||
# id: pull-request
|
||||
# uses: peter-evans/create-pull-request@v7
|
||||
@@ -96,6 +98,7 @@ jobs:
|
||||
run: |
|
||||
if git status --porcelain | grep -q .; then
|
||||
echo ">> Changes detected"
|
||||
git status --porcelain
|
||||
echo "changes-detected=true" >> $GITEA_OUTPUT
|
||||
else
|
||||
echo ">> No changes detected, skipping PR creation"
|
||||
@@ -109,16 +112,19 @@ jobs:
|
||||
BRANCH_NAME="auto/update-manifests-$(date +%s)"
|
||||
|
||||
# Configure Git
|
||||
echo ">> Configure git to use gitea-bot as user ..."
|
||||
git config user.name "gitea-bot"
|
||||
git config user.email "gitea-bot@alexlebens.net"
|
||||
|
||||
# Create a new branch and stage all changes
|
||||
echo ">> Creating and commiting to $BRANCH_NAME ..."
|
||||
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 }}"
|
||||
echo ">> Pushing changes to $REPO_URL ..."
|
||||
git push -u "https://oauth2:${{ secrets.BOT_TOKEN }}@$(echo $REPO_URL | sed -e 's|https://||')" $BRANCH_NAME
|
||||
|
||||
echo "HEAD_BRANCH=$BRANCH_NAME" >> $GITEA_OUTPUT
|
||||
@@ -134,19 +140,37 @@ jobs:
|
||||
REPO: ${{ gitea.repository_name }}
|
||||
HEAD_BRANCH: ${{ steps.commit-push.outputs.HEAD_BRANCH }}
|
||||
run: |
|
||||
API_ENDPOINT="${GITEA_URL}/api/v1/repos/${OWNER}/${REPO}/pulls"
|
||||
|
||||
PAYLOAD=$(cat <<-EOF
|
||||
{
|
||||
"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.",
|
||||
}
|
||||
EOF
|
||||
)
|
||||
|
||||
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."
|
||||
curl -X POST \
|
||||
-H "Authorization: token ${GITEA_TOKEN}" \
|
||||
-H "Content-Type: application/json" \
|
||||
--data "${PAYLOAD}" \
|
||||
"${API_ENDPOINT}"
|
||||
|
||||
echo "pull-request-operation=created" >> $GITEA_OUTPUT
|
||||
|
||||
|
||||
- name: Cleanup Branch
|
||||
if: failure() && steps.create-pull-request.outcome == 'failure'
|
||||
env:
|
||||
HEAD_BRANCH: ${{ steps.commit-push.outputs.HEAD_BRANCH }}
|
||||
run: |
|
||||
echo ">> Removing branch: ${HEAD_BRANCH}"
|
||||
git push origin --delete ${HEAD_BRANCH}
|
||||
|
||||
# - name: ntfy Created
|
||||
# uses: niniyas/ntfy-action@master
|
||||
# if: steps.create-pull-request.outputs.pull-request-operation == 'created'
|
||||
|
||||
Reference in New Issue
Block a user