Можно ли использовать CodeDeploy для использования локально кэшированных ревизий из предыдущего развертывания? - PullRequest
0 голосов
/ 05 октября 2019

Я пытаюсь использовать CodeDeploy для эффективного перезапуска моего сервиса для меня (при правильном взаимодействии с балансировщиком нагрузки). Для этого я копирую предыдущее развертывание и повторно внедряю.

К сожалению, как часть повторного развертывания, CodeDeploy повторно загружает пакет из корзины S3, даже если содержимое уже было на хост-компьютере. .

Есть ли способ дать CodeDeploy , а не повторно загрузить корзину и просто использовать существующий пакет ревизий на машине?

Если нет, то какая польза от сохранения на хост-компьютере больше, чем самая последняя версия?

1 Ответ

2 голосов
/ 06 октября 2019

Есть ли способ указать CodeDeploy не перезагружать корзину и просто использовать существующий комплект ревизий на машине?

AFAIK, этоневозможно. Каждый раз, когда CodeDeploy развертывается, он создает DeploymentId. Это неизменное значение.

Если его нет, то в чем преимущество сохранения на хост-компьютере больше, чем самая последняя версия?

Предыдущая версия используется для запуска сценариев ловушки жизненного цикла ApplicationStop. Кроме этого вы не обязаны сохранять более старые версии. Свойство «: max_revisions:» можно настроить в конфигурационном файле агента CodeDeploy [1], чтобы указать, сколько ревизий хранить (по умолчанию 5). Это значение должно быть> = 1.

[1] https://docs.aws.amazon.com/codedeploy/latest/userguide/reference-agent-configuration.html

...