diff --git a/src/config-utils.ts b/src/config-utils.ts index 52b5ab27d..1cae7ec9d 100644 --- a/src/config-utils.ts +++ b/src/config-utils.ts @@ -881,6 +881,13 @@ function parseRegistries( } } +export function parseRegistriesWithoutCredentials(registriesInput?: string) : RegistryConfigNoCredentials[] | undefined { + return parseRegistries(registriesInput)?.map((r) => { + const {token:_, ...registryWithoutCredentials} = r; + return registryWithoutCredentials; + }) +} + function isLocal(configPath: string): boolean { // If the path starts with ./, look locally if (configPath.indexOf("./") === 0) { diff --git a/src/init-action.ts b/src/init-action.ts index 2e861483b..03f8b468f 100644 --- a/src/init-action.ts +++ b/src/init-action.ts @@ -93,6 +93,8 @@ interface InitWithConfigStatusReport extends InitStatusReport { trap_cache_download_size_bytes: number; /** Time taken to download TRAP caches, in milliseconds. */ trap_cache_download_duration_ms: number; + /** Stringified JSON array of registry configuration objects, from the 'registries' config field or workflow input. **/ + registries: string; /** Stringified JSON object representing a query-filters, from the 'query-filters' config field. **/ query_filters: string; } @@ -210,6 +212,7 @@ async function sendCompletedStatusReport( ), trap_cache_download_duration_ms: Math.round(config.trapCacheDownloadTime), query_filters: JSON.stringify(config.originalUserInput["query-filters"]), + registries: JSON.stringify(configUtils.parseRegistriesWithoutCredentials(getOptionalInput("registries"))), }; await sendStatusReport({ ...initWithConfigStatusReport,