fix: remove custom proxy handling (#143)
Undici has added native support for proxy handling, so it is no longer necessary for us to have our own custom proxy handling.
Reverts #102 and resolves #134.
(cherry picked from commit cda91bf2b9)
This commit is contained in:
+3
-33
@@ -1,41 +1,11 @@
|
|||||||
import * as core from "@actions/core";
|
import * as core from "@actions/core";
|
||||||
import { request } from "@octokit/request";
|
import { request } from "@octokit/request";
|
||||||
import { ProxyAgent, fetch as undiciFetch } from "undici";
|
|
||||||
|
|
||||||
|
// Get the GitHub API URL from the action input and remove any trailing slash
|
||||||
const baseUrl = core.getInput("github-api-url").replace(/\/$/, "");
|
const baseUrl = core.getInput("github-api-url").replace(/\/$/, "");
|
||||||
|
|
||||||
// https://docs.github.com/actions/hosting-your-own-runners/managing-self-hosted-runners/using-a-proxy-server-with-self-hosted-runners
|
// Configure the default settings for GitHub API requests
|
||||||
const proxyUrl =
|
|
||||||
process.env.https_proxy ||
|
|
||||||
process.env.HTTPS_PROXY ||
|
|
||||||
process.env.http_proxy ||
|
|
||||||
process.env.HTTP_PROXY;
|
|
||||||
|
|
||||||
/* c8 ignore start */
|
|
||||||
// Native support for proxies in Undici is under consideration: https://github.com/nodejs/undici/issues/1650
|
|
||||||
// Until then, we need to use a custom fetch function to add proxy support.
|
|
||||||
const proxyFetch = (url, options) => {
|
|
||||||
const urlHost = new URL(url).hostname;
|
|
||||||
const noProxy = (process.env.no_proxy || process.env.NO_PROXY || "").split(
|
|
||||||
",",
|
|
||||||
);
|
|
||||||
|
|
||||||
if (!noProxy.includes(urlHost)) {
|
|
||||||
options = {
|
|
||||||
...options,
|
|
||||||
dispatcher: new ProxyAgent(String(proxyUrl)),
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
return undiciFetch(url, options);
|
|
||||||
};
|
|
||||||
/* c8 ignore stop */
|
|
||||||
|
|
||||||
export default request.defaults({
|
export default request.defaults({
|
||||||
headers: {
|
headers: { "user-agent": "actions/create-github-app-token" },
|
||||||
"user-agent": "actions/create-github-app-token",
|
|
||||||
},
|
|
||||||
baseUrl,
|
baseUrl,
|
||||||
/* c8 ignore next */
|
|
||||||
request: proxyUrl ? { fetch: proxyFetch } : {},
|
|
||||||
});
|
});
|
||||||
|
|||||||
+2
-2
@@ -19,8 +19,7 @@
|
|||||||
"@actions/core": "^3.0.0",
|
"@actions/core": "^3.0.0",
|
||||||
"@octokit/auth-app": "^8.2.0",
|
"@octokit/auth-app": "^8.2.0",
|
||||||
"@octokit/request": "^10.0.8",
|
"@octokit/request": "^10.0.8",
|
||||||
"p-retry": "^7.1.1",
|
"p-retry": "^7.1.1"
|
||||||
"undici": "^7.24.1"
|
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@octokit/openapi": "^21.0.0",
|
"@octokit/openapi": "^21.0.0",
|
||||||
@@ -31,6 +30,7 @@
|
|||||||
"esbuild": "^0.27.3",
|
"esbuild": "^0.27.3",
|
||||||
"execa": "^9.6.1",
|
"execa": "^9.6.1",
|
||||||
"open-cli": "^8.0.0",
|
"open-cli": "^8.0.0",
|
||||||
|
"undici": "^7.24.1",
|
||||||
"yaml": "^2.8.2"
|
"yaml": "^2.8.2"
|
||||||
},
|
},
|
||||||
"release": {
|
"release": {
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user