diff options
author | JulienBe <jb379x@att.com> | 2017-07-17 15:30:26 +0200 |
---|---|---|
committer | JulienBe <jb379x@att.com> | 2017-07-17 15:30:53 +0200 |
commit | 77903edce4b3e8b4fdf7c0ff601ec24b74ffe962 (patch) | |
tree | d754b592a16984d9379a09833aa99c96dcc3f61b /jjb | |
parent | 3b31ed323f50edc0e2dec03f21cea540084a53ec (diff) |
Introduction of the checkstyle plugin
Issue: CLAMP-2
Change-Id: Ic027d6aef676feb4e69bdba291c546fedfbacc3a
Signed-off-by: JulienBe <jb379x@att.com>
Diffstat (limited to 'jjb')
-rw-r--r-- | jjb/clamp/clamp.yaml | 4 | ||||
-rw-r--r-- | jjb/global-macros.yaml | 38 | ||||
-rw-r--r-- | jjb/global-templates-java.yaml | 113 |
3 files changed, 153 insertions, 2 deletions
diff --git a/jjb/clamp/clamp.yaml b/jjb/clamp/clamp.yaml index 4f08ed0e1..130497f7c 100644 --- a/jjb/clamp/clamp.yaml +++ b/jjb/clamp/clamp.yaml @@ -4,9 +4,9 @@ name: clamp project-name: 'clamp' jobs: - - '{project-name}-{stream}-verify-java' + - '{project-name}-{stream}-verify-java-checkstyle' - '{project-name}-{stream}-merge-java' - - '{project-name}-{stream}-release-java-daily' + - '{project-name}-{stream}-release-java-daily-checkstyle' - '{project-name}-{stream}-docker-java-properties-daily': docker-pom: 'pom.xml' mvn-profile: 'docker' diff --git a/jjb/global-macros.yaml b/jjb/global-macros.yaml index 2270f576c..454d056ef 100644 --- a/jjb/global-macros.yaml +++ b/jjb/global-macros.yaml @@ -169,6 +169,44 @@ unhealthy: 40 - publisher: + name: checkstyle-result + publishers: + - checkstyle: + pattern: '**/checkstyle-result.xml' + healthy: 0 + unhealthy: 100 + health-threshold: 'high' + thresholds: + unstable: + total-all: 30 + total-high: 15 + total-normal: 20 + total-low: 25 + new-all: 5 + new-high: 0 + new-normal: 2 + new-low: 5 + +- publisher: + name: checkstyle-result-daily + publishers: + - checkstyle: + pattern: '**/checkstyle-result.xml' + healthy: 0 + unhealthy: 100 + health-threshold: 'high' + thresholds: + unstable: + total-all: 30 + total-high: 15 + total-normal: 20 + total-low: 25 + new-all: 1 + new-high: 0 + new-normal: 1 + new-low: 1 + +- publisher: name: infra-shiplogs # To archive things, the job will need to create an "archives" directory in # the workspace and this macro will handle copying the contents of the diff --git a/jjb/global-templates-java.yaml b/jjb/global-templates-java.yaml index e58954b3f..580d65b36 100644 --- a/jjb/global-templates-java.yaml +++ b/jjb/global-templates-java.yaml @@ -186,6 +186,61 @@ maven-version: '{maven-version}' - job-template: + # Job template for Java verify jobs running checkstyle at the end + # When checkstyle will be fully incorporated, it is meant to replace + # '{project-name}-{stream}-verify-java-checkstyle' + # The purpose of this job template is to run "maven clean install" for + # projects using this template. + # + # Required Variables: + # branch: git branch (eg. stable/lithium or master) + name: '{project-name}-{stream}-verify-java-checkstyle' + project-type: freestyle + concurrent: true + node: '{build-node}' + properties: + - infra-properties: + build-days-to-keep: '{build-days-to-keep}' + parameters: + - infra-parameters: + project: '{project}' + branch: '{branch}' + refspec: 'refs/heads/{branch}' + artifacts: '{archive-artifacts}' + - maven-exec: + maven-version: '{maven-version}' + scm: + - gerrit-trigger-scm: + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + submodule-recursive: '{submodule-recursive}' + wrappers: + - infra-wrappers: + build-timeout: '{build-timeout}' + triggers: + - gerrit-trigger-patch-submitted: + server: '{server-name}' + project: '{project}' + branch: '{branch}' + files: '**' + builders: + - provide-maven-settings: + global-settings-file: 'global-settings' + settings-file: '{mvn-settings}' + - maven-target: + maven-version: '{maven-version}' + goals: 'clean install -B + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' + settings: '{mvn-settings}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' + - checkstyle-result + +- job-template: # Job template for Java verify jobs that takes a maven template # # The purpose of this job template is to run "maven clean install -P {x}" @@ -378,6 +433,64 @@ maven-version: '{maven-version}' - job-template: + # Job template for Java daily release jobs running checkstyle at the end + # When checkstyle will be fully incorporated, it is meant to replace + # '{project-name}-{stream}-release-java-daily' + # The purpose of this job template is to run "maven version && maven clean + # deploy" for projects using this template. + # + # Required Variables: + # branch: git branch (eg. stable/lithium or master) + name: '{project-name}-{stream}-release-java-daily-checkstyle' + project-type: freestyle + node: '{build-node}' + maven-deploy-properties: + properties: + - infra-properties: + build-days-to-keep: '{build-days-to-keep}' + parameters: + - infra-parameters: + project: '{project}' + branch: '{branch}' + refspec: 'refs/heads/{branch}' + artifacts: '{archive-artifacts}' + - maven-exec: + maven-version: '{maven-version}' + scm: + - gerrit-trigger-scm: + refspec: '' + choosing-strategy: 'default' + submodule-recursive: '{submodule-recursive}' + wrappers: + - infra-wrappers: + build-timeout: '{build-timeout}' + triggers: + # 11 AM UTC + - timed: 'H 11 * * *' + - gerrit-trigger-release-manually: + server: '{server-name}' + project: '{project}' + branch: '{branch}' + builders: + - provide-maven-settings: + global-settings-file: 'global-settings' + settings-file: '{mvn-settings}' + - maven-target: + maven-version: '{maven-version}' + goals: 'clean deploy sonar:sonar -Dsonar.host.url=${{SONAR}} -B + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' + properties: + - '{maven-deploy-properties}' + settings: '{mvn-settings}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' + - checkstyle-result-daily + +- job-template: # Job template for Java daily release jobs # # The purpose of this job template is to run "maven version && maven clean |