Amazon web services 在AWS中创建堆栈时处理动态参数值

Amazon web services 在AWS中创建堆栈时处理动态参数值,amazon-web-services,amazon-ec2,Amazon Web Services,Amazon Ec2,有人能帮我处理parameter.json文件中的动态“ParameterValue”吗 我正在运行“cloudformation create stack”并传入--parameters一个parameter.json文件,该文件中几乎没有需要动态的“ParameterValue”,例如,时间戳和从循环中附加索引值等等。。。那么,如何修改parameters.json文件来处理动态值呢 我可以使用的另一种方法是不使用parameters.json文件,并将键、值(如下所示)传递给脚本中循环内的

有人能帮我处理parameter.json文件中的动态“ParameterValue”吗

我正在运行“cloudformation create stack”并传入--parameters一个parameter.json文件,该文件中几乎没有需要动态的“ParameterValue”,例如,时间戳和从循环中附加索引值等等。。。那么,如何修改parameters.json文件来处理动态值呢

我可以使用的另一种方法是不使用parameters.json文件,并将键、值(如下所示)传递给脚本中循环内的createstack命令


--parameters ParameterKey=“XYZ”,ParameterValue=“${someval}${index}”

我将创建
parameters.json.template
文件,以保存参数化形式的值,如您所示:

[
    {
        "ParameterKey": "XYZ",
        "ParameterValue": "{someval}{index}"
    },
    {
        "ParameterKey": "ABC",
        "ParameterValue": "staticval-{suffix}"
    }
]
我假设您是在cli上执行此操作的,基于
--parameters
标志的使用。在这种情况下,我将创建一个脚本,将模板文件与值合并(合并到生成的文件中),然后调用createstackcli命令

linux上的类似内容:

#! /bin/bash

# create output file from template
cp templates/parameters.json.template generated/parameters.json

# merge dynamic values into templated file
sed -i "s/{someval}/$SOME_VAL/g" generated/parameters.json
sed -i "s/{index}/$INDEX/g" generated/parameters.json
sed -i "s/{suffix}/$SUFFIX/g" generated/parameters.json

aws cloudformation create-stack ... --parameters generated/parameters.json ...

当然,这假定脚本可以访问动态值。

我将创建
parameters.json.template
文件,以参数化形式保存值,如图所示:

[
    {
        "ParameterKey": "XYZ",
        "ParameterValue": "{someval}{index}"
    },
    {
        "ParameterKey": "ABC",
        "ParameterValue": "staticval-{suffix}"
    }
]
我假设您是在cli上执行此操作的,基于
--parameters
标志的使用。在这种情况下,我将创建一个脚本,将模板文件与值合并(合并到生成的文件中),然后调用createstackcli命令

linux上的类似内容:

#! /bin/bash

# create output file from template
cp templates/parameters.json.template generated/parameters.json

# merge dynamic values into templated file
sed -i "s/{someval}/$SOME_VAL/g" generated/parameters.json
sed -i "s/{index}/$INDEX/g" generated/parameters.json
sed -i "s/{suffix}/$SUFFIX/g" generated/parameters.json

aws cloudformation create-stack ... --parameters generated/parameters.json ...

当然,这假设脚本可以访问动态值。

在创建堆栈操作之前,您需要在过程中的什么时候评估参数中的动态值。在创建堆栈操作之前,您需要在过程中的什么时候评估参数中的动态值。。