По сути, я пытаюсь создать простой многоузловый env с помощью varnish + nginx + mariadb + memcached. К настоящему времени мне удалось запустить среду и прикрепить к ней проект git. Проблема в том, что мы работаем с php и symfony2, которые требуют, чтобы composer был выполнен хотя бы один раз, чтобы правильно развернуть приложение.
Вне jelastic мы используем Jenkins + Ant (но мы не масштабируем по горизонтали в автоматическом режиме в проектах, где используется эта настройка, поэтому нет проблем с добавлением узла вручную).
Итак, вопрос: как я могу запускать composer или ant с build.xml при каждом развертывании?
Я вижу, что среда Java имеет опцию сервера сборки, есть ли что-то подобное для сред php?
Проекты PHP не имеют «стандартного» сервера сборки, как это делают многие проекты Java — требования к инструментам сборки PHP более разнообразны в зависимости от конкретного проекта.
Например, один клиент может попросить хрюкать, другой — муравья, а другой — звонить.
Если вы хотите выполнить сложную сборку, вы можете создать свой собственный узел сборки для своего проекта PHP, используя Elastic VPS или отдельную среду Docker. Чтобы развернуть построенный проект на ваших серверах, вы можете использовать SSH-соединения или просто выполнить git push и настроить среду выполнения на автоматическое обновление (например, через функцию ZDT) из этого git repo / branch.
Если ваши потребности более просты, вы можете установить composer напрямую на ваш узел времени выполнения php обычным способом через SSH.
Например.
$ curl -sS https://getcomposer.org/installer | php
Есть более подробные советы о том, как привести это в порядок (добавить в свой PATH и т. Д.) На http://kb.layershift.com/jelastic-install-composer
Других решений пока нет …