Что обычно считается наилучшей практикой или предпочтительным методом развертывания веб-приложений: Запустите развертывание со своей рабочей станции или используйте один централизованный сервер или виртуальную машину для запуска развертываний? Каковы плюсы и минусы каждого подхода? Существуют ли инструменты, о которых мне следует знать при запуске развертывания с централизованного сервера?
Я спрашиваю, потому что на работе около 8 разработчиков работают над проектом или 2 в месяц. Мы все используем одну и ту же кодовую базу / framework и строим оттуда, поэтому развертывание должно работать одинаково для всех проектов. Тем не менее, настройка каждой рабочей станции с нужными библиотеками является громоздкой и требует интенсивного обслуживания (обновления ssh2lib и т. Д.), Поэтому я подумываю перенести все развертывания thinkgs на центральный сервер, настроенный и обновленный специально для этой цели. Какие мысли по этому поводу?
PS: я знаю о CI, hudson, phpundercontrol и т. Д. ... поэтому я не нуждаюсь в представлении об этом, я просто хочу знать, есть ли какое-либо дополнительное (дез) преимущество в выборе сервера перед рабочими станциями.
Примечание: наши текущие приложения работают на LAMP, используют git как vcs, используют трехуровневое развертывание (dev, staging, live) и не содержат модульного тестирования.