From 276a2f38a40d0266c3ede7876e95cb951036df05 Mon Sep 17 00:00:00 2001 From: CrazyMax <1951866+crazy-max@users.noreply.github.com> Date: Mon, 3 Nov 2025 23:12:51 +0100 Subject: [PATCH] set github token to list releases and download assets Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com> --- __tests__/context.test.ts | 10 ++++++++++ action.yml | 4 ++++ src/context.ts | 4 +++- src/main.ts | 7 ++++--- 4 files changed, 21 insertions(+), 4 deletions(-) diff --git a/__tests__/context.test.ts b/__tests__/context.test.ts index 2ef65fb..94192e9 100644 --- a/__tests__/context.test.ts +++ b/__tests__/context.test.ts @@ -34,6 +34,7 @@ describe('getInputs', () => { rootless: false, setHost: false, runtimeBasedir: path.join(os.homedir(), `setup-docker-action`), + githubToken: '', } as context.Inputs ], [ @@ -57,6 +58,7 @@ describe('getInputs', () => { rootless: false, setHost: false, runtimeBasedir: path.join(os.homedir(), `setup-docker-action`), + githubToken: '', } as context.Inputs ], [ @@ -76,6 +78,7 @@ describe('getInputs', () => { rootless: false, setHost: true, runtimeBasedir: path.join(os.homedir(), `setup-docker-action`), + githubToken: '', } as context.Inputs ], [ @@ -97,6 +100,7 @@ describe('getInputs', () => { rootless: false, setHost: false, runtimeBasedir: path.join(os.homedir(), `setup-docker-action`), + githubToken: '', } as context.Inputs ], [ @@ -116,6 +120,7 @@ describe('getInputs', () => { rootless: false, setHost: false, runtimeBasedir: path.join(os.homedir(), `setup-docker-action`), + githubToken: '', } as context.Inputs ], [ @@ -136,6 +141,7 @@ describe('getInputs', () => { daemonConfig: '', rootless: false, runtimeBasedir: path.join(os.homedir(), `setup-docker-action`), + githubToken: '', } as context.Inputs ], [ @@ -156,6 +162,7 @@ describe('getInputs', () => { daemonConfig: '', rootless: false, runtimeBasedir: path.join(os.homedir(), `setup-docker-action`), + githubToken: '', } as context.Inputs ], [ @@ -175,6 +182,7 @@ describe('getInputs', () => { daemonConfig: '', rootless: false, runtimeBasedir: path.join(os.homedir(), `setup-docker-action`), + githubToken: '', } as context.Inputs ], [ @@ -194,6 +202,7 @@ describe('getInputs', () => { daemonConfig: '', rootless: true, runtimeBasedir: path.join(os.homedir(), `setup-docker-action`), + githubToken: '', } as context.Inputs ], [ @@ -216,6 +225,7 @@ describe('getInputs', () => { rootless: false, setHost: false, runtimeBasedir: path.join(os.homedir(), `setup-docker-action`), + githubToken: '', } as context.Inputs ], ])( diff --git a/action.yml b/action.yml index d424ab5..6e7ca9d 100644 --- a/action.yml +++ b/action.yml @@ -34,6 +34,10 @@ inputs: runtime-basedir: description: 'Docker runtime base directory' required: false + github-token: + description: "GitHub Token used to get releases and download assets" + default: ${{ github.token }} + required: false outputs: sock: diff --git a/src/context.ts b/src/context.ts index 201b384..38287a6 100644 --- a/src/context.ts +++ b/src/context.ts @@ -14,6 +14,7 @@ export interface Inputs { setHost: boolean; rootless: boolean; runtimeBasedir: string; + githubToken: string; } export function getInputs(): Inputs { @@ -31,7 +32,8 @@ export function getInputs(): Inputs { context: core.getInput('context'), setHost: core.getBooleanInput('set-host'), rootless: core.getBooleanInput('rootless'), - runtimeBasedir: core.getInput('runtime-basedir') || path.join(os.homedir(), `setup-docker-action`) + runtimeBasedir: core.getInput('runtime-basedir') || path.join(os.homedir(), `setup-docker-action`), + githubToken: core.getInput('github-token') }; } diff --git a/src/main.ts b/src/main.ts index 5a3017e..e945bd4 100644 --- a/src/main.ts +++ b/src/main.ts @@ -25,7 +25,7 @@ actionsToolkit.run( if (input.source.type === 'image') { await core.group(`Download and install regctl`, async () => { - const regclientInstall = new RegclientInstall(); + const regclientInstall = new RegclientInstall({githubToken: input.githubToken}); const regclientBinPath = await regclientInstall.download( process.env.REGCTL_VERSION && process.env.REGCTL_VERSION.trim() ? process.env.REGCTL_VERSION @@ -35,7 +35,7 @@ actionsToolkit.run( await regclientInstall.install(regclientBinPath); }); await core.group(`Download and install undock`, async () => { - const undockInstall = new UndockInstall(); + const undockInstall = new UndockInstall({githubToken: input.githubToken}); const undockBinPath = await undockInstall.download( process.env.UNDOCK_VERSION && process.env.UNDOCK_VERSION.trim() ? process.env.UNDOCK_VERSION @@ -59,7 +59,8 @@ actionsToolkit.run( rootless: input.rootless, contextName: input.context || 'setup-docker-action', daemonConfig: input.daemonConfig, - localTCPPort: tcpPort + localTCPPort: tcpPort, + githubToken: input.githubToken }); let toolDir; if (!(await Docker.isAvailable()) || input.source) {