UNPKG

@backstage/backend-defaults

Version:

Backend defaults used by Backstage backend apps

34 lines (30 loc) 1.08 kB
'use strict'; var configLoader = require('@backstage/config-loader'); var getPackages = require('@manypkg/get-packages'); async function createConfigSecretEnumerator(options) { const { logger, dir = process.cwd() } = options; const { packages } = await getPackages.getPackages(dir); const schema = options.schema ?? await configLoader.loadConfigSchema({ dependencies: packages.map((p) => p.packageJson.name) }); return (config) => { const [secretsData] = schema.process( [{ data: config.getOptional() ?? {}, context: "schema-enumerator" }], { visibility: ["secret"], ignoreSchemaErrors: true } ); const secrets = /* @__PURE__ */ new Set(); JSON.parse( JSON.stringify(secretsData.data), (_, v) => typeof v === "string" && secrets.add(v) ); logger.info( `Found ${secrets.size} new secrets in config that will be redacted` ); return secrets; }; } exports.createConfigSecretEnumerator = createConfigSecretEnumerator; //# sourceMappingURL=createConfigSecretEnumerator.cjs.js.map