chore(modules-sdk, medusa): Cleanup migration helpers (#7342)

**What**
Cleanup the migrations scripts
This commit is contained in:
Adrien de Peretti authored and GitHub committed 2024-05-15 15:52:26 +00:00
1 parent 17486cda99
commit ec5415ea1a
3 files changed
+78 -38

No files matched your search

+8 -8
View File
@@ -389,15 +389,15 @@ async function MedusaApp_({
} }
} }
if (!revert) { if (revert) {
await MedusaModule.migrateUp( await MedusaModule.migrateDown(
moduleResolution.definition.key, moduleResolution.definition.key,
moduleResolution.resolutionPath as string, moduleResolution.resolutionPath as string,
moduleResolution.options, moduleResolution.options,
moduleResolution.moduleExports moduleResolution.moduleExports
) )
} else { } else {
await MedusaModule.migrateDown( await MedusaModule.migrateUp(
moduleResolution.definition.key, moduleResolution.definition.key,
moduleResolution.resolutionPath as string, moduleResolution.resolutionPath as string,
moduleResolution.options, moduleResolution.options,
@@ -411,15 +411,15 @@ async function MedusaApp_({
...(sharedResourcesConfig?.database ?? {}), ...(sharedResourcesConfig?.database ?? {}),
} }
if (!revert) { if (revert) {
linkModuleMigration && revertLinkModuleMigration &&
(await linkModuleMigration({ (await revertLinkModuleMigration({
options: linkModuleOpt, options: linkModuleOpt,
injectedDependencies, injectedDependencies,
})) }))
} else { } else {
revertLinkModuleMigration && linkModuleMigration &&
(await revertLinkModuleMigration({ (await linkModuleMigration({
options: linkModuleOpt, options: linkModuleOpt,
injectedDependencies, injectedDependencies,
})) }))
+7 -10
View File
@@ -8,9 +8,12 @@ import {
import configModuleLoader from "../loaders/config" import configModuleLoader from "../loaders/config"
import featureFlagLoader from "../loaders/feature-flags" import featureFlagLoader from "../loaders/feature-flags"
import Logger from "../loaders/logger" import Logger from "../loaders/logger"
import { loadMedusaApp, migrateMedusaApp } from "../loaders/medusa-app" import {
loadMedusaApp,
migrateMedusaApp,
revertMedusaApp,
} from "../loaders/medusa-app"
import pgConnectionLoader from "../loaders/pg-connection" import pgConnectionLoader from "../loaders/pg-connection"
import { MedusaAppMigrateDown } from "@medusajs/modules-sdk"
const runLinkMigrations = async (directory) => { const runLinkMigrations = async (directory) => {
const configModule = configModuleLoader(directory) const configModule = configModuleLoader(directory)
@@ -57,18 +60,12 @@ const main = async function ({ directory }) {
}) })
if (args[0] === "run") { if (args[0] === "run") {
await migrateMedusaApp( await migrateMedusaApp({ configModule, container })
{ configModule, container },
{ registerInContainer: false }
)
Logger.info("Migrations completed.") Logger.info("Migrations completed.")
process.exit() process.exit()
} else if (args[0] === "revert") { } else if (args[0] === "revert") {
await MedusaAppMigrateDown( await revertMedusaApp({ configModule, container })
{ configModule, container },
{ registerInContainer: false }
)
await revertIsolatedModulesMigration(configModule) await revertIsolatedModulesMigration(configModule)
Logger.info("Migrations reverted.") Logger.info("Migrations reverted.")
} else if (args[0] === "show") { } else if (args[0] === "show") {
+63 -20
View File
@@ -1,9 +1,10 @@
import { import {
MODULE_PACKAGE_NAMES,
MedusaApp, MedusaApp,
MedusaAppMigrateDown,
MedusaAppMigrateUp, MedusaAppMigrateUp,
MedusaAppOutput, MedusaAppOutput,
MedusaModule, MedusaModule,
MODULE_PACKAGE_NAMES,
Modules, Modules,
ModulesDefinition, ModulesDefinition,
} from "@medusajs/modules-sdk" } from "@medusajs/modules-sdk"
@@ -58,19 +59,18 @@ export function mergeDefaultModules(
return configModules return configModules
} }
export async function migrateMedusaApp( async function runMedusaAppMigrations({
{ configModule,
configModule, container,
container, revert = false,
}: { }: {
configModule: { configModule: {
modules?: CommonTypes.ConfigModule["modules"] modules?: CommonTypes.ConfigModule["modules"]
projectConfig: CommonTypes.ConfigModule["projectConfig"] projectConfig: CommonTypes.ConfigModule["projectConfig"]
} }
container: MedusaContainer container: MedusaContainer
}, revert?: boolean
config = { registerInContainer: true } }): Promise<void> {
): Promise<void> {
const injectedDependencies = { const injectedDependencies = {
[ContainerRegistrationKeys.PG_CONNECTION]: container.resolve( [ContainerRegistrationKeys.PG_CONNECTION]: container.resolve(
ContainerRegistrationKeys.PG_CONNECTION ContainerRegistrationKeys.PG_CONNECTION
@@ -92,12 +92,55 @@ export async function migrateMedusaApp(
} }
const configModules = mergeDefaultModules(configModule.modules) const configModules = mergeDefaultModules(configModule.modules)
await MedusaAppMigrateUp({ if (revert) {
modulesConfig: configModules, await MedusaAppMigrateDown({
remoteFetchData: remoteQueryFetchData(container), modulesConfig: configModules,
sharedContainer: container, remoteFetchData: remoteQueryFetchData(container),
sharedResourcesConfig, sharedContainer: container,
injectedDependencies, sharedResourcesConfig,
injectedDependencies,
})
} else {
await MedusaAppMigrateUp({
modulesConfig: configModules,
remoteFetchData: remoteQueryFetchData(container),
sharedContainer: container,
sharedResourcesConfig,
injectedDependencies,
})
}
}
export async function migrateMedusaApp({
configModule,
container,
}: {
configModule: {
modules?: CommonTypes.ConfigModule["modules"]
projectConfig: CommonTypes.ConfigModule["projectConfig"]
}
container: MedusaContainer
}): Promise<void> {
await runMedusaAppMigrations({
configModule,
container,
})
}
export async function revertMedusaApp({
configModule,
container,
}: {
configModule: {
modules?: CommonTypes.ConfigModule["modules"]
projectConfig: CommonTypes.ConfigModule["projectConfig"]
}
container: MedusaContainer
}): Promise<void> {
await runMedusaAppMigrations({
configModule,
container,
revert: true,
}) })
} }