为 AWS Cloudformation 中的资源名称传递标签键和值
Pass tag Key and Value for resource name in AWS Cloudformation
我有我的 cloudformation json 模板,其中包含资源(具体为 VPC)标签映射如下:
"Tags" : [ {"Key" : "Name", "Value" : "nameofresource"} ]
现在我是 运行 这个来自 shell 脚本的命令
aws cloudformation create-stack --stack-name stackname --template-body file://template.json
我想从参数中传递名称。我尝试使用
--parameters ParameterKey=Name,ParameterValue=somevalue
在我的模板之后。但它会引发错误。我还尝试用 "Ref" : "paramkeyvalue"
替换 JSON 中的 "Value"
并根据 cli 的要求传递它。
如何从参数传递名称?
将参数Key和value名称替换为ParameterKey和ParameterValue
--parameters ParameterKey=Name,ParameterValue=somevalue
"Tags":[{"ParameterKey":"Name","ParameterValue":"somevalue"}]
命令:
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"
}
}]
}
}
}
}
我有我的 cloudformation json 模板,其中包含资源(具体为 VPC)标签映射如下:
"Tags" : [ {"Key" : "Name", "Value" : "nameofresource"} ]
现在我是 运行 这个来自 shell 脚本的命令
aws cloudformation create-stack --stack-name stackname --template-body file://template.json
我想从参数中传递名称。我尝试使用
--parameters ParameterKey=Name,ParameterValue=somevalue
在我的模板之后。但它会引发错误。我还尝试用 "Ref" : "paramkeyvalue"
替换 JSON 中的 "Value"
并根据 cli 的要求传递它。
如何从参数传递名称?
将参数Key和value名称替换为ParameterKey和ParameterValue
--parameters ParameterKey=Name,ParameterValue=somevalue
"Tags":[{"ParameterKey":"Name","ParameterValue":"somevalue"}]
命令:
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"
}
}]
}
}
}
}