Skip to content
Snippets Groups Projects
Unverified Commit c808a009 authored by Maksym H's avatar Maksym H Committed by GitHub
Browse files

Let cmd bot to trigger ci on commit (#6813)

Fixes: https://github.com/paritytech/ci_cd/issues/1079
Improvements:
- switch to github native token creation action
- refresh branch in CI from HEAD, to prevent failure
- add APP token when pushing, to allow CI to be retriggering by bot
parent 311ea438
No related merge requests found
Pipeline #508848 waiting for manual action with stages
in 38 minutes and 14 seconds
......@@ -19,10 +19,10 @@ jobs:
steps:
- name: Generate token
id: generate_token
uses: tibdex/github-app-token@v2.1.0
uses: actions/create-github-app-token@v1
with:
app_id: ${{ secrets.CMD_BOT_APP_ID }}
private_key: ${{ secrets.CMD_BOT_APP_KEY }}
app-id: ${{ secrets.CMD_BOT_APP_ID }}
private-key: ${{ secrets.CMD_BOT_APP_KEY }}
- name: Check if user is a member of the organization
id: is-member
......@@ -292,9 +292,17 @@ jobs:
image: ${{ needs.set-image.outputs.IMAGE }}
timeout-minutes: 1440 # 24 hours per runtime
steps:
- name: Generate token
uses: actions/create-github-app-token@v1
id: generate_token
with:
app-id: ${{ secrets.CMD_BOT_APP_ID }}
private-key: ${{ secrets.CMD_BOT_APP_KEY }}
- name: Checkout
uses: actions/checkout@v4
with:
token: ${{ steps.generate_token.outputs.token }}
repository: ${{ needs.get-pr-branch.outputs.repo }}
ref: ${{ needs.get-pr-branch.outputs.pr-branch }}
......@@ -395,16 +403,30 @@ jobs:
- name: Commit changes
run: |
if [ -n "$(git status --porcelain)" ]; then
git config --local user.email "action@github.com"
git config --local user.name "GitHub Action"
git config --global user.name command-bot
git config --global user.email "<>"
git config --global pull.rebase false
# Push the results to the target branch
git remote add \
github \
"https://token:${{ steps.generate_token.outputs.token }}@github.com/${{ github.event.repository.owner.login }}/${{ github.event.repository.name }}.git" || :
push_changes() {
git push github "HEAD:${{ needs.get-pr-branch.outputs.pr-branch }}"
}
git add .
git restore --staged Cargo.lock # ignore changes in Cargo.lock
git commit -m "Update from ${{ github.actor }} running command '${{ steps.get-pr-comment.outputs.group2 }}'" || true
git pull --rebase origin ${{ needs.get-pr-branch.outputs.pr-branch }}
git push origin ${{ needs.get-pr-branch.outputs.pr-branch }}
# Attempt to push changes
if ! push_changes; then
echo "Push failed, trying to rebase..."
git pull --rebase github "${{ needs.get-pr-branch.outputs.pr-branch }}"
# After successful rebase, try pushing again
push_changes
fi
else
echo "Nothing to commit";
fi
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment