Вот некоторые из них:
- http://hudson.jboss.org/hudson/view/JBossTools/view/JBossTools_Trunk/
- http://hudson.jboss.org/hudson/view/JBossTools/view/JBossTools_3.3.indigo
- http://hudson.jboss.org/hudson/view/JBossTools/view/JBossTools_3.2.helios
Чтобы повысить производительность, мы используем профили maven в нашем родительском модуле, чтобы разрешить общий доступ к данным за пределами рабочих областей подчиненных, без использования общих рабочих областей (поскольку это может привести к конфликтам, когда несколько процессов maven пытаются выполнить запись в один репозиторий .m2). , Вот пример:
|
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
|
<!-- same contents as jbosstools-nightly-staging-composite, but locally available (to improve network lag) --><profile> <id>local.composite</id> <activation> <activeByDefault>false</activeByDefault> </activation> <repositories> <repository> <id>local.composite</id> <url>${local.composite}</url> <layout>p2</layout> <snapshots> <enabled>true</enabled> </snapshots> <releases> <enabled>true</enabled> </releases> </repository> </repositories></profile> |
Мы также используем профили для включения анализа покрытия кода или для использования переменных Дженкинса, таких как BUILD_NUMBER, при установке квалификатора с метками времени для функций и плагинов:
|
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
<profile> <id>hudson</id> <activation> <property> <name>BUILD_NUMBER</name> </property> </activation> <properties> <local.site>file:///home/hudson/static_build_env/jbds/target-platform_3.3.indigo.SR2/e372M-wtp332M.target/</local.site> </properties> <build> <plugins> <plugin> <groupId>org.eclipse.tycho</groupId> <artifactId>tycho-packaging-plugin</artifactId> <version>${tychoVersion}</version> <configuration> <format>'v'yyyyMMdd-HHmm'-H${BUILD_NUMBER}-${BUILD_ALIAS}'</format> <archiveSite>true</archiveSite> </configuration> </plugin> </plugins> </build></profile> |
Но как вы справляетесь с сотнями конфигурационных файлов заданий, и как вы можете легко обновлять их без использования браузера? Мы поддерживаем файлы конфигурации работы (config.xml) в автономном режиме .
Для этого мы используем подключаемый модуль maven, который я написал, чтобы получать задания, соответствующие заданному представлению и регулярному выражению, и сохранять их локально на диске, используя ту же структуру, что и на сервере.
Затем этот же плагин можно использовать для отправки файлов config.xml НАЗАД на сервер после внесения изменений в один (или все) файлы.
Для дополнительного уровня аудита мы также фиксируем эти локально кэшированные файлы config.xml в SVN, чтобы мы могли отслеживать их историю. По общему признанию Jenkins предоставляет эту функциональность изначально, но когда вы размещаете изменения в файлах config.xml, сервер не всегда замечает изменение и записывает дельту, поэтому резервное копирование (особенно такое, которое вы можете преобразовать в автономном режиме) никогда не является плохой идеей. ,
Ссылка: Управление конфигурациями заданий Jenkins от нашего партнера JCG Ника Болдта в блоге DivByZero .


