Дженкинс работа с другой конфигурацией? - PullRequest
1 голос
/ 07 января 2012

Я выполняю рефакторинг одной "слишком" большой работы с несколькими модулями maven Jenkins на 10 меньших работах maven Jenkins (один родительский модуль maven с потомками).

Мне нравится запускать одну работу maven каждые 2 часабез тестов и анализаторов исходного кода, таких как PMD и Checkstyle, и один раз в день ночью я хочу запускать его вместе с тестами и анализаторами исходного кода.

Я не уверен, как это сделать лучше всего.Дженкинс очень гибок, и я читаю книгу Дженкинса О'Рейли, но я все еще не уверен, как это сделать :( Я думал об использовании плагина Maven Jenkins с наследованием заданий, но я все же получаю много заданий, как мне кажется.Это путь?

Пожалуйста, несколько советов? - Эд

1 Ответ

0 голосов
/ 07 января 2012

Один прием, который я использую, - это установить свойство для фазы сборки для любого плагина, который я хочу отключить, и установить его вручную в jenkins.например, см. плагин pmd ниже:

См. $ {pmd.phase}

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-pmd-plugin</artifactId>
    <version>2.5</version>
        <configuration>
            <targetJdk>1.6</targetJdk>
            <linkXref>false</linkXref>
            <failOnViolation>true</failOnViolation>
            <failurePriority>1</failurePriority>
            <rulesets>
                <ruleset>${pom.basedir}/pmd-rulesets.xml</ruleset>
            </rulesets>
         </configuration>
        <executions>
            <execution>
            <phase>${pmd.phase}</phase>
            <goals>
                <goal>check</goal>
            </goals>
        </execution>
    </executions>
</plugin>

Теперь определите

<properties>
    <pmd.phase>none</pmd.phase>
</properties>

В jenkins установите поле Цели и параметры вclean install -Dpmd.phase = validate

Свойство командной строки переопределяет одно значение, поэтому pmd будет работать, только если присутствует -Dpmd.phase = validate.

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