@@ -8,6 +8,7 @@ import { pki } from "node-forge";
88import * as actionsUtil from "./actions-util" ;
99import { getActionsLogger , Logger } from "./logging" ;
1010import * as util from "./util" ;
11+ import { Language , parseLanguage } from "./languages" ;
1112
1213const UPDATEJOB_PROXY = "update-job-proxy" ;
1314const UPDATEJOB_PROXY_VERSION = "v2.0.20241023203727" ;
@@ -17,10 +18,18 @@ const PROXY_USER = "proxy_user";
1718const KEY_SIZE = 2048 ;
1819const KEY_EXPIRY_YEARS = 2 ;
1920
20- const LANGUAGE_TO_REGISTRY_TYPE = {
21- "java-kotlin" : "maven_repository" ,
21+ const LANGUAGE_TO_REGISTRY_TYPE : Record < Language , string > = {
2222 java : "maven_repository" ,
2323 csharp : "nuget_feed" ,
24+ javascript : "npm_registry" ,
25+ python : "python_index" ,
26+ ruby : "rubygems_server" ,
27+ rust : "cargo_registry" ,
28+ // We do not have an established proxy type for these languages, thus leaving empty.
29+ actions : "" ,
30+ cpp : "" ,
31+ go : "" ,
32+ swift : "" ,
2433} as const ;
2534
2635type CertificateAuthority = {
@@ -198,7 +207,9 @@ function getCredentials(logger: Logger): Credential[] {
198207 "registries_credentials" ,
199208 ) ;
200209 const registrySecrets = actionsUtil . getOptionalInput ( "registry_secrets" ) ;
201- const language = actionsUtil . getOptionalInput ( "language" ) ;
210+ const languageString = actionsUtil . getOptionalInput ( "language" ) ;
211+ const language = languageString ? parseLanguage ( languageString ) : undefined ;
212+ const registryTypeForLanguage = language ? LANGUAGE_TO_REGISTRY_TYPE [ language ] : undefined ;
202213
203214 let credentialsStr : string ;
204215 if ( registriesCredentials !== undefined ) {
@@ -222,8 +233,8 @@ function getCredentials(logger: Logger): Credential[] {
222233
223234 // Filter credentials based on language if specified. `type` is the registry type.
224235 // E.g., "maven_feed" for Java/Kotlin, "nuget_repository" for C#.
225- if ( language && LANGUAGE_TO_REGISTRY_TYPE [ language ] !== e . type ) {
226- continue ;
236+ if ( e . type != registryTypeForLanguage ) {
237+ continue ;
227238 }
228239
229240 out . push ( {
0 commit comments