Skip to content

Commit d289462

Browse files
committed
Fall back when CodeBoarding app token is unavailable
1 parent df1810a commit d289462

1 file changed

Lines changed: 28 additions & 8 deletions

File tree

.github/workflows/codeboarding.yml

Lines changed: 28 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -40,21 +40,41 @@ jobs:
4040
id: codeboarding-app-config
4141
shell: bash
4242
env:
43+
CLIENT_ID: ${{ vars.CODEBOARDING_APP_CLIENT_ID }}
4344
APP_ID: ${{ vars.CODEBOARDING_APP_ID }}
4445
PRIVATE_KEY: ${{ secrets.CODEBOARDING_APP_PRIVATE_KEY }}
4546
run: |
46-
if [ -n "$APP_ID" ] && [ -n "$PRIVATE_KEY" ]; then
47-
echo "enabled=true" >> "$GITHUB_OUTPUT"
48-
else
49-
echo "enabled=false" >> "$GITHUB_OUTPUT"
50-
fi
47+
[ -n "$CLIENT_ID" ] && echo "has_client_id=true" >> "$GITHUB_OUTPUT" || echo "has_client_id=false" >> "$GITHUB_OUTPUT"
48+
[ -n "$APP_ID" ] && echo "has_app_id=true" >> "$GITHUB_OUTPUT" || echo "has_app_id=false" >> "$GITHUB_OUTPUT"
49+
[ -n "$PRIVATE_KEY" ] && echo "has_private_key=true" >> "$GITHUB_OUTPUT" || echo "has_private_key=false" >> "$GITHUB_OUTPUT"
50+
- uses: actions/create-github-app-token@v3
51+
id: codeboarding-app-token-client
52+
if: steps.codeboarding-app-config.outputs.has_client_id == 'true' && steps.codeboarding-app-config.outputs.has_private_key == 'true'
53+
continue-on-error: true
54+
with:
55+
client-id: ${{ vars.CODEBOARDING_APP_CLIENT_ID }}
56+
private-key: ${{ secrets.CODEBOARDING_APP_PRIVATE_KEY }}
5157
- uses: actions/create-github-app-token@v3
52-
id: codeboarding-app-token
53-
if: steps.codeboarding-app-config.outputs.enabled == 'true'
58+
id: codeboarding-app-token-app
59+
if: steps.codeboarding-app-config.outputs.has_client_id != 'true' && steps.codeboarding-app-config.outputs.has_app_id == 'true' && steps.codeboarding-app-config.outputs.has_private_key == 'true'
60+
continue-on-error: true
5461
with:
5562
app-id: ${{ vars.CODEBOARDING_APP_ID }}
5663
private-key: ${{ secrets.CODEBOARDING_APP_PRIVATE_KEY }}
64+
- name: Select CodeBoarding comment token
65+
id: codeboarding-comment-token
66+
shell: bash
67+
env:
68+
APP_TOKEN: ${{ steps.codeboarding-app-token-client.outputs.token || steps.codeboarding-app-token-app.outputs.token }}
69+
run: |
70+
if [ -n "$APP_TOKEN" ]; then
71+
echo "token=$APP_TOKEN" >> "$GITHUB_OUTPUT"
72+
echo "Using CodeBoarding GitHub App token for PR comments."
73+
else
74+
echo "token=${{ github.token }}" >> "$GITHUB_OUTPUT"
75+
echo "::warning::CodeBoarding GitHub App token is unavailable; falling back to github-actions[bot]. Check CODEBOARDING_APP_PRIVATE_KEY formatting if app credentials are configured."
76+
fi
5777
- uses: ./
5878
with:
59-
github_token: ${{ steps.codeboarding-app-token.outputs.token || github.token }}
79+
github_token: ${{ steps.codeboarding-comment-token.outputs.token }}
6080
llm_api_key: ${{ secrets.OPENROUTER_API_KEY }}

0 commit comments

Comments
 (0)