in packages/cli/lib/mdaa-cli.ts [355:409]
private computeEnvDeployStages(moduleEffectiveConfigs: ModuleEffectiveConfig[]): DeployStageMap {
const deployStages: DeployStageMap = {};
moduleEffectiveConfigs
.filter(
moduleEffectiveConfig =>
this.devopsMode ||
this.moduleFilter == undefined ||
this.moduleFilter?.includes(moduleEffectiveConfig.moduleName),
)
.forEach(moduleEffectiveConfig => {
const logPrefix = `${moduleEffectiveConfig.domainName}/${moduleEffectiveConfig.envName}/${moduleEffectiveConfig.moduleName}`;
console.log(`Module ${logPrefix}: Prepping packages`);
const moduleDeploymentConfig = this.prepModule(moduleEffectiveConfig);
const customNamingModulePath =
moduleEffectiveConfig.customNaming && moduleEffectiveConfig.customNaming.naming_module.startsWith('@')
? this.prepNpmPackage(logPrefix, moduleEffectiveConfig.customNaming.naming_module)
: moduleEffectiveConfig.customNaming?.naming_module;
const installedCustomNamingModule: MdaaCustomNaming | undefined = customNamingModulePath
? {
naming_module: `${customNamingModulePath}`,
naming_class: moduleEffectiveConfig.customNaming?.naming_class || '',
naming_props: moduleEffectiveConfig.customNaming?.naming_props,
}
: undefined;
const installedCustomAspects: MdaaCustomAspect[] = moduleEffectiveConfig.customAspects?.map(customAspect => {
const [customAspectPath] = customAspect.aspect_module.startsWith('@')
? this.prepNpmPackage(logPrefix, customAspect.aspect_module)
: [customAspect.aspect_module, true];
return {
aspect_module: customAspectPath,
aspect_class: customAspect.aspect_class,
aspect_props: customAspect.aspect_props,
};
});
const installedModuleConfig: ModuleDeploymentConfig = {
...moduleDeploymentConfig,
customAspects: installedCustomAspects,
customNaming: installedCustomNamingModule,
};
const deployStage = this.computeModuleDeployStage(installedModuleConfig);
if (deployStages[deployStage]) {
deployStages[deployStage].push(installedModuleConfig);
} else {
deployStages[deployStage] = [installedModuleConfig];
}
});
return deployStages;
}