Обработка динамического значения параметра при создании стека в AWS - PullRequest
1 голос
/ 21 мая 2019

Может кто-нибудь помочь мне в обработке динамического «ParameterValue» в файле parameter.json.

Я запускаю «cloudformation create-stack» и передаю в --parameters файл parameter.json, в файле мало «ParameterValue», который должен быть динамическим, например, отметка времени и добавление значений индекса из цикла и т. Д. ... так, как я могу изменить файл parameters.json для обработки динамических значений.

Альтернативный способ, которым я мог бы воспользоваться, это просто не использовать файл parameters.json и передавать ключ, значение, как показано ниже, команде create-stack внутри цикла в сценарии,

- параметры ParameterKey = "XYZ", ParameterValue = "$ {someval} $ {index}"

1 Ответ

0 голосов
/ 22 мая 2019

Я бы создал parameters.json.template файл для хранения значений в их параметризованной форме, как вы видите:

[
    {
        "ParameterKey": "XYZ",
        "ParameterValue": "{someval}{index}"
    },
    {
        "ParameterKey": "ABC",
        "ParameterValue": "staticval-{suffix}"
    }
]

Я предполагаю, что вы делаете это в кли, основываясь на использовании флага --parameters. В этом случае я бы создал скрипт для слияния файла шаблона со значениями (в сгенерированный файл) и после этого вызвал бы команду create-stack cli.

Примерно так в 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 ...

Это, конечно, предполагает, что ваш скрипт имеет доступ к вашим динамическим значениям.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...