mirror of
https://github.com/actions/github-script.git
synced 2026-01-08 18:03:06 +00:00
Compare commits
13 Commits
dependabot
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
450193c5ab | ||
|
|
b67a972797 | ||
|
|
c0078b2072 | ||
|
|
c36bdc0a3a | ||
|
|
b588811d63 | ||
|
|
135f4fc944 | ||
|
|
8a9be95424 | ||
|
|
728b23b52d | ||
|
|
f80dad6b51 | ||
|
|
baada7bb39 | ||
|
|
d053ab3e3c | ||
|
|
4389015762 | ||
|
|
6599b4813b |
2
.github/workflows/integration.yml
vendored
2
.github/workflows/integration.yml
vendored
@@ -167,7 +167,7 @@ jobs:
|
||||
exit 1
|
||||
fi
|
||||
echo "- Validating user-agent set to an empty string"
|
||||
expected="octokit-core.js/"
|
||||
expected="actions/github-script octokit-core.js/"
|
||||
if [[ "${{steps.user-agent-empty.outputs.result}}" != "$expected"* ]]; then
|
||||
echo $'::error::\u274C' "Expected user-agent to start with '$expected', got ${{steps.user-agent-empty.outputs.result}}"
|
||||
exit 1
|
||||
|
||||
18
dist/index.js
vendored
18
dist/index.js
vendored
@@ -36267,9 +36267,11 @@ async function main() {
|
||||
const retries = parseInt(core.getInput('retries'));
|
||||
const exemptStatusCodes = parseNumberArray(core.getInput('retry-exempt-status-codes'));
|
||||
const [retryOpts, requestOpts] = getRetryOptions(retries, exemptStatusCodes, utils.defaults);
|
||||
const baseUserAgent = userAgent || 'actions/github-script';
|
||||
const finalUserAgent = getUserAgentWithOrchestrationId(baseUserAgent);
|
||||
const opts = {
|
||||
log: debug ? console : undefined,
|
||||
userAgent: userAgent || undefined,
|
||||
userAgent: finalUserAgent,
|
||||
previews: previews ? previews.split(',') : undefined,
|
||||
retry: retryOpts,
|
||||
request: requestOpts
|
||||
@@ -36313,6 +36315,20 @@ function handleError(err) {
|
||||
console.error(err);
|
||||
core.setFailed(`Unhandled error: ${err}`);
|
||||
}
|
||||
/**
|
||||
* Gets the user agent string with orchestration ID appended if available
|
||||
* @param userAgent The base user agent string
|
||||
* @returns The user agent string with orchestration ID appended if ACTIONS_ORCHESTRATION_ID is set
|
||||
*/
|
||||
function getUserAgentWithOrchestrationId(userAgent) {
|
||||
const orchestrationId = process.env['ACTIONS_ORCHESTRATION_ID'];
|
||||
if (!orchestrationId) {
|
||||
return userAgent;
|
||||
}
|
||||
// Sanitize orchestration ID - replace invalid characters with underscore
|
||||
const sanitized = orchestrationId.replace(/[^a-zA-Z0-9._-]/g, '_');
|
||||
return `${userAgent} actions_orchestration_id/${sanitized}`;
|
||||
}
|
||||
|
||||
})();
|
||||
|
||||
|
||||
14
package-lock.json
generated
14
package-lock.json
generated
@@ -23,7 +23,7 @@
|
||||
"@types/jest": "^29.5.5",
|
||||
"@typescript-eslint/eslint-plugin": "^6.7.5",
|
||||
"@typescript-eslint/parser": "^6.7.5",
|
||||
"@vercel/ncc": "^0.38.4",
|
||||
"@vercel/ncc": "^0.38.0",
|
||||
"eslint": "^8.51.0",
|
||||
"eslint-config-prettier": "^9.0.0",
|
||||
"eslint-plugin-prettier": "^5.0.1",
|
||||
@@ -1942,9 +1942,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@vercel/ncc": {
|
||||
"version": "0.38.4",
|
||||
"resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.38.4.tgz",
|
||||
"integrity": "sha512-8LwjnlP39s08C08J5NstzriPvW1SP8Zfpp1BvC2sI35kPeZnHfxVkCwu4/+Wodgnd60UtT1n8K8zw+Mp7J9JmQ==",
|
||||
"version": "0.38.0",
|
||||
"resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.38.0.tgz",
|
||||
"integrity": "sha512-B4YKZMm/EqMptKSFyAq4q2SlgJe+VCmEH6Y8gf/E1pTlWbsUJpuH1ymik2Ex3aYO5mCWwV1kaSYHSQOT8+4vHA==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"ncc": "dist/ncc/cli.js"
|
||||
@@ -8822,9 +8822,9 @@
|
||||
}
|
||||
},
|
||||
"@vercel/ncc": {
|
||||
"version": "0.38.4",
|
||||
"resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.38.4.tgz",
|
||||
"integrity": "sha512-8LwjnlP39s08C08J5NstzriPvW1SP8Zfpp1BvC2sI35kPeZnHfxVkCwu4/+Wodgnd60UtT1n8K8zw+Mp7J9JmQ==",
|
||||
"version": "0.38.0",
|
||||
"resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.38.0.tgz",
|
||||
"integrity": "sha512-B4YKZMm/EqMptKSFyAq4q2SlgJe+VCmEH6Y8gf/E1pTlWbsUJpuH1ymik2Ex3aYO5mCWwV1kaSYHSQOT8+4vHA==",
|
||||
"dev": true
|
||||
},
|
||||
"acorn": {
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
"@types/jest": "^29.5.5",
|
||||
"@typescript-eslint/eslint-plugin": "^6.7.5",
|
||||
"@typescript-eslint/parser": "^6.7.5",
|
||||
"@vercel/ncc": "^0.38.4",
|
||||
"@vercel/ncc": "^0.38.0",
|
||||
"eslint": "^8.51.0",
|
||||
"eslint-config-prettier": "^9.0.0",
|
||||
"eslint-plugin-prettier": "^5.0.1",
|
||||
|
||||
22
src/main.ts
22
src/main.ts
@@ -39,9 +39,12 @@ async function main(): Promise<void> {
|
||||
defaultGitHubOptions
|
||||
)
|
||||
|
||||
const baseUserAgent = userAgent || 'actions/github-script'
|
||||
const finalUserAgent = getUserAgentWithOrchestrationId(baseUserAgent)
|
||||
|
||||
const opts: Options = {
|
||||
log: debug ? console : undefined,
|
||||
userAgent: userAgent || undefined,
|
||||
userAgent: finalUserAgent,
|
||||
previews: previews ? previews.split(',') : undefined,
|
||||
retry: retryOpts,
|
||||
request: requestOpts
|
||||
@@ -96,3 +99,20 @@ function handleError(err: any): void {
|
||||
console.error(err)
|
||||
core.setFailed(`Unhandled error: ${err}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the user agent string with orchestration ID appended if available
|
||||
* @param userAgent The base user agent string
|
||||
* @returns The user agent string with orchestration ID appended if ACTIONS_ORCHESTRATION_ID is set
|
||||
*/
|
||||
function getUserAgentWithOrchestrationId(userAgent: string): string {
|
||||
const orchestrationId = process.env['ACTIONS_ORCHESTRATION_ID']
|
||||
if (!orchestrationId) {
|
||||
return userAgent
|
||||
}
|
||||
|
||||
// Sanitize orchestration ID - replace invalid characters with underscore
|
||||
const sanitized = orchestrationId.replace(/[^a-zA-Z0-9._-]/g, '_')
|
||||
|
||||
return `${userAgent} actions_orchestration_id/${sanitized}`
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user