Как описано в документации Fn::ImportValue
, невозможность изменить ссылочный вывод - это действительно ожидаемое поведение:
Примечание
Следующие ограничения применяются ккросс-стек ссылок:
[...]
- Нельзя изменить или удалить выходное значение, на которое ссылается другой стек.
Чтобы обойти эту проблему при обновлении вывода, вы можете использовать второе, временное значение Output для обработки перехода:
- Обновление
stack-layer
для добавления второго вывода, содержащего новыйзначение (например, layer-arn-2
); - Обновление
stack-lambda
, изменение ссылки "Fn::ImportValue": "layer-arn"
на вместо ссылки layer-arn-2
. - Обновление
stack-layer
для удаления теперь неиспользованного layer-arn
Вывод.
(Или поочередно: обновите stack-layer
, чтобы установить для layer-arn
то же значение, что и layer-arn-2
; обновите stack-lambda
для ссылки на layer-arn
; затем, наконец, обновите stack-layer
, чтобы удалить layer-arn-2
Вывод.
Это немного утомительно, но должно работать.