Обновление зависимых стеков - PullRequest
0 голосов
/ 03 марта 2019

У меня есть стек с именем stack-layer, который экспортирует ARN слоя Lambda, и другой стек с именем stack-lambda, который содержит лямбду, которая ссылается на этот слой лямбды.

Когда я пытаюсьОбновление stack-layer, я получаю ошибку: Export layer-arn cannot be deleted as it is in use by stack-lambda, что вполне понятно.Однако я не вижу, как продолжить обновление отсюда.

Есть ли способ обновить такие зависимые стеки? пошаговое руководство Amazon, похоже, вообще не затрагивает эту тему.

1 Ответ

0 голосов
/ 04 марта 2019

Как описано в документации Fn::ImportValue, невозможность изменить ссылочный вывод - это действительно ожидаемое поведение:

Примечание

Следующие ограничения применяются ккросс-стек ссылок:

[...]

  • Нельзя изменить или удалить выходное значение, на которое ссылается другой стек.

Чтобы обойти эту проблему при обновлении вывода, вы можете использовать второе, временное значение Output для обработки перехода:

  1. Обновление stack-layer для добавления второго вывода, содержащего новыйзначение (например, layer-arn-2);
  2. Обновление stack-lambda, изменение ссылки "Fn::ImportValue": "layer-arn" на вместо ссылки layer-arn-2.
  3. Обновление stack-layer для удаления теперь неиспользованного layer-arn Вывод.
    (Или поочередно: обновите stack-layer, чтобы установить для layer-arn то же значение, что и layer-arn-2; обновите stack-lambda для ссылки на layer-arn; затем, наконец, обновите stack-layer, чтобы удалить layer-arn-2 Вывод.

Это немного утомительно, но должно работать.

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