amazon-web-services - 使用 CDK Deploy 时如何更改 StackName

标签 amazon-web-services aws-cloudformation aws-cdk

我有一个非常简单的 cdk 项目:

import * as cdk from '@aws-cdk/core';
import { TestStack } from '../lib/test-stack';

const app = new cdk.App();
new TestStack(app, 'TestStack');

我可以使用 cdk deploy 轻松部署堆栈,并且堆栈的名称在 AWS 上为“TestStack”。到目前为止,一切都很好。但是我想控制cloudformation中堆栈的名称。有什么方法可以 fdo cdk 部署并更改 AWS 中堆栈的默认名称吗?

像cdk部署--stack-name SomeName之类的东西? ((stack-name是一个组成的命令))

我想知道这一点,因为我希望能够构建一个部署系统,该系统可以从单个 cdk 项目构建多个堆栈。根据输入参数,每个堆栈都会略有不同。类似的东西

cdk deploy --stackName Stack1 --parameters parameters1
cdk deploy --stackName Stack2 --parameters parameters2
cdk deploy --stackName Stack3 --parameters parameters3

最终我将在 AWS 中同时拥有 Stack1、Stack2 和 Stack3。

最佳答案

我是根据上下文做的

//Get data from Conext
const stackName = app.node.tryGetContext('stackName')
new TestCdkProjectStack(app, 'TestCdkProjectStack', {stackName: stackName});

使用--context选项运行CDK部署:

cdk deploy --context stackName=YourStack

您还可以在 cdk.json 文件中添加上下文数据

关于amazon-web-services - 使用 CDK Deploy 时如何更改 StackName,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66983477/

相关文章:

amazon-web-services - 参数: [KeyPair] must have values

amazon-web-services - 如何在部署时将值传递给 AWS CDK?

ios - 通过 AWS SNS 移动推送最小延迟一次性广播 500K 推送通知的最佳策略是什么?

c# - 如何将 GameLift 与 Unity3d 集成作为游戏客户端

regex - CloudFormation 参数动态正则表达式

amazon-web-services - 是否可以通过 Cloudformation 在 AWS datapipeline 中创建数组管道对象?

aws-cloudformation - OpenSearch 1.3 > 2.3 升级,CloudFormation 域更新失败

aws-cdk - 如何创建可以跨堆栈共享的 VPC?

php - 亚马逊MWS PHP5.3错误: Timestamp Must Follow ISO8601

mysql - 无法从 CLI 链接 docker 容器