diff --git a/src/download/download-version.ts b/src/download/download-version.ts index 010e538..cf3c5ae 100644 --- a/src/download/download-version.ts +++ b/src/download/download-version.ts @@ -24,6 +24,7 @@ export function tryGetFromToolCache( } export async function downloadVersion( + githubUrl: string, platform: Platform, arch: Architecture, version: string, @@ -36,7 +37,7 @@ export async function downloadVersion( if (platform === "pc-windows-msvc") { extension = ".zip"; } - const downloadUrl = `https://github.com/${OWNER}/${REPO}/releases/download/${resolvedVersion}/${artifact}${extension}`; + const downloadUrl = `${githubUrl}/${OWNER}/${REPO}/releases/download/${resolvedVersion}/${artifact}${extension}`; core.info(`Downloading uv from "${downloadUrl}" ...`); const downloadPath = await tc.downloadTool( diff --git a/src/setup-uv.ts b/src/setup-uv.ts index 642e8e4..93a4c79 100644 --- a/src/setup-uv.ts +++ b/src/setup-uv.ts @@ -25,6 +25,7 @@ import { toolDir, version as versionInput, workingDirectory, + githubUrl, } from "./utils/inputs"; import * as exec from "@actions/exec"; import fs from "node:fs"; @@ -95,6 +96,7 @@ async function setupUv( } const downloadVersionResult = await downloadVersion( + githubUrl, platform, arch, resolvedVersion, diff --git a/src/utils/inputs.ts b/src/utils/inputs.ts index 2d47585..44d8ed8 100644 --- a/src/utils/inputs.ts +++ b/src/utils/inputs.ts @@ -17,6 +17,7 @@ export const ignoreEmptyWorkdir = core.getInput("ignore-empty-workdir") === "true"; export const toolBinDir = getToolBinDir(); export const toolDir = getToolDir(); +export const githubUrl = getGithubUrl(); export const githubToken = core.getInput("github-token"); function getEnableCache(): boolean { @@ -84,3 +85,14 @@ function expandTilde(input: string): string { } return input; } + +function getGithubUrl(): string { + let url = "https://github.com"; + if(process.env.GITHUB_URL) { + url = process.env.GITHUB_URL; + } + if(url.endsWith("/")) { + url = url.replaceAll(/\/+$/g, "") + } + return url; +} \ No newline at end of file