fix: make v2 with modules run (#6636)
This commit is contained in:
1 parent
c2d56ca12b
commit
a838ebae1b
10 files changed
+43
-39
No files matched your search
@@ -61,12 +61,10 @@ export const DELETE = async (
|
||||
res: MedusaResponse
|
||||
) => {
|
||||
const id = req.params.id
|
||||
const manager = req.scope.resolve("manager")
|
||||
const deleteCampaigns = deleteCampaignsWorkflow(req.scope)
|
||||
|
||||
const { errors } = await deleteCampaigns.run({
|
||||
input: { ids: [id] },
|
||||
context: { manager },
|
||||
throwOnError: false,
|
||||
})
|
||||
|
||||
|
||||
@@ -10,7 +10,6 @@ import {
|
||||
import { AdminPostPromotionsPromotionReq } from "../validators"
|
||||
import { IPromotionModuleService } from "@medusajs/types"
|
||||
import { ModuleRegistrationName } from "@medusajs/modules-sdk"
|
||||
import { UpdateApplicationMethodDTO } from "@medusajs/types"
|
||||
import { UpdatePromotionDTO } from "@medusajs/types"
|
||||
|
||||
export const GET = async (
|
||||
@@ -58,12 +57,10 @@ export const DELETE = async (
|
||||
res: MedusaResponse
|
||||
) => {
|
||||
const id = req.params.id
|
||||
const manager = req.scope.resolve("manager")
|
||||
const deletePromotions = deletePromotionsWorkflow(req.scope)
|
||||
|
||||
const { errors } = await deletePromotions.run({
|
||||
input: { ids: [id] },
|
||||
context: { manager },
|
||||
throwOnError: false,
|
||||
})
|
||||
|
||||
|
||||
@@ -8,12 +8,14 @@ import getMigrations, {
|
||||
import {
|
||||
ContainerRegistrationKeys,
|
||||
createMedusaContainer,
|
||||
MedusaV2Flag,
|
||||
promiseAll,
|
||||
} from "@medusajs/utils"
|
||||
import configModuleLoader from "../loaders/config"
|
||||
import databaseLoader from "../loaders/database"
|
||||
import featureFlagLoader from "../loaders/feature-flags"
|
||||
import Logger from "../loaders/logger"
|
||||
import { loadMedusaApp } from "../loaders/medusa-app"
|
||||
import { migrateMedusaApp, loadMedusaApp } from "../loaders/medusa-app"
|
||||
import pgConnectionLoader from "../loaders/pg-connection"
|
||||
|
||||
const getDataSource = async (directory) => {
|
||||
@@ -70,15 +72,31 @@ const main = async function ({ directory }) {
|
||||
args.shift()
|
||||
args.shift()
|
||||
|
||||
const featureFlagRouter = featureFlagLoader(configModule)
|
||||
const configModule = configModuleLoader(directory)
|
||||
const dataSource = await getDataSource(directory)
|
||||
|
||||
if (args[0] === "run") {
|
||||
await dataSource.runMigrations()
|
||||
await dataSource.destroy()
|
||||
await runIsolatedModulesMigration(configModule)
|
||||
if (featureFlagRouter.isFeatureEnabled(MedusaV2Flag.key)) {
|
||||
const container = createMedusaContainer()
|
||||
const pgConnection = await pgConnectionLoader({ configModule, container })
|
||||
container.register({
|
||||
[ContainerRegistrationKeys.CONFIG_MODULE]: asValue(configModule),
|
||||
[ContainerRegistrationKeys.LOGGER]: asValue(Logger),
|
||||
[ContainerRegistrationKeys.PG_CONNECTION]: asValue(pgConnection),
|
||||
featureFlagRouter: asValue(featureFlagRouter),
|
||||
})
|
||||
await migrateMedusaApp(
|
||||
{ configModule, container },
|
||||
{ registerInContainer: false }
|
||||
)
|
||||
} else {
|
||||
await dataSource.runMigrations()
|
||||
await dataSource.destroy()
|
||||
await runIsolatedModulesMigration(configModule)
|
||||
|
||||
await runLinkMigrations(directory)
|
||||
await runLinkMigrations(directory)
|
||||
}
|
||||
process.exit()
|
||||
|
||||
Logger.info("Migrations completed.")
|
||||
|
||||
@@ -3,7 +3,11 @@ import {
|
||||
ModulesDefinition,
|
||||
} from "@medusajs/modules-sdk"
|
||||
import { MODULE_RESOURCE_TYPE } from "@medusajs/types"
|
||||
import { ContainerRegistrationKeys, isString } from "@medusajs/utils"
|
||||
import {
|
||||
ContainerRegistrationKeys,
|
||||
isString,
|
||||
MedusaV2Flag,
|
||||
} from "@medusajs/utils"
|
||||
import { asValue } from "awilix"
|
||||
import { Express, NextFunction, Request, Response } from "express"
|
||||
import { createMedusaContainer } from "medusa-core-utils"
|
||||
@@ -77,9 +81,7 @@ async function loadLegacyModulesEntities(configModules, container) {
|
||||
}
|
||||
}
|
||||
|
||||
async function loadMedusaV2({ directory, expressApp }) {
|
||||
const configModule = loadConfig(directory)
|
||||
|
||||
async function loadMedusaV2({ configModule, featureFlagRouter, expressApp }) {
|
||||
const container = createMedusaContainer()
|
||||
|
||||
// Add additional information to context of request
|
||||
@@ -91,12 +93,9 @@ async function loadMedusaV2({ directory, expressApp }) {
|
||||
next()
|
||||
})
|
||||
|
||||
const featureFlagRouter = featureFlagsLoader(configModule, Logger)
|
||||
|
||||
const pgConnection = await pgConnectionLoader({ container, configModule })
|
||||
|
||||
container.register({
|
||||
[ContainerRegistrationKeys.MANAGER]: asValue(dataSource.manager),
|
||||
[ContainerRegistrationKeys.LOGGER]: asValue(Logger),
|
||||
featureFlagRouter: asValue(featureFlagRouter),
|
||||
[ContainerRegistrationKeys.CONFIG_MODULE]: asValue(configModule),
|
||||
@@ -142,11 +141,13 @@ export default async ({
|
||||
app: Express
|
||||
pgConnection: unknown
|
||||
}> => {
|
||||
if (process.env.MEDUSA_FF_MEDUSA_V2 == "true") {
|
||||
return await loadMedusaV2({ directory: rootDirectory, expressApp })
|
||||
}
|
||||
|
||||
const configModule = loadConfig(rootDirectory)
|
||||
const featureFlagRouter = featureFlagsLoader(configModule, Logger)
|
||||
track("FEATURE_FLAGS_LOADED")
|
||||
|
||||
if (featureFlagRouter.isFeatureEnabled(MedusaV2Flag.key)) {
|
||||
return await loadMedusaV2({ configModule, featureFlagRouter, expressApp })
|
||||
}
|
||||
|
||||
const container = createMedusaContainer()
|
||||
container.register(
|
||||
@@ -163,9 +164,6 @@ export default async ({
|
||||
next()
|
||||
})
|
||||
|
||||
const featureFlagRouter = featureFlagsLoader(configModule, Logger)
|
||||
track("FEATURE_FLAGS_LOADED")
|
||||
|
||||
container.register({
|
||||
[ContainerRegistrationKeys.LOGGER]: asValue(Logger),
|
||||
featureFlagRouter: asValue(featureFlagRouter),
|
||||
|
||||
Reference in new issue
Block a user