diff --git a/package.json b/package.json index 2e28958ece9b2b8337ba896a71084d7007e01b04..c6bf2fc5e3fd6adab48aba8218e912b08217d37b 100644 --- a/package.json +++ b/package.json @@ -46,6 +46,7 @@ "@vitejs/plugin-react": "^1.2.0", "adm-zip": "^0.5.9", "fs-extra": "^10.0.0", + "https-proxy-agent": "^5.0.1", "husky": "^7.0.0", "node-fetch": "^3.2.0", "pretty-quick": "^3.1.3", diff --git a/scripts/check.mjs b/scripts/check.mjs index 6015b7cf9ac1403425ab4edd26b4bdbef90fb55c..ec26cbafb3d9c5e0c135c78554e7c964e7b9022c 100644 --- a/scripts/check.mjs +++ b/scripts/check.mjs @@ -3,6 +3,7 @@ import zlib from "zlib"; import path from "path"; import AdmZip from "adm-zip"; import fetch from "node-fetch"; +import proxyAgent from "https-proxy-agent"; import { execSync } from "child_process"; const cwd = process.cwd(); @@ -153,7 +154,20 @@ async function resolveMmdb() { async function downloadFile(url, path) { console.log(`[INFO]: downloading from "${url}"`); + const options = {}; + + const httpProxy = + process.env.HTTP_PROXY || + process.env.http_proxy || + process.env.HTTPS_PROXY || + process.env.https_proxy; + + if (httpProxy) { + options.agent = proxyAgent(httpProxy); + } + const response = await fetch(url, { + ...options, method: "GET", headers: { "Content-Type": "application/octet-stream" }, }); diff --git a/yarn.lock b/yarn.lock index 884a31ee2c1c6e445c765c588af83ddf11df65eb..0e4b808f465293da1d11d069ddc29887391bb05e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -828,6 +828,13 @@ adm-zip@^0.5.9: resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.5.9.tgz#b33691028333821c0cf95c31374c5462f2905a83" integrity sha512-s+3fXLkeeLjZ2kLjCBwQufpI5fuN+kIGBxu6530nVQZGVol0d7Y/M88/xw9HGGUcJjKf8LutN3VPRUBq6N7Ajg== +agent-base@6: + version "6.0.2" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== + dependencies: + debug "4" + ahooks-v3-count@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/ahooks-v3-count/-/ahooks-v3-count-1.0.0.tgz#ddeb392e009ad6e748905b3cbf63a9fd8262ca80" @@ -1075,7 +1082,7 @@ dayjs@^1.11.0, dayjs@^1.9.1: resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.0.tgz#009bf7ef2e2ea2d5db2e6583d2d39a4b5061e805" integrity sha512-JLC809s6Y948/FuCZPm5IX8rRhQwOiyMb2TfVVQEixG7P8Lm/gt5S7yoQZmC8x1UehI9Pb7sksEt4xx14m+7Ug== -debug@^4.1.0: +debug@4, debug@^4.1.0: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== @@ -1416,6 +1423,14 @@ html-parse-stringify@^3.0.1: dependencies: void-elements "3.1.0" +https-proxy-agent@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" + integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== + dependencies: + agent-base "6" + debug "4" + human-signals@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3"