gpt4 book ai didi

json - AWS CLI-为参数分配多个值的语法是什么

转载 作者:行者123 更新时间:2023-12-03 23:45:16 26 4
gpt4 key购买 nike

例如,我有一个需要这些参数的 CF 模板

----- cftemplate.yaml -----
...
Parameters:
**Subnet:
Description: Subnet for the Instance
Type: 'AWS::EC2::Subnet::Id'
SecurityGroups:
Description: Security Group for Instance
Type: 'List<AWS::EC2::SecurityGroup::Id>'**
...
Resources:
EC2Instance:
Type: AWS::EC2::Instance
Properties:
...
**SubnetId: !Ref Subnet
SecurityGroupIds: !Ref SecurityGroups**
...
----- cftemplate.yaml -----

为了部署堆栈,我使用以下命令:

aws cloudformation create-stack --stack-name StackName --template-body file://cftemplate.yaml --parameters file://params.json

其中 params.json 包含:

----- params.json ----- 
[
{
"ParameterKey":"Subnet",
"ParameterValue":"subnet-11111111"
},
{
"ParameterKey":"SecurityGroups",
"ParameterValue":"sg-111111111",
"ParameterValue":"sg-222222222"
}
]
----- params.json -----

现在,我的目标是消除 .json 文件的使用。有谁知道该命令的简写语法应该达到与上述命令相同的效果?似乎无法在在线文档中找到此内容。预先感谢!

最佳答案

等效的命令行是(为了澄清而稍微重新格式化):

aws cloudformation create-stack \
--stack-name StackName \
--template-body file://cftemplate.yaml \
--parameters ParameterKey=Subnet,ParameterValue=subnet-11111111 ParameterKey=SecurityGroups,ParameterValue=sg-111111111\\,sg-222222222

在上面注意空格和逗号很重要。

我使用自己的参数和沙箱帐户验证该命令:

aws cloudformation create-stack --stack-name StackName --template-body file://instance.yaml --parameters ParameterKey=Subnet,ParameterValue=subnet-0ae6ce0f9bbf52251 ParameterKey=SecurityGroups,ParameterValue=sg-06d2a3e9c8aa99620\\,sg-004d23d188ec1146f

这是正确的并且会导致开始部署堆栈的过程:

{
"StackId": "arn:aws:cloudformation:us-east-1:xxxxxx:stack/StackName/61fbacd0-d3b0-11ea-970a-0ad23187ddb2"
}

关于json - AWS CLI-为参数分配多个值的语法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63201410/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com