2013-07-09 6 views
2

У меня есть настройка Jenkins для создания и развертывания моего проекта с использованием Phing.Jenkins + Phing: Кто должен развернуть и кто должен клонировать?

Внутри файла phing build.xml я создаю набор целей для создания полезных вещей, таких как запуск тестов, статический анализатор кода и т. Д.

Phing также отвечает за развертывание приложения, создавая структуру, подобную этой:

var/www 
    current -> /var/www/develop/releases/20100512131539 
    releases 
     20100512131539 
     20100509150741 
     20100509145325 
    features 
    hotfixes 

Дело в том, Дженкинс делает Git клон проекта и Phing также делает это, внутри каталога высвобождает. При этом у меня есть два клона в том же процессе сборки и развертывания.

Мой вопрос: ответственность за клонирование хранилища должна быть от Phing или Jenkins?

ответ

0

Я оставляю Phing одинаковые задачи, о которых вы упомянули: например, статический анализатор кода, текущие тесты, литеры и т. Д.
Причина этого заключается в том, что в качестве разработчика я мог бы запустить все эти тесты (или набор из них) регулярно во время моего развития, и Im способен запускать их в моей местной среде без необходимости дженкинсов.

Для развертывания, я оставляю jenkins ответственным за это, так что оставит jenkins, чтобы продолжать делать это.

Но, если вы хотите иметь все в phing, я думаю, что все будет хорошо. Я бы разделил задачи, чтобы на тестовой панели была запущена группа тестов для разработчиков, а также задачи jenkins для развертывания.

Окончательно, только один из них должен это делать.