|
|
|
@@ -1,32 +1,26 @@
|
|
|
|
|
import {
|
|
|
|
|
MedusaApp,
|
|
|
|
|
ModulesDefinition,
|
|
|
|
|
moduleLoader,
|
|
|
|
|
registerModules,
|
|
|
|
|
} from "@medusajs/modules-sdk"
|
|
|
|
|
import { moduleLoader, registerModules } from "@medusajs/modules-sdk"
|
|
|
|
|
import { Express, NextFunction, Request, Response } from "express"
|
|
|
|
|
|
|
|
|
|
import databaseLoader, { dataSource } from "./database"
|
|
|
|
|
import pluginsLoader, { registerPluginModels } from "./plugins"
|
|
|
|
|
|
|
|
|
|
import { Connection } from "typeorm"
|
|
|
|
|
import { ContainerRegistrationKeys } from "@medusajs/utils"
|
|
|
|
|
import { asValue } from "awilix"
|
|
|
|
|
import { createMedusaContainer } from "medusa-core-utils"
|
|
|
|
|
import { track } from "medusa-telemetry"
|
|
|
|
|
import { EOL } from "os"
|
|
|
|
|
import requestIp from "request-ip"
|
|
|
|
|
import modulesConfig from "../modules-config"
|
|
|
|
|
import { Connection } from "typeorm"
|
|
|
|
|
import { MedusaContainer } from "../types/global"
|
|
|
|
|
import apiLoader from "./api"
|
|
|
|
|
import loadConfig from "./config"
|
|
|
|
|
import defaultsLoader from "./defaults"
|
|
|
|
|
import expressLoader from "./express"
|
|
|
|
|
import featureFlagsLoader from "./feature-flags"
|
|
|
|
|
import IsolatePricingDomainFeatureFlag from "./feature-flags/isolate-pricing-domain"
|
|
|
|
|
import IsolateProductDomainFeatureFlag from "./feature-flags/isolate-product-domain"
|
|
|
|
|
import Logger from "./logger"
|
|
|
|
|
import { joinerConfig } from "../joiner-config"
|
|
|
|
|
import loadConfig from "./config"
|
|
|
|
|
import loadMedusaApp from "./medusa-app"
|
|
|
|
|
import modelsLoader from "./models"
|
|
|
|
|
import passportLoader from "./passport"
|
|
|
|
|
import pgConnectionLoader from "./pg-connection"
|
|
|
|
@@ -36,7 +30,6 @@ import searchIndexLoader from "./search-index"
|
|
|
|
|
import servicesLoader from "./services"
|
|
|
|
|
import strategiesLoader from "./strategies"
|
|
|
|
|
import subscribersLoader from "./subscribers"
|
|
|
|
|
import loadMedusaApp from "./medusa-app"
|
|
|
|
|
|
|
|
|
|
type Options = {
|
|
|
|
|
directory: string
|
|
|
|
@@ -52,6 +45,7 @@ export default async ({
|
|
|
|
|
container: MedusaContainer
|
|
|
|
|
dbConnection: Connection
|
|
|
|
|
app: Express
|
|
|
|
|
pgConnection: unknown
|
|
|
|
|
}> => {
|
|
|
|
|
const configModule = loadConfig(rootDirectory)
|
|
|
|
|
|
|
|
|
@@ -102,7 +96,7 @@ export default async ({
|
|
|
|
|
const stratAct = Logger.success(stratActivity, "Strategies initialized") || {}
|
|
|
|
|
track("STRATEGIES_INIT_COMPLETED", { duration: stratAct.duration })
|
|
|
|
|
|
|
|
|
|
await pgConnectionLoader({ container, configModule })
|
|
|
|
|
const pgConnection = await pgConnectionLoader({ container, configModule })
|
|
|
|
|
|
|
|
|
|
const modulesActivity = Logger.activity(`Initializing modules${EOL}`)
|
|
|
|
|
|
|
|
|
@@ -202,5 +196,5 @@ export default async ({
|
|
|
|
|
Logger.success(searchActivity, "Indexing event emitted") || {}
|
|
|
|
|
track("SEARCH_ENGINE_INDEXING_COMPLETED", { duration: searchAct.duration })
|
|
|
|
|
|
|
|
|
|
return { container, dbConnection, app: expressApp }
|
|
|
|
|
return { container, dbConnection, app: expressApp, pgConnection }
|
|
|
|
|
}
|
|
|
|
|