Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Посоветуйте web deployment tool? И нужен ли он вообще?) 
:(
    Опции темы
Рыжий
Дата 16.10.2011, 01:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Помешанный
***


Профиль
Группа: Завсегдатай
Сообщений: 1423
Регистрация: 19.9.2004

Репутация: нет
Всего: 20



Всем привет!
Имеется сайт, и его несколько тысяч файлов локально и на сервере. 
Разработка ведется на локальном компьютере и далее загружается на сервер. (Ваш К.О.)

Файлы загружаются по FTP. То-есть после некоторых изменений и тестирования, обычно 10-20 файлов вручную копируются на сервер. А это отнимает время и нервы. Еще и нет уверенности - все ли файлы были скопированы  smile 

Встал вопрос об автоматизации этого процесса. Как он реализован у вас? 


1) Сначала думал сделать все через Git. То-есть после commit и push по hook'у обновлять и файлы. Как это сделано тут или тут
Но использовать систему контроля версий для деплоймента - мне лично как-то не удобно. Получается использование одного инструмента вместо другого.

2) Может кто использует простой rsync? Поделитесь какие плюсы / минусы?

3) И наконец пришел к  Deployment Tools. Вещь которая "для этого и предназначена". 
Пока для себя в них вижу один плюс - использование правильного инструмента в нужном месте. 
Из минусов - еще один инструмент за которым придется следить. 

Кто как автоматизировал загрузку измененных файлов на сервер?  smile 
PM MAIL ICQ   Вверх
bilbobagginz
Дата 18.10.2011, 02:05 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 4
Всего: 317



Цитата(Рыжий @  16.10.2011,  00:29 Найти цитируемый пост)
Встал вопрос об автоматизации этого процесса. Как он реализован у вас? 

давай не будем о больном smile

в идеальном мире у тебя должна быть:
  • среда "учебная"(dev) - самая новая среда, девелы на ней работают (и различные экспериментальные среды)
  • среда "инсценировочная" (staging) с т.з. конфигурации системы должно быть идентичным боевому. разница - код, который бежит на нем.
  • среда "боевая"(prod) - самая старая и проверенная среда.

разработка идет на dev.
после какого-то цикла QA, переносится код на staging
после достаточного времени цикла QA + мониторинга желательно быть способным использовать staging для напр. 10% всего объема обработки. а потом полный деплоймент.

теперь о процессе.

рекомендуется разделять версионный код и деплоймент, т.е. git != deployment tool
рекомендуется внедрять код через rsync (там несколько флажков есть) или похожие методы.

когда стирается разница между деплойментом и ведением версий ?
1) когда вес метаданных из репозитария не значителен относительно общего кода
2) когда общий вес данных + метаданных - не значителен.

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

что всё таки дает rsync:
1) при правильной настройке копирует диффы (как и тулза ведения версий), т.н. "delta-transfer algorithm".
2) относительно шустёр.
3) копирует только данные, которые надо
4) легко скриптуется/кронится
5) проверен многолетним опытом и петабайтами данных

в догонку к ведению версий ведут тэги/метки которые дают точки отсчета от общего потока версий.

Причем если обнаруживается грабля на прод/стейдж - код патчить можно, но потом - реверт. а решение переделывай "по-настоящему".



--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
Рыжий
Дата 22.10.2011, 02:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Помешанный
***


Профиль
Группа: Завсегдатай
Сообщений: 1423
Регистрация: 19.9.2004

Репутация: нет
Всего: 20



bilbobagginz, Спасибо за такой развернутый ответ) В первой половине ты действительно описал "идеальный мир".

Я и сам поискал чем люди пользуются "в интернетах".
На зарубежных сайтах многие советуют Capistrano - система деплоймента на Ruby. 

Поспрашивал у знакомых - большинство просто копируют файлы по ftp и не пудрят мозги smile 

Я же пока остановился на варианте от PHPStorm (редакторе JetBrains для php). В него встроен небольшой деплоймент функционал, который синхронизирует локальные файлы с сервером. Он находит измененные файлы и обновляет их на сервере. 

Попользуюсь им пару месяцев smile 
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
arilou

НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание на то, что новые темы, касающиеся новых вопросов, создаются кнопкой "Новая тема", а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих темах, будут удалены.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, arilou.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | УП: Инструменты | Следующая тема »


 




[ Время генерации скрипта: 0.0517 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.