Как увеличить время ожидания развертывания Elastic Beanstalk?

13

Как часть моего развертывания приложения, у меня есть некоторые commandsв моих .ebextensionsфайлах конфигурации. Выполнение всех команд может занять 20 минут или более при первом запуске команд (клонирование больших репозиториев).

К сожалению, это вызывает тайм-аут во время развертывания:

INFO Deploying new version to instance(s).
WARN The following instances have not responded in the allowed command
     timeout time (they might still finish eventually on their own).
INFO Command execution completed. Summary: [Successful: 0, TimedOut: 1].

Можно ли увеличить этот тайм-аут? Я не могу найти эту опцию в настройках своего окружения.

Вениамин
источник
1
GIYF, вы можете использовать ebextensions: stackoverflow.com/questions/25557874/…
Лукас Карвалью
Спасибо за указатель, если вы добавите резюме связанного ответа ниже, я отмечу ваш ответ как принятый!
Бенджамин

Ответы:

11

Вы можете добавить файлы конфигурации AWS Elastic Beanstalk (.ebextensions) в исходный код веб-приложения, чтобы настроить свою среду и настроить содержащиеся в нем ресурсы AWS.

option_settingsРаздел конфигурационного файла определяет значения для параметров конфигурации . Параметры конфигурации позволяют настроить среду Elastic Beanstalk, ресурсы AWS в ней и программное обеспечение, которое запускает ваше приложение.

Добавьте файлы конфигурации в ваш исходный код в папку с именем .ebextensions и разверните ее в вашем исходном пакете приложения.

Пример:

option_settings:
    - namespace: aws:elasticbeanstalk:command
      option_name: Timeout
      value: 1000

* «значение» представляет промежуток времени до истечения времени ожидания в секундах.

Ссылки: Официальный AWS Elastic Beanstalk конфигурации окружающей среды и Общие параметры для всех окружений , это StackOverflow ответ и это разместить AWS Форум разработчиков.

Лукас Карвалью
источник
0

Вы можете испечь репо в AMI и использовать его в качестве эластичного бобового стебля. Таким образом, проверка не так долго.

С другой стороны, что вы делаете, клонируя массовые репозитории в рамках развертывания ?

Alex
источник
Я всегда неохотно использовал пользовательский AMI, чтобы он был простым. Ваша последняя заметка - хорошая мысль. Мое приложение имеет встроенный генератор логотипов, который нуждается в обширном списке шрифтов, чтобы предложить пользователю на выбор. Я не хочу связывать эти шрифты с моим приложением, чтобы поддерживать размер в разумных пределах, поэтому мои сценарии развертывания клонируют большой репозиторий, как только приложение отправляется на серверы. Возможно, это не лучший подход, но это лучший, который я нашел до сих пор.
Бенджамин