Compare commits

..

1 Commits

Author SHA1 Message Date
dependabot[bot]
abb4947a33 chore(deps): bump actions/setup-node from 6.4.0 to 7.0.0
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 6.4.0 to 7.0.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](48b55a011b...8207627860)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-08-18 07:03:57 +00:00
3 changed files with 10 additions and 60 deletions

View File

@@ -157,7 +157,7 @@ runs:
- name: Setup Node
if: ${{ steps.node-runtime.outputs.setup-node == 'true' }}
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: 24

View File

@@ -10,7 +10,6 @@ const originalPath = process.env.PATH;
const originalNpmUserconfig = process.env.NPM_CONFIG_USERCONFIG;
const originalRunnerTemp = process.env.RUNNER_TEMP;
const originalWorkspace = process.env.GITHUB_WORKSPACE;
const originalImageRegistry = process.env.SUPABASE_INTERNAL_IMAGE_REGISTRY;
const tempDirs = new Set<string>();
let mainModule: typeof import("./main.ts") | null = null;
@@ -22,21 +21,8 @@ afterEach(() => {
} else {
process.env.NPM_CONFIG_USERCONFIG = originalNpmUserconfig;
}
if (originalRunnerTemp === undefined) {
delete process.env.RUNNER_TEMP;
} else {
process.env.RUNNER_TEMP = originalRunnerTemp;
}
if (originalWorkspace === undefined) {
delete process.env.GITHUB_WORKSPACE;
} else {
process.env.GITHUB_WORKSPACE = originalWorkspace;
}
if (originalImageRegistry === undefined) {
delete process.env.SUPABASE_INTERNAL_IMAGE_REGISTRY;
} else {
process.env.SUPABASE_INTERNAL_IMAGE_REGISTRY = originalImageRegistry;
}
delete process.env.FAKE_CLI_VERSION;
delete process.env.FAKE_NPM_BIN;
delete process.env.FAKE_NPM_INTEGRITY;
@@ -757,41 +743,6 @@ test("explicit version overrides detected root lockfiles", async () => {
expect(spies.setFailed).not.toHaveBeenCalled();
});
test("pins legacy installed CLI versions to GHCR", async () => {
installFakeNpm("supabase 2.107.0");
const spies = createActionSpies("2.107.0");
const { run } = await getMainModule();
await run();
expect(spies.exportVariable).toHaveBeenCalledWith(CLI_CONFIG_REGISTRY, "ghcr.io");
expect(spies.setFailed).not.toHaveBeenCalled();
});
test("uses the CLI registry fallback for installed versions that support it", async () => {
installFakeNpm("supabase 2.108.0");
const spies = createActionSpies("latest");
const { run } = await getMainModule();
await run();
expect(spies.exportVariable).not.toHaveBeenCalled();
expect(spies.setFailed).not.toHaveBeenCalled();
});
test("preserves an explicitly configured image registry for legacy CLI versions", async () => {
installFakeNpm("supabase 2.107.0");
process.env.SUPABASE_INTERNAL_IMAGE_REGISTRY = "registry.example.test";
const spies = createActionSpies("2.107.0");
const { run } = await getMainModule();
await run();
expect(spies.exportVariable).not.toHaveBeenCalled();
expect(process.env.SUPABASE_INTERNAL_IMAGE_REGISTRY).toBe("registry.example.test");
expect(spies.setFailed).not.toHaveBeenCalled();
});
test("fails when the installed CLI does not report a version", async () => {
installFakeNpm("");
process.env.GITHUB_WORKSPACE = createWorkspace({

View File

@@ -7,7 +7,6 @@ import { fileURLToPath } from "node:url";
export const CLI_CONFIG_REGISTRY = "SUPABASE_INTERNAL_IMAGE_REGISTRY";
const REGISTRY_VERSION = "1.28.0";
const FALLBACK_VERSION = "2.108.0";
const DEFAULT_VERSION = "latest";
const NPM_PACKAGE = "supabase";
const NPM_EXECUTABLE_ENV = "SUPABASE_SETUP_CLI_NPM";
@@ -380,13 +379,13 @@ export async function determineInstalledVersion(cliPath: string): Promise<string
return version;
}
function shouldUseGhcrRegistry(installedVersion: string): boolean {
function shouldUseGhcrRegistry(requestedVersion: string, installedVersion: string): boolean {
if (requestedVersion.toLowerCase() === DEFAULT_VERSION) {
return true;
}
const concreteVersion = extractConcreteVersion(installedVersion);
return (
concreteVersion !== null &&
semver.order(concreteVersion, REGISTRY_VERSION) >= 0 &&
semver.order(concreteVersion, FALLBACK_VERSION) < 0
);
return concreteVersion !== null && semver.order(concreteVersion, REGISTRY_VERSION) >= 0;
}
export async function run(): Promise<void> {
@@ -397,7 +396,7 @@ export async function run(): Promise<void> {
core.setOutput("version", installedVersion);
core.addPath(cliPath);
if (shouldUseGhcrRegistry(installedVersion) && !process.env[CLI_CONFIG_REGISTRY]) {
if (shouldUseGhcrRegistry(resolution.version, installedVersion)) {
core.exportVariable(CLI_CONFIG_REGISTRY, "ghcr.io");
}
} catch (error) {