Как обойти CodeDeploy с помощью успешного развертывания N-1 - PullRequest
1 голос
/ 21 февраля 2020

Текущая реализация CodeDeploy имеет такую ​​возможность, что в случае успешного развертывания N-1 все развертывание будет успешным. Однако у нас есть случай, когда ВСЕ N развертываний должны быть успешными, а не только N-1 (N - это общее количество целевых серверов, на которых мы развертываем). Итак, чтобы обойти это ограничение, мы увидели, что можем создавать аварийные сигналы и добавлять их в группу развертывания. И если срабатывает сигнал тревоги, любое развертывание, выполняемое группой развертывания, завершится неудачей. Мой вопрос заключается в том, как мы можем активировать эту тревогу во время развертывания, чтобы вызвать сбой развертывания?

Заранее большое спасибо.

1 Ответ

0 голосов
/ 06 марта 2020

Вы можете использовать вызов set-alarm-state aws cli для установки любого состояния тревоги. Это больше для целей тестирования, но может работать для вашего случая использования:

https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/set-alarm-state.html

Вместо вышеуказанного подхода, который может быть подвержен ошибкам и трудно отладить, Я бы предложил использовать уведомление CodeDeploy для INSTANCE_FAILURE, чтобы ответить на сбой развертывания на экземпляре во время развертывания:

https://aws.amazon.com/blogs/aws/new-notifications-for-aws-codedeploy-events/

...