From e234c8dc6655bcfda3a3438cb4b33bbde9baf17f Mon Sep 17 00:00:00 2001 From: Oreoluwa Agunbiade Date: Tue, 22 Oct 2024 11:39:13 -0600 Subject: [PATCH 1/2] Log rate limit --- action.yml | 32 ++++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/action.yml b/action.yml index 34e071a..25733ba 100644 --- a/action.yml +++ b/action.yml @@ -57,10 +57,28 @@ runs: } } + async function logRateLimitInfo(token) { + return fetch("https://api.github.com/rate_limit", { + method: "GET", + headers: { + Authorization: `token ${token}` + } + }) + .then(async response => { + const rateLimitRemaining = response.headers.get("x-ratelimit-remaining"); + console.log( + `Rate limit remaining: ${rateLimitRemaining}, ${process.env.PIPELINES_TOKEN_PATH}` + ); + const coreRateLimitInfo = (await response.json()).resources.core; + + console.log("Core rate limit info: %o", coreRateLimitInfo); + }) + .catch(e => console.log("Error fetching rate limit info: %o", e)); + const providerTokenResponse = await loginWithRetries(3) + const providerTokenJson = await providerTokenResponse.json() if (providerTokenResponse.ok) { - const providerTokenJson = await providerTokenResponse.json() const pipelinesTokenResponse = await fetch(`${apiBaseURL}/tokens/pat/${process.env.PIPELINES_TOKEN_PATH}`, { method: "GET", headers: { @@ -68,18 +86,21 @@ runs: } }) + const pipelinesTokenJson = await pipelinesTokenResponse.json() if (pipelinesTokenResponse.ok) { - const pipelinesTokenJson = await pipelinesTokenResponse.json() console.log("Setting PIPELINES_TOKEN to GitHubApp token") core.setOutput('PIPELINES_TOKEN', pipelinesTokenJson.token) - return + // TEMP: log rate limit info + await logRateLimitInfo(pipelinesTokenJson.token); + + return; } else { - console.log(`Failed to get pipelines token: ${pipelinesTokenResponse.status} ${pipelinesTokenResponse.statusText}`) + console.log(`Failed to get pipelines token: ${pipelinesTokenResponse.status} ${pipelinesTokenResponse.statusText} ${pipelinesTokenJson}`) } } else { - console.log(`Failed to get provider token: ${providerTokenResponse.status} ${providerTokenResponse.statusText}`) + console.log(`Failed to get provider token: ${providerTokenResponse.status} ${providerTokenResponse.statusText} ${providerTokenJson}`) } } catch (error) { @@ -97,4 +118,3 @@ runs: } core.setOutput('PIPELINES_TOKEN', process.env.FALLBACK_TOKEN) - From 6ec646eff65220b133b9dd281af0682ba80628eb Mon Sep 17 00:00:00 2001 From: Oreoluwa Agunbiade Date: Tue, 22 Oct 2024 12:06:16 -0600 Subject: [PATCH 2/2] Fix missing brace --- action.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/action.yml b/action.yml index 25733ba..e932477 100644 --- a/action.yml +++ b/action.yml @@ -74,6 +74,7 @@ runs: console.log("Core rate limit info: %o", coreRateLimitInfo); }) .catch(e => console.log("Error fetching rate limit info: %o", e)); + } const providerTokenResponse = await loginWithRetries(3)