Если я правильно понял ваш вопрос (вы хотите, чтобы имя условия зависело от параметров), вы можете использовать для этого макрос PyPlate .
AWSTemplateFormatVersion: "2010-09-09"
Transform: [PyPlate]
Description: A stack that provisions a bunch of s3 buckets based on param names
Parameters:
CreateOne:
Type: String
Default: "a"
CreateTwo:
Type: String
Default: "a"
Conditions:
|
#!PyPlate
output = {}
for k in params:
output[k] = {"Fn::Equals" : ["prod", "prod"]}
Resources:
myBucket:
Type: AWS::S3::Bucket
Condition: CreateOne
Обработанный шаблон будет:
{
"AWSTemplateFormatVersion": "2010-09-09",
"Description": "A stack that provisions a bunch of s3 buckets based on param names",
"Parameters": {
"CreateOne": {
"Type": "String",
"Default": "a"
},
"CreateTwo": {
"Type": "String",
"Default": "a"
}
},
"Resources": {
"myBucket": {
"Type": "AWS::S3::Bucket",
"Condition": "CreateOne"
}
},
"Conditions": {
"CreateOne": {
"Fn::Equals": [
"prod",
"prod"
]
},
"CreateTwo": {
"Fn::Equals": [
"prod",
"prod"
]
}
}
}