4 # vim: sw=2 ts=2 sts=2 et :
8 name: ci-management-check-unicode
11 $WORKSPACE/scripts/check-unicode.sh jjb/
14 name: provide-maven-settings
16 - config-file-provider:
18 - file-id: '{global-settings-file}'
19 variable: 'GLOBAL_SETTINGS_FILE'
20 - file-id: '{settings-file}'
21 variable: 'SETTINGS_FILE'
23 # call maven-target builder with a goal of --version to force Jenkins to
24 # install the needed maven version
29 maven-version: '{maven-version}'
33 name: maven-docker-push-release
36 maven-version: '{maven-version}'
38 goals: 'clean deploy -B -P {mvn-profile}'
39 settings: '{mvn-settings}'
41 global-settings: 'global-settings'
42 global-settings-type: cfp
44 - maven.test.skip=true
45 - docker.pull.registry=nexus3.onap.org:10001
46 - docker.push.registry=nexus3.onap.org:10002
49 name: maven-docker-push-daily
52 maven-version: '{maven-version}'
54 goals: 'clean deploy -B -P {mvn-profile}'
55 settings: '{mvn-settings}'
57 global-settings: 'global-settings'
58 global-settings-type: cfp
60 - maven.test.skip=true
61 - docker.pull.registry=nexus3.onap.org:10001
62 - docker.push.registry=nexus3.onap.org:10003
65 name: maven-docker-push-daily-test
68 maven-version: '{maven-version}'
70 goals: 'clean deploy -B -P {mvn-profile}'
71 settings: '{mvn-settings}'
73 global-settings: 'global-settings'
74 global-settings-type: cfp
76 - docker.pull.registry=nexus3.onap.org:10001
77 - docker.push.registry=nexus3.onap.org:10003
82 - shell: !include-raw: include-docker-login.sh
88 properties-content: PYPI_SERVER={pypi-server}
90 !include-raw-escape: ../shell/pypi-publish.sh
94 name: infra-parameters
99 # yamllint disable rule:line-length
100 description: 'JJB configured PROJECT parameter to identify a Gerrit project'
103 name: ARCHIVE_ARTIFACTS
104 default: '{artifacts} **/target/surefire-reports/*-output.txt'
105 # yamllint disable rule:line-length
106 description: 'Space separated glob patterns for artifacts to archive to logs hosting'
111 description: 'JJB configured GERRIT_BRANCH parameter'
115 description: 'GERRIT_PROJECT parameter if not given by trigger'
119 description: 'GERRIT_REFSPEC parameter if not given by trigger'
122 default: '$JOB_NAME-$BUILD_NUMBER'
123 description: 'Used by Heat to generate a unique stack & vm name'
130 # yamllint disable rule:line-length
131 default: '/w/tools/hudson.tasks.Maven_MavenInstallation/{maven-version}/bin/mvn'
133 description: 'Maven selector to be used by shell scripts'
136 name: docker-image-name
139 name: DOCKER_IMAGE_NAME
140 # yamllint disable rule:line-length
141 default: '{docker-image-name}'
143 description: 'Docker image name, e.g. onap/appc'
147 name: infra-properties
150 days-to-keep: '{build-days-to-keep}'
152 artifact-days-to-keep: -1
153 artifact-num-to-keep: 5
157 name: archive-artifacts
160 artifacts: '{artifacts}'
166 name: email-notification
169 recipients: 'nobody@open-o.org'
171 content-type: default
172 # yamllint disable rule:line-length
173 subject: '{email-prefix} $PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS!'
176 $PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS:
178 Check console output at $BUILD_URL to view the results.
189 exec-pattern: '**/**.exec'
190 class-pattern: '**/classes'
191 source-pattern: '**/src/main/java'
192 # yamllint disable rule:line-length
193 exclusion-pattern: '**/gen**,**/generated-sources/**,**/yang-gen**,**/pax/**'
205 name: checkstyle-result
208 pattern: '**/checkstyle-result.xml'
211 health-threshold: 'high'
224 name: checkstyle-result-daily
227 pattern: '**/checkstyle-result.xml'
230 health-threshold: 'high'
244 # To archive things, the job will need to create an "archives" directory in
245 # the workspace and this macro will handle copying the contents of the
246 # archives directory.
248 # Uses the build parameter ARCHIVE_ARTIFACTS if not empty to find files to
249 # archive. You can pass globstar patterns for example "**/*.xml **/*.log" as
250 # the archive pattern. This is a space separated list of files to archive.
252 # Also ensure that the workspace is cleaned up at the end of the build.
256 - shell: !include-raw-escape: include-raw-deploy-archives.sh
258 maven-version: '{maven-version}'
259 pom: '.archives/deploy-archives.xml'
260 goals: 'clean deploy -V -B -q -Dmaven.repo.local=/tmp/r'
261 settings: 'jenkins-log-archives-settings'
263 global-settings: 'global-settings'
264 global-settings-type: cfp
265 - description-setter:
266 regexp: '^Build logs: .*'
267 script-only-if-succeeded: false
268 script-only-if-failed: false
269 mark-unstable-if-failed: true
278 credentials-id: 'onap-jenkins-ssh'
288 name: gerrit-trigger-scm
291 credentials-id: 'onap-jenkins-ssh'
295 - 'origin/$GERRIT_BRANCH'
298 choosing-strategy: '{choosing-strategy}'
300 recursive: '{submodule-recursive}'
303 name: gerrit-trigger-scm-basedir
306 credentials-id: 'onap-jenkins-ssh'
310 - 'origin/$GERRIT_BRANCH'
313 choosing-strategy: '{choosing-strategy}'
320 credentials-id: 'onap-jenkins-ssh'
330 name: git-extra-project
333 credentials-id: 'onap-jenkins-ssh'
334 url: '$GIT_NO_PROJECT/{project}'
340 wipe-workspace: false
341 basedir: '{checkout-dir}'
345 # This is a single macro to use for all jobs who vote on every (relevant) patch
346 # set. Only 'recheck' trigger word is supported, it always triggers the full set
347 # of relevant jobs, in order to prevent Jenkins from starting only a subset and
348 # still voting Verified+1
350 # server: name of gerrit server to listen to
351 # project: pattern to match triggering projects
352 # branch: triggering branch name
353 # files: pattern to match triggering filepaths
355 name: gerrit-trigger-patch-submitted
358 server-name: '{server}'
360 - patchset-created-event:
361 exclude-drafts: 'false'
362 exclude-trivial-rebase: 'false'
363 exclude-no-code-change: 'false'
364 - draft-published-event
365 - comment-added-contains-event:
366 comment-contains-value: 'recheck'
368 - project-compare-type: 'ANT'
369 project-pattern: '{project}'
371 - branch-compare-type: 'ANT'
372 branch-pattern: '**/{branch}'
374 - compare-type: 'ANT'
378 name: gerrit-trigger-patch-merged
381 server-name: '{server}'
383 - change-merged-event
384 - comment-added-contains-event:
385 comment-contains-value: 'remerge'
387 - project-compare-type: 'ANT'
388 project-pattern: '{project}'
390 - branch-compare-type: 'ANT'
391 branch-pattern: '**/{branch}'
393 - compare-type: 'ANT'
397 name: gerrit-trigger-release-manually
400 server-name: '{server}'
402 - comment-added-contains-event:
403 comment-contains-value: 'please release'
405 - project-compare-type: 'ANT'
406 project-pattern: '{project}'
408 - branch-compare-type: 'ANT'
409 branch-pattern: '**/{branch}'
411 - compare-type: 'ANT'
415 name: trigger-on-build-success
432 # This wrapper is required for all jobs as it configures the wrappers
433 # needed by the eCOMP infra.
439 timeout: '{build-timeout}'
440 timeout-var: 'BUILD_TIMEOUT'
442 - ssh-agent-credentials: