我有我的cloudformation json模板,它有资源(VPC是特定的)标签映射如下:
"Tags" : [ {"Key" : "Name", "Value" : "nameofresource"} ]
现在我使用命令
aws cloudformation create-stack --stack-name stackname --template-body file://template.json
我想从参数中传递名称。我尝试使用
--parameters ParameterKey=Name,ParameterValue=somevalue
在我的模板之后。但它会引发错误。我还尝试用"Value"
替换JSON中的"Ref" : "paramkeyvalue"
,并根据需要从cli中传递它。
如何从参数中传递名称?
答案 0 :(得分:1)
将参数Key和value name替换为ParameterKey和ParameterValue
- 参数ParameterKey = Name,ParameterValue = somevalue
“Tags”:[{“ParameterKey”:“Name”,“ParameterValue”:“somevalue”}]
答案 1 :(得分:1)
<强>命令:强>
aws cloudformation create-stack --stack-name "MyVPC" --template-body file://test.yaml --parameters ParameterKey=Name,ParameterValue="MyVPC"
<强> test.yaml 强>
{
"Parameters": {
"Name": {
"Type": "String",
"Default": "MyName"
}
},
"Resources": {
"myVPC": {
"Type": "AWS::EC2::VPC",
"Properties": {
"CidrBlock": "10.0.0.0/16",
"EnableDnsSupport": "false",
"EnableDnsHostnames": "false",
"InstanceTenancy": "default",
"Tags": [{
"Key": "Name",
"Value": {
"Ref": "Name"
}
}]
}
}
}
}