Skip to content

Commit a8eb140

Browse files
authored
Merge pull request #520 from myoung34/app_token_refresh
Refresh app tokens before deregistration
2 parents 99ddf3d + 3106b3b commit a8eb140

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

entrypoint.sh

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,19 @@ trap_with_arg() {
2222
deregister_runner() {
2323
echo "Caught $1 - Deregistering runner"
2424
if [[ -n "${ACCESS_TOKEN}" ]]; then
25+
# If using GitHub App authentication, refresh the access token before deregistration
26+
if [[ -n "${APP_ID}" ]] && [[ -n "${APP_PRIVATE_KEY}" ]] && [[ -n "${APP_LOGIN}" ]]; then
27+
echo "Refreshing access token for deregistration"
28+
nl="
29+
"
30+
NEW_ACCESS_TOKEN=$(APP_ID="${APP_ID}" APP_PRIVATE_KEY="${APP_PRIVATE_KEY//\\n/${nl}}" APP_LOGIN="${APP_LOGIN}" bash /app_token.sh)
31+
if [[ -z "${NEW_ACCESS_TOKEN}" ]] || [[ "${NEW_ACCESS_TOKEN}" == "null" ]]; then
32+
echo "ERROR: Failed to refresh access token for deregistration"
33+
exit 1
34+
fi
35+
ACCESS_TOKEN="${NEW_ACCESS_TOKEN}"
36+
echo "Access token refreshed successfully"
37+
fi
2538
_TOKEN=$(ACCESS_TOKEN="${ACCESS_TOKEN}" bash /token.sh)
2639
RUNNER_TOKEN=$(echo "${_TOKEN}" | jq -r .token)
2740
fi

0 commit comments

Comments
 (0)