Amazon cloudformation AWS Cloudformation-如何根据条件存储SSM值
我正在尝试使用cloudformation模板使用SSM。但是,我无法找出如何根据条件存储每个环境的不同值 代码部署管道传递Amazon cloudformation AWS Cloudformation-如何根据条件存储SSM值,amazon-cloudformation,aws-ssm,Amazon Cloudformation,Aws Ssm,我正在尝试使用cloudformation模板使用SSM。但是,我无法找出如何根据条件存储每个环境的不同值 代码部署管道传递Stage参数,我可以使用该参数了解代码部署到的环境 Resources: SNSTopicName: Type: AWS::SSM::Parameter Properties: Description: SNS Topic Name Name: !Sub "/${Stage}/broker_name"
Stage
参数,我可以使用该参数了解代码部署到的环境
Resources:
SNSTopicName:
Type: AWS::SSM::Parameter
Properties:
Description: SNS Topic Name
Name: !Sub "/${Stage}/broker_name"
Type: String
Value: ""
如何根据
阶段
变量设置值的条件以下是其中一种方法
我假设您有如下定义的Stage参数,但如果Stage
参数的定义/声明对您来说有所不同。计算出如下所示的Broker
,对相关逻辑没有影响/改变
Parameters:
Stage:
Type: String
AllowedValues:
- dev
- tst
- acc
- prd
Mappings:
Common:
dev:
Broker: Development
tst:
Broker: Test
acc:
Broker: Acceptance
prd:
Broker: Production
SNSTopicName:
Type: AWS::SSM::Parameter
Properties:
Description: SNS Topic Name
Name: !Sub "/${Stage}/broker_name"
Type: String
Value: !FindInMap
- Common
- !Ref "Stage"
- Broker
其中,常见的是map,其键作为Stage参数的值,值为Broker以下是一种方法 我假设您有如下定义的Stage参数,但如果
Stage
参数的定义/声明对您来说有所不同。计算出如下所示的Broker
,对相关逻辑没有影响/改变
Parameters:
Stage:
Type: String
AllowedValues:
- dev
- tst
- acc
- prd
Mappings:
Common:
dev:
Broker: Development
tst:
Broker: Test
acc:
Broker: Acceptance
prd:
Broker: Production
SNSTopicName:
Type: AWS::SSM::Parameter
Properties:
Description: SNS Topic Name
Name: !Sub "/${Stage}/broker_name"
Type: String
Value: !FindInMap
- Common
- !Ref "Stage"
- Broker
其中,Common是map,其键作为Stage参数的值,值为Broker