UNPKG

@forestadmin/forest-cloud

Version:

Utility to bootstrap and publish forest admin cloud projects customization

54 lines 5.25 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const action_runner_1 = __importDefault(require("../dialogs/action-runner")); const ask_to_overwrite_customizations_1 = __importDefault(require("../dialogs/ask-to-overwrite-customizations")); const check_latest_version_1 = __importDefault(require("../dialogs/check-latest-version")); const errors_1 = require("../errors"); const environment_variables_1 = require("../services/environment-variables"); const http_server_1 = __importDefault(require("../services/http-server")); const publish_1 = __importDefault(require("../services/publish")); const shared_1 = require("../shared"); const askToOverwriteCustomizationsOrAbortCommand = async (logger, httpServer) => { if (!(await (0, ask_to_overwrite_customizations_1.default)(logger.spinner, httpServer.getLastPublishedCodeDetails.bind(httpServer)))) { throw new errors_1.BusinessError('Operation aborted'); } }; exports.default = (program, context) => { const { logger, getCurrentVersion, distPathManager, buildEventSubscriber, buildHttpServer, getEnvironmentVariables, login, } = context; const { spinner } = logger; program .command('publish') .description('Publish your code customizations') .option('-f, --force', 'Force the publication without asking for confirmation') .action((0, action_runner_1.default)(spinner, async (options) => { await (0, check_latest_version_1.default)(spinner, getCurrentVersion(), http_server_1.default.getLatestVersion); spinner.start('Publishing code customizations'); const vars = await (0, shared_1.loginIfMissingAuthAndReturnEnvironmentVariables)(login, logger, getEnvironmentVariables); (0, environment_variables_1.validateEnvironmentVariables)(vars); const httpServer = buildHttpServer(vars); if (!options.force) await askToOverwriteCustomizationsOrAbortCommand(logger, httpServer); spinner.start('Publishing code customizations'); const subscriptionId = await (0, publish_1.default)(httpServer, distPathManager); const subscriber = buildEventSubscriber(vars); try { const { error } = await subscriber.subscribeToCodeCustomization(subscriptionId); if (error) { spinner.fail(`Something went wrong: ${error}`); } else { spinner.succeed('Code customizations published'); } } catch (error) { throw new errors_1.BusinessError(error.message); } finally { subscriber.destroy(); } })); }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGlzaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21tYW5kcy9wdWJsaXNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBR0EsNkVBQW9EO0FBQ3BELGlIQUFzRjtBQUN0RiwyRkFBaUU7QUFDakUsc0NBQTBDO0FBQzFDLDZFQUFpRjtBQUNqRiwwRUFBaUQ7QUFDakQsa0VBQTBDO0FBQzFDLHNDQUE0RTtBQUU1RSxNQUFNLDBDQUEwQyxHQUFHLEtBQUssRUFDdEQsTUFBYyxFQUNkLFVBQXNCLEVBQ1AsRUFBRTtJQUNqQixJQUNFLENBQUMsQ0FBQyxNQUFNLElBQUEseUNBQTRCLEVBQ2xDLE1BQU0sQ0FBQyxPQUFPLEVBQ2QsVUFBVSxDQUFDLDJCQUEyQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FDeEQsQ0FBQyxFQUNGLENBQUM7UUFDRCxNQUFNLElBQUksc0JBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBQy9DLENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRixrQkFBZSxDQUFDLE9BQWdCLEVBQUUsT0FBcUIsRUFBRSxFQUFFO0lBQ3pELE1BQU0sRUFDSixNQUFNLEVBQ04saUJBQWlCLEVBQ2pCLGVBQWUsRUFDZixvQkFBb0IsRUFDcEIsZUFBZSxFQUNmLHVCQUF1QixFQUN2QixLQUFLLEdBQ04sR0FBRyxPQUFPLENBQUM7SUFDWixNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxDQUFDO0lBRTNCLE9BQU87U0FDSixPQUFPLENBQUMsU0FBUyxDQUFDO1NBQ2xCLFdBQVcsQ0FBQyxrQ0FBa0MsQ0FBQztTQUMvQyxNQUFNLENBQUMsYUFBYSxFQUFFLHVEQUF1RCxDQUFDO1NBQzlFLE1BQU0sQ0FDTCxJQUFBLHVCQUFZLEVBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUEyQixFQUFFLEVBQUU7UUFDMUQsTUFBTSxJQUFBLDhCQUFrQixFQUFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxFQUFFLHFCQUFVLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUVwRixPQUFPLENBQUMsS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7UUFDaEQsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFBLHdEQUErQyxFQUNoRSxLQUFLLEVBQ0wsTUFBTSxFQUNOLHVCQUF1QixDQUN4QixDQUFDO1FBQ0YsSUFBQSxvREFBNEIsRUFBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxNQUFNLFVBQVUsR0FBRyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLO1lBQUUsTUFBTSwwQ0FBMEMsQ0FBQyxNQUFNLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFekYsT0FBTyxDQUFDLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO1FBQ2hELE1BQU0sY0FBYyxHQUFHLE1BQU0sSUFBQSxpQkFBTyxFQUFDLFVBQVUsRUFBRSxlQUFlLENBQUMsQ0FBQztRQUNsRSxNQUFNLFVBQVUsR0FBRyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU5QyxJQUFJLENBQUM7WUFDSCxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsTUFBTSxVQUFVLENBQUMsNEJBQTRCLENBQUMsY0FBYyxDQUFDLENBQUM7WUFFaEYsSUFBSSxLQUFLLEVBQUUsQ0FBQztnQkFDVixPQUFPLENBQUMsSUFBSSxDQUFDLHlCQUF5QixLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQ2pELENBQUM7aUJBQU0sQ0FBQztnQkFDTixPQUFPLENBQUMsT0FBTyxDQUFDLCtCQUErQixDQUFDLENBQUM7WUFDbkQsQ0FBQztRQUNILENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsTUFBTSxJQUFJLHNCQUFhLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3pDLENBQUM7Z0JBQVMsQ0FBQztZQUNULFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN2QixDQUFDO0lBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztBQUNOLENBQUMsQ0FBQyJ9