CloudFormation UpdateStack

У меня есть стек, который изначально создается из шаблона CloudFormation. Мне нужно добавить некоторые динамические теги в node.js, когда я сохраняю файл в моем ведре s3. Это мой код.

let date = new Date();
let currentDate = date.toISOString();

let cloudFormationParams = {
    StackName: 'name-of-stack-created-from-cloud-formation', 
    Tags: [
      {
        Key: 'CurrentDate',
        Value: currentDate
      },
      /* more items */
    ],
    UsePreviousTemplate: true 
  };

  await cloudformation.updateStack(cloudFormationParams, (err, data) => {
    if (err) {
        console.info(err, err.stack); // an error occurred
        return { status: "error" }
    } else {
        console.info(data);           // successful response

    }
}).promise();

Это дает мне ошибку «ValidationError», «errorMessage»: «Стек: находится в состоянии UPDATE_IN_PROGRESS и не может быть обновлен.

Кто-нибудь может сказать мне, что я делаю не так?

эта ошибка просто означает, что ваш стек в настоящее время находится в процессе обновления .... подождите, пока ваш стек не перейдет в окончательное состояние (заканчивающееся на COMPLETE или FAILED), и повторите попытку

JD D 31.03.2021 03:47

Чтобы расширить проблему, я пытаюсь вызвать функцию для сохранения каждого файла в цикле for. Эта функция содержит код для обновления стека. Тег добавляется правильно для первого файла в цикле, но все файлы после этого генерируют ошибку.

MountainBiker 31.03.2021 03:59
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
2
23
1

Ответы 1

Nodejs предоставляет метод ждать, который позволяет вам подождите в своем коде для стека, находящегося в состоянии, если это интересно. Возможные состояния, которых вы можете дождаться:

  • stackExists
  • stackCreateComplete
  • stackUpdateComplete
  • и больше.

Таким образом, вы можете добавить wait_for с stackUpdateComplete в свой код, прежде чем выполнять дальнейшие действия со стеком.

Другие вопросы по теме