UNPKG

@medusajs/medusa

Version:

Building blocks for digital commerce

50 lines 2.13 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const framework_1 = require("@medusajs/framework"); const links_1 = require("@medusajs/framework/links"); const logger_1 = require("@medusajs/framework/logger"); const utils_1 = require("@medusajs/framework/utils"); const path_1 = require("path"); const loaders_1 = require("../../loaders"); const utils_2 = require("../utils"); const TERMINAL_SIZE = process.stdout.columns; const main = async function ({ directory, modules }) { try { /** * Setup */ const container = await (0, loaders_1.initializeContainer)(directory); await (0, utils_2.ensureDbExists)(container); const medusaAppLoader = new framework_1.MedusaAppLoader(); const configModule = container.resolve(utils_1.ContainerRegistrationKeys.CONFIG_MODULE); const plugins = await (0, utils_1.getResolvedPlugins)(directory, configModule, true); (0, utils_1.mergePluginModules)(configModule, plugins); const linksSourcePaths = plugins.map((plugin) => (0, path_1.join)(plugin.resolve, "links")); await new links_1.LinkLoader(linksSourcePaths).load(); /** * Generating migrations */ logger_1.logger.info("Generating migrations..."); await medusaAppLoader.runModulesMigrations({ moduleNames: modules, action: "generate", }); console.log(new Array(TERMINAL_SIZE).join("-")); logger_1.logger.info("Migrations generated"); process.exit(); } catch (error) { console.log(new Array(TERMINAL_SIZE).join("-")); if (error.code && error.code === utils_1.MedusaError.Codes.UNKNOWN_MODULES) { logger_1.logger.error(error.message); const modulesList = error.allModules.map((name) => ` - ${name}`); logger_1.logger.error(`Available modules:\n${modulesList.join("\n")}`); } else { logger_1.logger.error(error.message, error); } process.exit(1); } }; exports.default = main; //# sourceMappingURL=generate.js.map