[英]How to deploy a specific stack using AWS SDK?
In my AWS CDK/ Typescript project I have 1 main stack ie aws-microservices-stack.ts
在我的 AWS CDK/Typescript 项目中,我有 1 个主堆栈,即aws-microservices-stack.ts
rest all typescript files are just constructs extended in aws-microservices-stack.ts
其余所有打字稿文件只是在aws-microservices-stack.ts
中扩展的构造
But when I run cdk deploy
I get error但是当我运行cdk deploy
我得到错误
Since this app includes more than a single stack, specify which stacks to use (wildcards are supported) or specify
--all
Stacks: AwsMicroservicesStack · AwsMicroservicesStack/Database · AwsMicroservicesStack/Microservices · AwsMicroservicesStack/ApiGateway由于此应用程序包含多个堆栈,请指定要使用的堆栈(支持通配符)或指定--all
Stacks:AwsMicroservicesStack · AwsMicroservicesStack/Database · AwsMicroservicesStack/Microservices · AwsMicroservicesStack/ApiGateway
How can I mark aws-microservices-stack.ts
so that deploy command picks up only that stack我如何标记aws-microservices-stack.ts
以便部署命令仅选择该堆栈
aws-microservices-stack.ts aws-微服务-stack.ts
import { Stack, StackProps } from 'aws-cdk-lib';;
import { Construct } from 'constructs';
import { SwnApiGateway } from './apigateway';
import { SwnDatabase } from './database';
import { SwnMicroServices } from './microservices';
export class AwsMicroservicesStack extends Stack {
constructor(scope: Construct, id: string, props?: StackProps) {
super(scope, id, props);
const database = new SwnDatabase(this, 'Database');
....
}
}
database.ts数据库.ts
import { RemovalPolicy, Stack } from 'aws-cdk-lib';
import { AttributeType, BillingMode, ITable, Table } from 'aws-cdk-lib/aws-dynamodb';
import { Construct } from 'constructs';
export class SwnDatabase extends Stack {
public readonly productTable: ITable;
constructor(scope: Construct, id: string) {
super(scope, id);
// DynamoDb Table
const productTable = new Table(this, 'product', {
partitionKey: {
name: 'id',
type: AttributeType.STRING
},
tableName: 'product',
removalPolicy: RemovalPolicy.DESTROY,
billingMode: BillingMode.PAY_PER_REQUEST
});
this.productTable = productTable;
}
}
You can do你可以做
cdk deploy $stack_name --exclusively
From the CLI help docs:来自 CLI 帮助文档:
-e, --exclusively Only deploy requested stacks, don't include dependencies [boolean] -e, --exclusively 仅部署请求的堆栈,不包括依赖项 [boolean]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.