问题描述
我正在尝试将新堆栈添加到现有的 cloudformation 基础架构中。但出于某种原因,新堆栈没有与其他堆栈一起部署。
当我单独部署这个新堆栈时,它可以正常工作。
代码如下:
FILE1.ts
export class newStack extends Construct {
readonly onestack: Onestack;
readonly twoStack: TwoStack;
readonly Mynewstack: Mynewstack;
constructor(scope: Construct,id: string,props: someProps) {
super(scope,id);
const { env,region,stageSetting } = props;
this.onestack = new Onestack(this,`${id}-Onestack`,{
...props,stackName: `${id}-ABCDEFG`,});
this.twoStack = new TwoStack(scope,`${id}-TwoStack`,});
this.Mynewstack = new Mynewstack(this,`${id}-Alarms`,});
}
}
FILE2.ts
deploymentgrps.push({
name: "name"
stacks: [
newStack.onestack,newStack.twoStack,newStack.MynewstackStack,],deploymentRule: "rules here"
});
regularDeploymentGroupOpts.forEach((grp_member) => pipeline.addDeploymentGroup(grp_member))
在其他文件中,在做时
const abc = new newStack()
应该生成所有堆栈,这是我的理解。 在部署 CDK 更改时,Mynewstack 不会像 onestack 和 twoStack 那样部署。有没有人看到我在这里遗漏的任何东西?
解决方法
您应该检查您将部署的堆栈列表。
cdk ls
例如:
oneStack
twoStack
myNewStack
那么你要部署所有的栈:
cdk deploy oneStack twoStack myNewStack