From 6242bcbf1b24d310505ba9bd8be374eb1433557a Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Thu, 4 Sep 2025 13:54:49 +0100 Subject: [PATCH] Allow multiple registry types in `LANGUAGE_TO_REGISTRY_TYPE` --- lib/start-proxy-action.js | 16 ++++++++-------- src/start-proxy.ts | 21 ++++++++++++--------- 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/lib/start-proxy-action.js b/lib/start-proxy-action.js index 5881cacea..04b0b05d3 100644 --- a/lib/start-proxy-action.js +++ b/lib/start-proxy-action.js @@ -47817,13 +47817,13 @@ function parseLanguage(language) { return void 0; } var LANGUAGE_TO_REGISTRY_TYPE = { - java: "maven_repository", - csharp: "nuget_feed", - javascript: "npm_registry", - python: "python_index", - ruby: "rubygems_server", - rust: "cargo_registry", - go: "goproxy_server" + java: ["maven_repository"], + csharp: ["nuget_feed"], + javascript: ["npm_registry"], + python: ["python_index"], + ruby: ["rubygems_server"], + rust: ["cargo_registry"], + go: ["goproxy_server"] }; function isDefined(value) { return value !== void 0 && value !== null; @@ -47870,7 +47870,7 @@ function getCredentials(logger, registrySecrets, registriesCredentials, language "Invalid credentials - must specify host or url" ); } - if (registryTypeForLanguage && e.type !== registryTypeForLanguage) { + if (registryTypeForLanguage && !registryTypeForLanguage.some((t) => t === e.type)) { continue; } const isPrintable2 = (str2) => { diff --git a/src/start-proxy.ts b/src/start-proxy.ts index d74884bfd..e5a32b66a 100644 --- a/src/start-proxy.ts +++ b/src/start-proxy.ts @@ -55,14 +55,14 @@ export function parseLanguage(language: string): KnownLanguage | undefined { return undefined; } -const LANGUAGE_TO_REGISTRY_TYPE: Partial> = { - java: "maven_repository", - csharp: "nuget_feed", - javascript: "npm_registry", - python: "python_index", - ruby: "rubygems_server", - rust: "cargo_registry", - go: "goproxy_server", +const LANGUAGE_TO_REGISTRY_TYPE: Partial> = { + java: ["maven_repository"], + csharp: ["nuget_feed"], + javascript: ["npm_registry"], + python: ["python_index"], + ruby: ["rubygems_server"], + rust: ["cargo_registry"], + go: ["goproxy_server"], } as const; /** @@ -140,7 +140,10 @@ export function getCredentials( // Filter credentials based on language if specified. `type` is the registry type. // E.g., "maven_feed" for Java/Kotlin, "nuget_repository" for C#. - if (registryTypeForLanguage && e.type !== registryTypeForLanguage) { + if ( + registryTypeForLanguage && + !registryTypeForLanguage.some((t) => t === e.type) + ) { continue; }