Что касается документов,
Представьте, что у меня есть .ebextension / 03_hooks.config, в котором есть
commands:
create_app_deploy_post_dir:
command: "mkdir -p /opt/elasticbeanstalk/hooks/appdeploy/post"
ignoreErrors: true
files:
"/opt/elasticbeanstalk/hooks/appdeploy/post/99-post-deploy-test.sh":
mode: "000755"
owner: root
group: root
content: |
#!/usr/bin/env bash
eventHelper.py --msg "Successfully executing post deployment hook." --severity INFO
Файл не создается и не выполняется во время самого первого развертывания, то есть когда экземпляр EC2 добавляется во время создания env или автоматического масштабирования. Новый экземпляр почти бесполезен и станет полезным только при следующем принудительном повторном развертывании приложения с помощью eb deploy
или разверните zip из версий приложения.
Наблюдение
commands
директива также не выполняется, поскольку я проверил журналы eb.Реальный вариант использования: у меня есть скрипты перехвата для написания и запуска / перезапуска nginx и uwsgi в appdeploy enack и post. Поэтому, если они не выполняются в новых экземплярах, до следующего развертывания будет периодически возвращаться 502.