@techdocs/cli
Version:
Utility CLI for managing TechDocs sites in Backstage.
35 lines (30 loc) • 1.16 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var path = require('node:path');
var utility = require('../../lib/utility.cjs.js');
var discovery = require('@backstage/backend-defaults/discovery');
var pluginTechdocsNode = require('@backstage/plugin-techdocs-node');
var PublisherConfig = require('../../lib/PublisherConfig.cjs.js');
async function publish(opts) {
const logger = utility.createLogger({ verbose: opts.verbose });
const config = PublisherConfig.PublisherConfig.getValidConfig(opts);
const discovery$1 = discovery.HostDiscovery.fromConfig(config);
const publisher = await pluginTechdocsNode.Publisher.fromConfig(config, { logger, discovery: discovery$1 });
const { isAvailable } = await publisher.getReadiness();
if (!isAvailable) {
return Promise.reject(new Error(""));
}
const [namespace, kind, name] = opts.entity.split("/");
const entity = {
kind,
metadata: {
namespace,
name
}
};
const directory = path.resolve(opts.directory);
await publisher.publish({ entity, directory });
return true;
}
exports.default = publish;
//# sourceMappingURL=publish.cjs.js.map