import { MrDeploymentConfig, MrDeployConfigProperties, DeploymentLocationConfig, MrDeploymentConfigVolume, MrDeploymentConfigMountPoint } from '.'; import { MonoRepoPackage } from '@cirrusct/mr-core'; import { PackageTemplateModel, PackageTemplateOptions } from '@cirrusct/mr-templates'; import { BuildSpecConfig } from '@cirrusct/mr-build'; import { MrCommandOptions } from '@cirrusct/mr-command'; import { TemplateSourceFile } from '@cirrusct/templates'; export interface MrDeployOptions extends PackageTemplateOptions, MrCommandOptions { output?: string; generate?: boolean; showConfig?: boolean; deployment?: string; } export interface DeployTemplateModel extends PackageTemplateModel { deploymentName: string; deploymentNameDashed: string; properties?: MrDeployConfigProperties; dependsOnServers?: DeployTemplateModel[]; startCmds: string[]; port?: number; volumes?: MrDeploymentConfigVolume[]; mountPoints?: MrDeploymentConfigMountPoint[]; portWs?: number; currentServer?: DeployTemplateModel; locations: DeploymentLocationConfig[]; } export interface ResolvedDeploymentConfig extends MrDeploymentConfig { name: string; mrPackage: MonoRepoPackage; templateSourceFiles: TemplateSourceFile[]; dependsOnServersResolvedConfigs: ResolvedDeploymentConfig[]; buildSpec: BuildSpecConfig; options: MrCommandOptions; }