@backstage/integration
Version:
Helpers for managing integrations towards external systems
35 lines (32 loc) • 1.08 kB
JavaScript
import { trimEnd } from 'lodash';
import { isValidHost } from '../helpers.esm.js';
function readBitbucketServerIntegrationConfig(config) {
const host = config.getString("host");
let apiBaseUrl = config.getOptionalString("apiBaseUrl");
const token = config.getOptionalString("token")?.trim();
const username = config.getOptionalString("username");
const password = config.getOptionalString("password");
if (!isValidHost(host)) {
throw new Error(
`Invalid Bitbucket Server integration config, '${host}' is not a valid host`
);
}
if (apiBaseUrl) {
apiBaseUrl = trimEnd(apiBaseUrl, "/");
} else {
apiBaseUrl = `https://${host}/rest/api/1.0`;
}
return {
host,
apiBaseUrl,
token,
username,
password,
commitSigningKey: config.getOptionalString("commitSigningKey")
};
}
function readBitbucketServerIntegrationConfigs(configs) {
return configs.map(readBitbucketServerIntegrationConfig);
}
export { readBitbucketServerIntegrationConfig, readBitbucketServerIntegrationConfigs };
//# sourceMappingURL=config.esm.js.map