Skip to content

Commit a9949fa

Browse files
committed
fix
1 parent fba8b11 commit a9949fa

File tree

2 files changed

+39
-56
lines changed

2 files changed

+39
-56
lines changed

.github/workflows/auto-spotless-apply.yml

Lines changed: 36 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -16,93 +16,76 @@ jobs:
1616
contents: write
1717
pull-requests: write
1818
steps:
19-
- id: download-patch
20-
name: Download patch
21-
uses: actions/[email protected]
19+
- name: Download patch
20+
uses: actions/[email protected]
2221
with:
23-
# this script copied from
24-
# https://docs.github.com/en/actions/writing-workflows/choosing-when-your-workflow-runs/events-that-trigger-workflows#using-data-from-the-triggering-workflow
25-
script: |
26-
let allArtifacts = await github.rest.actions.listWorkflowRunArtifacts({
27-
owner: context.repo.owner,
28-
repo: context.repo.repo,
29-
run_id: context.payload.workflow_run.id
30-
});
31-
let patchArtifact = allArtifacts.data.artifacts.filter((artifact) => {
32-
return artifact.name == "patch"
33-
})[0];
34-
if (!patchArtifact) {
35-
core.info('No patch to apply.');
36-
return;
37-
}
38-
let download = await github.rest.actions.downloadArtifact({
39-
owner: context.repo.owner,
40-
repo: context.repo.repo,
41-
artifact_id: patchArtifact.id,
42-
archive_format: 'zip'
43-
});
44-
const fs = require('fs');
45-
const path = require('path');
46-
const temp = '${{ runner.temp }}/artifacts';
47-
if (!fs.existsSync(temp)){
48-
fs.mkdirSync(temp);
49-
}
50-
fs.writeFileSync(path.join(temp, 'patch.zip'), Buffer.from(download.data));
51-
core.setOutput("exists", "true");
22+
run-id: ${{ github.event.workflow_run.id }}
23+
path: ${{ runner.temp }}
24+
merge-multiple: true
25+
github-token: ${{ github.token }}
5226

53-
- id: get-pr-number
54-
name: Get PR number
55-
uses: actions/[email protected]
56-
with:
57-
script: |
58-
const response = await github.request(context.payload.workflow_run.url);
59-
core.setOutput('pr-number', response.data.pull_requests[0].number);
60-
61-
- name: Unzip patch
62-
if: steps.download-patch.outputs.exists == 'true'
63-
working-directory: ${{ runner.temp }}/artifacts
64-
run: unzip patch.zip
27+
- id: unzip-patch
28+
name: Unzip patch
29+
working-directory: ${{ runner.temp }}
30+
run: |
31+
if [ -f patch ]; then
32+
echo "exists=true" >> $GITHUB_OUTPUT
33+
fi
6534
6635
- uses: actions/create-github-app-token@df432ceedc7162793a195dd1713ff69aefc7379e # v2.0.6
67-
if: steps.download-patch.outputs.exists == 'true'
36+
if: steps.unzip-patch.outputs.exists == 'true'
6837
id: otelbot-token
6938
with:
7039
app-id: 1295839
71-
private-key: ${{ secrets.OTELBOT_JAVA_CONTRIB_PRIVATE_KEY }}
40+
private-key: ${{ secrets.OTELBOT_JAVA_INSTRUMENTATION_PRIVATE_KEY }}
7241

7342
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
74-
if: steps.download-patch.outputs.exists == 'true'
43+
if: steps.unzip-patch.outputs.exists == 'true'
7544
with:
7645
token: ${{ steps.otelbot-token.outputs.token }}
7746

47+
- id: get-pr-number
48+
if: steps.unzip-patch.outputs.exists == 'true'
49+
name: Get PR number
50+
env:
51+
PR_BRANCH: |-
52+
${{
53+
(github.event.workflow_run.head_repository.owner.login != github.event.workflow_run.repository.owner.login)
54+
&& format('{0}:{1}', github.event.workflow_run.head_repository.owner.login, github.event.workflow_run.head_branch)
55+
|| github.event.workflow_run.head_branch
56+
}}
57+
GH_TOKEN: ${{ github.token }}
58+
run: |
59+
gh pr view "${PR_BRANCH}" --json 'number' --jq '"pr-number=\(.number)' >> $GITHUB_OUTPUT
60+
7861
- name: Check out PR branch
79-
if: steps.download-patch.outputs.exists == 'true'
62+
if: steps.unzip-patch.outputs.exists == 'true'
8063
env:
8164
GH_TOKEN: ${{ github.token }}
8265
run: gh pr checkout ${{ steps.get-pr-number.outputs.pr-number }}
8366

8467
- name: Use CLA approved github bot
85-
if: steps.download-patch.outputs.exists == 'true'
68+
if: steps.unzip-patch.outputs.exists == 'true'
8669
# IMPORTANT do not call the .github/scripts/use-cla-approved-bot.sh
8770
# since that script could have been compromised in the PR branch
8871
run: |
8972
git config user.name otelbot
9073
git config user.email [email protected]
9174
9275
- name: Apply patch and push
93-
if: steps.download-patch.outputs.exists == 'true'
76+
if: steps.unzip-patch.outputs.exists == 'true'
9477
run: |
95-
git apply "${{ runner.temp }}/artifacts/patch"
78+
git apply "${{ runner.temp }}/patch"
9679
git commit -a -m "./gradlew spotlessApply"
9780
git push
9881
99-
- if: steps.download-patch.outputs.exists == 'true' && success()
82+
- if: steps.unzip-patch.outputs.exists == 'true' && success()
10083
env:
10184
GH_TOKEN: ${{ steps.otelbot-token.outputs.token }}
10285
run: |
10386
gh pr comment ${{ steps.get-pr-number.outputs.pr-number }} --body "🔧 The result from spotlessApply was committed to the PR branch."
10487
105-
- if: steps.download-patch.outputs.exists == 'true' && failure()
88+
- if: steps.unzip-patch.outputs.exists == 'true' && failure()
10689
env:
10790
GH_TOKEN: ${{ steps.otelbot-token.outputs.token }}
10891
run: |

.github/workflows/auto-spotless-check.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,16 +37,16 @@ jobs:
3737
- name: Spotless
3838
run: ./gradlew spotlessApply
3939

40-
- id: create-patch-file
40+
- id: create-patch
4141
name: Create patch file
4242
run: |
4343
git diff > patch
4444
if [ -s patch ]; then
45-
echo "non-empty=true" >> "$GITHUB_OUTPUT"
45+
echo "exists=true" >> "$GITHUB_OUTPUT"
4646
fi
4747
4848
- name: Upload patch file
49-
if: steps.create-patch-file.outputs.non-empty == 'true'
49+
if: steps.create-patch.outputs.exists == 'true'
5050
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
5151
with:
5252
path: patch

0 commit comments

Comments
 (0)