deployer.org - утилита для деплоя на php

hell0w0rd

Продвинутый новичок
https://gist.github.com/nkt/6d7106f30c6614e42d9f - я вот что себе написал недавно на эту тему для автоматического деплоя на дев-сервере, чтобы клиент видел, как продвигается процесс. В .git/hooks/post-merge пишем скрипт, который выполняет непосредственно деплой и все отлично.
В gitlab хук добавляем и радуемся:)
 

fixxxer

К.О.
Партнер клуба

grigori

( ͡° ͜ʖ ͡°)
Команда форума
У нас все могут коммитить в мастер, но выкладка готовится в отдельной ветке, и выполняется после тестирования.
Например, вчера после выкладки кода надо было выполнить экспорт списка пользователей в unisender, а выкладка важных фич сопровождается маркетинговой кампанией вроде обзвона важных юзеров.
Мне даже странно, что выкладывать можно напрямую из мастера.
А как откатываться при ошибках, которые тестировщики на stage не замечают, и репортят через 2 минуты после выкладки?
 
Последнее редактирование:

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
grigori, ну у нас нет бэк офиса и посему нужен более простой сценарий. Хотя в бытность работы в одной бонусной системе с гирькой на логотипе было нечто похожее)
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
простой или не простой, а как без приемочных тестов выкладываться?
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
grigori, выложить то, что лежит в мастер ветке. Все.
 

Absinthe

жожо
Оно активно хотело мои деньги еще до того, как я понял, что это такое.
Не понятна целевая аудитория: отсутсвие бесплатного плана - плохо для крошечных команд, SaaS - плохо для крупного бизнеса.

Судя по описанию, подходит только для домашних страничек с околонулевой доходностью. В иных случаях писать в прод по пушу недопустимо.

http://rocketeer.autopergamene.eu аналог capistrano на php, поддерживает релизы и можно узанть как просто таск ранер.
Я тоже хотел про эту штуку написать и обсудить ее.
Почему просто не использовать capistrano, зачем искать его аналог, написанный на PHP? Какая разница, на чем написано ПО, которое ты используешь, если под капот не лезешь?
Внизу главной страницы Rocketeer написано "Why not Capistrano?", но в тексте этом я не нашел обоснованного ответа на вопрос "Why not Capistrano?"
Похоже на очередной случай NIH-синдрома.

У нас все могут коммитить в мастер, но выкладка готовится в отдельной ветке, и выполняется после тестирования.
+1. И тот тег, который выкладывается на прод, тоже должно быть оттестирован не только автоматически, но и руками, если правки были значительными.
 

fixxxer

К.О.
Партнер клуба
Касаемо стейджинга. По-хорошему, на продакшен должен выкладываться ровно тот же .tgz (целиком собранный, с папочкой vendor, после всяких там gulp etc), который прошел обкатку на стейджинге.
 

AmdY

Пью пиво
Команда форума
Absinthe, в принципе, я согласен на Capistrano, но как-то странно для php разработки разворачивать сервер с java+ jenkins для CI, ruby + capistrano для деплоя, nodejs + gulp для ассетов, bash - для консоли, php - потому что пишем на нём. А фабьен ещё GO планирует где-то в Symfony прикрутить.

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

grigori

( ͡° ͜ʖ ͡°)
Команда форума
перекидывания линков на ревизии почти обязательное условие.
я отказался от симлинков, указывать версию в конфиге nginx удобнее - нет проблем с версионированием и выкладкой предварительно скомпилированных js и css, нет зависимости фронта от приложения

если css и js публиковать из приложения - нужен расчет md5 чтобы дописать в параметр, его надо как-то кешировать, а чтобы при обновлении в приложении обновить на сайте - сравнивать даты модификации файлов и оригиналов. фреймворк все это делает, в принципе, но надо следить чтобы все прошло нормально и помнить о соглашениях

я предпочитаю готовить релиз, протестировать его и выложить бинарно идентичную копию, и чтобы не было проблем с кешем, иначе через минуту начинаются звонки клиентов.
 
Последнее редактирование:

hell0w0rd

Продвинутый новичок
Вурдалак, на конфе одной фабьен рассказал какое говно php и прекрасный симфони, потом рассказал про способы ускорить php, про то, что симфони так-то позволяет тривиально перейти с запрос-ответ-умер на поднялся-(запрос-ответ)*-умер. И что-то под это он вроде как пишет на Go. Надо же как-то 5кк евро отработать:)
 
Сверху