@secustor/backstage-plugin-renovate-backend
Version:
69 lines (65 loc) • 2.68 kB
JavaScript
;
var backendPluginApi = require('@backstage/backend-plugin-api');
var router = require('./service/router.cjs.js');
var renovateRunner = require('./wrapper/renovateRunner.cjs.js');
var databaseHandler = require('./service/databaseHandler.cjs.js');
var backstagePluginRenovateNode = require('@secustor/backstage-plugin-renovate-node');
var jobSync = require('./service/jobSync.cjs.js');
var cleanupTask = require('./service/cleanupTask.cjs.js');
const renovatePlugin = backendPluginApi.createBackendPlugin({
pluginId: "renovate",
register(env) {
const runtimes = /* @__PURE__ */ new Map();
env.registerExtensionPoint(backstagePluginRenovateNode.renovateRuntimeExtensionPoint, {
addRuntime(id, runtime) {
if (runtimes.has(id)) {
throw new Error(
` ${id} has been already registered. Only one wrapper with the same ID is allowed to be registered`
);
}
runtimes.set(id, runtime);
}
});
const queueFactories = /* @__PURE__ */ new Map();
env.registerExtensionPoint(backstagePluginRenovateNode.renovateQueueExtensionPoint, {
addQueueFactory(id, factory) {
if (queueFactories.has(id)) {
throw new Error(
` ${id} has been already registered. Only one queue with the same ID is allowed to be registered`
);
}
queueFactories.set(id, factory);
}
});
env.registerInit({
deps: {
rootConfig: backendPluginApi.coreServices.rootConfig,
logger: backendPluginApi.coreServices.logger,
httpRouter: backendPluginApi.coreServices.httpRouter,
database: backendPluginApi.coreServices.database,
scheduler: backendPluginApi.coreServices.scheduler,
discovery: backendPluginApi.coreServices.discovery,
auth: backendPluginApi.coreServices.auth
},
async init(options) {
const { database, httpRouter, logger } = options;
const routerOptions = {
...options,
databaseHandler: await databaseHandler.DatabaseHandler.create({ database, logger }),
runtimes,
queueFactories
};
const renovateRunner$1 = await renovateRunner.RenovateRunner.from(routerOptions);
await jobSync.scheduleJobSync(renovateRunner$1, routerOptions);
await cleanupTask.scheduleCleanupTask(routerOptions);
httpRouter.use(await router.createRouter(renovateRunner$1, routerOptions));
httpRouter.addAuthPolicy({
path: "/health",
allow: "unauthenticated"
});
}
});
}
});
exports.renovatePlugin = renovatePlugin;
//# sourceMappingURL=plugin.cjs.js.map