Как заставить Дженкинса создавать каждую ревизию хранилища Subversion? - PullRequest
6 голосов
/ 29 ноября 2011

Мы используем jenkins для непрерывной интеграции, используя стандартный опрос каждые 10 минут, и он работает нормально.

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

Единственный способ, который я выяснил, это использовать хук post-commit на svnserver, который ставит в очередь задание на сервере jenkins, но я бы не стал этого делать, так как это потребовало бы новой дыры в брандмауэре (и я думаю,Дженкинс сворачивает все задания в очереди в одно).

1 Ответ

3 голосов
/ 23 декабря 2011

Я сам не пробовал этого, но вы можете использовать другую сборку для запуска ваших сборок Subversion.

Например, вы можете настроить сборку, которая будет выполнять стандартный опрос каждые 10 минут из вашего хранилища Subversion.Затем пусть эта сборка определит все новые номера ревизий, которые произошли с прошлого раза.Затем поместите в очередь несколько параметризованных сборок (по одной на каждую ревизию).

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

Этот последний шаг может быть немного запутанным, поскольку я не знаю ни одного плагина, который позволял бы ставить в очередь несколько сборок.Это грубая сила, но вы можете установить ряд переменных построения (SVN_REV_1, SVN_REV_2, ...) и затем настроить несколько триггеров (по одному для каждой из потенциальных переменных).Пока у вас их больше, чем когда-либо в новой редакции, вы должны быть хорошими.(примечание: может быть, есть лучший способ сделать это)

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

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