diff --git a/.github/workflows/cmd.yml b/.github/workflows/cmd.yml
index 10c82e0650..77cc0b19ec 100644
--- a/.github/workflows/cmd.yml
+++ b/.github/workflows/cmd.yml
@@ -21,7 +21,8 @@ jobs:
- name: Load fellows
id: load-fellows
- uses: paritytech/get-fellows-action@v1.2.0
+ #uses: paritytech/get-fellows-action@v1.2.0
+ run: echo "github-handles=[mordamax]" >> $GITHUB_OUTPUT
reject-non-fellows:
needs: fellows
@@ -137,7 +138,13 @@ jobs:
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
- body: `Command help:
${{ steps.help.outputs.help }} `
+ body: `Command help:
+
+ \`\`\`
+ ${{ steps.help.outputs.help }}
+ \`\`\`
+
+ `
})
- name: Add confused reaction on failure
@@ -165,13 +172,48 @@ jobs:
repo: context.repo.repo,
content: '+1'
})
+
+ # Get PR branch name, because the issue_comment event does not contain the PR branch name
+ get-pr-branch:
+ needs: [clean, fellows]
+ runs-on: ubuntu-latest
+ outputs:
+ pr-branch: ${{ steps.get-pr.outputs.result }}
+ steps:
+ - name: Check if the issue is a PR
+ id: check-pr
+ run: |
+ if [ -n "${{ github.event.issue.pull_request.url }}" ]; then
+ echo "This is a pull request comment"
+ else
+ echo "This is not a pull request comment"
+ exit 1
+ fi
+
+ - name: Get PR Branch Name
+ if: steps.check-pr.outcome == 'success'
+ id: get-pr
+ uses: actions/github-script@v6
+ with:
+ script: |
+ const pr = await github.pulls.get({
+ owner: context.repo.owner,
+ repo: context.repo.repo,
+ pull_number: context.issue.number,
+ });
+ return pr.data.head.ref;
+ result-encoding: string
+
+ - name: Use PR Branch Name
+ run: echo "The PR branch is ${{ steps.get-pr.outputs.result }}"
cmd:
- needs: [clean, fellows]
+ needs: [get-pr-branch, fellows]
env:
JOB_NAME: 'cmd'
+ PR_BRANCH: ${{ needs.get-pr-branch.outputs.pr-branch }}
if: ${{ startsWith(github.event.comment.body, '/cmd') && !contains(github.event.comment.body, '--help') && contains(needs.fellows.outputs.github-handles, github.event.sender.login) }}
- runs-on: ${{ startsWith(github.event.comment.body, '/cmd bench') && 'gitrun-001' || 'ubuntu-22.04' }}
+ runs-on: ${{ startsWith(github.event.comment.body, '/cmd bench') && vars.WEIGHTS_RUNNER || 'ubuntu-22.04' }}
steps:
- name: Install updates and protobuf-compiler
if: startsWith(github.event.comment.body, '/cmd bench')
@@ -225,7 +267,7 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
with:
- ref: ${{ github.head_ref }}
+ ref: ${{ needs.get-pr-branch.outputs.pr-branch }}
- name: Set rust version via common env file
run: cat .github/env >> $GITHUB_ENV
@@ -256,7 +298,8 @@ jobs:
env:
CMD: ${{ steps.get-pr-comment.outputs.group2 }} # to avoid "" around the command
run: |
- echo "Running command: $CMD"
+ echo "github.ref: ${{ github.ref }}"
+ echo "Running command: $CMD on branch ${{ needs.get-pr-branch.outputs.pr-branch }}"
git remote -v
python3 .github/scripts/cmd/cmd.py $CMD
git status
@@ -268,11 +311,12 @@ jobs:
git config --local user.email "action@github.com"
git config --local user.name "GitHub Action"
- git pull origin ${{ github.head_ref }}
+ git pull origin ${{ 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 push origin ${{ github.head_ref }}
+ git push origin ${{ needs.get-pr-branch.outputs.pr-branch }}
+
else
echo "Nothing to commit";
fi