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
67 - shell: !include-raw: include-docker-login.sh
71 name: infra-parameters
76 # yamllint disable rule:line-length
77 description: 'JJB configured PROJECT parameter to identify a Gerrit project'
80 name: ARCHIVE_ARTIFACTS
81 default: '{artifacts} **/target/surefire-reports/*-output.txt'
82 # yamllint disable rule:line-length
83 description: 'Space separated glob patterns for artifacts to archive to logs hosting'
88 description: 'JJB configured GERRIT_BRANCH parameter'
92 description: 'GERRIT_PROJECT parameter if not given by trigger'
96 description: 'GERRIT_REFSPEC parameter if not given by trigger'
99 default: '$JOB_NAME-$BUILD_NUMBER'
100 description: 'Used by Heat to generate a unique stack & vm name'
107 # yamllint disable rule:line-length
108 default: '/w/tools/hudson.tasks.Maven_MavenInstallation/{maven-version}/bin/mvn'
110 description: 'Maven selector to be used by shell scripts'
113 name: docker-image-name
116 name: DOCKER_IMAGE_NAME
117 # yamllint disable rule:line-length
118 default: '{docker-image-name}'
120 description: 'Docker image name, e.g. onap/appc'
124 name: infra-properties
127 days-to-keep: '{build-days-to-keep}'
129 artifact-days-to-keep: -1
130 artifact-num-to-keep: 5
134 name: archive-artifacts
137 artifacts: '{artifacts}'
143 name: email-notification
146 recipients: 'nobody@open-o.org'
148 content-type: default
149 # yamllint disable rule:line-length
150 subject: '{email-prefix} $PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS!'
153 $PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS:
155 Check console output at $BUILD_URL to view the results.
166 exec-pattern: '**/**.exec'
167 class-pattern: '**/classes'
168 source-pattern: '**/src/main/java'
169 # yamllint disable rule:line-length
170 exclusion-pattern: '**/gen**,**/generated-sources/**,**/yang-gen**,**/pax/**'
182 name: checkstyle-result
185 pattern: '**/checkstyle-result.xml'
188 health-threshold: 'high'
201 name: checkstyle-result-daily
204 pattern: '**/checkstyle-result.xml'
207 health-threshold: 'high'
221 # To archive things, the job will need to create an "archives" directory in
222 # the workspace and this macro will handle copying the contents of the
223 # archives directory.
225 # Uses the build parameter ARCHIVE_ARTIFACTS if not empty to find files to
226 # archive. You can pass globstar patterns for example "**/*.xml **/*.log" as
227 # the archive pattern. This is a space separated list of files to archive.
229 # Also ensure that the workspace is cleaned up at the end of the build.
233 - shell: !include-raw-escape: include-raw-deploy-archives.sh
235 maven-version: '{maven-version}'
236 pom: '.archives/deploy-archives.xml'
237 goals: 'clean deploy -V -B -q -Dmaven.repo.local=/tmp/r'
238 settings: 'jenkins-log-archives-settings'
240 global-settings: 'global-settings'
241 global-settings-type: cfp
242 - description-setter:
243 regexp: '^Build logs: .*'
244 script-only-if-succeeded: false
245 script-only-if-failed: false
246 mark-unstable-if-failed: true
255 credentials-id: 'onap-jenkins-ssh'
265 name: gerrit-trigger-scm
268 credentials-id: 'onap-jenkins-ssh'
272 - 'origin/$GERRIT_BRANCH'
275 choosing-strategy: '{choosing-strategy}'
277 recursive: '{submodule-recursive}'
280 name: gerrit-trigger-scm-basedir
283 credentials-id: 'onap-jenkins-ssh'
287 - 'origin/$GERRIT_BRANCH'
290 choosing-strategy: '{choosing-strategy}'
297 credentials-id: 'onap-jenkins-ssh'
307 name: git-extra-project
310 credentials-id: 'onap-jenkins-ssh'
311 url: '$GIT_NO_PROJECT/{project}'
317 wipe-workspace: false
318 basedir: '{checkout-dir}'
322 # This is a single macro to use for all jobs who vote on every (relevant) patch
323 # set. Only 'recheck' trigger word is supported, it always triggers the full set
324 # of relevant jobs, in order to prevent Jenkins from starting only a subset and
325 # still voting Verified+1
327 # server: name of gerrit server to listen to
328 # project: pattern to match triggering projects
329 # branch: triggering branch name
330 # files: pattern to match triggering filepaths
332 name: gerrit-trigger-patch-submitted
335 server-name: '{server}'
337 - patchset-created-event:
338 exclude-drafts: 'false'
339 exclude-trivial-rebase: 'false'
340 exclude-no-code-change: 'false'
341 - draft-published-event
342 - comment-added-contains-event:
343 comment-contains-value: 'recheck'
345 - project-compare-type: 'ANT'
346 project-pattern: '{project}'
348 - branch-compare-type: 'ANT'
349 branch-pattern: '**/{branch}'
351 - compare-type: 'ANT'
355 name: gerrit-trigger-patch-merged
358 server-name: '{server}'
360 - change-merged-event
361 - comment-added-contains-event:
362 comment-contains-value: 'remerge'
364 - project-compare-type: 'ANT'
365 project-pattern: '{project}'
367 - branch-compare-type: 'ANT'
368 branch-pattern: '**/{branch}'
370 - compare-type: 'ANT'
374 name: gerrit-trigger-release-manually
377 server-name: '{server}'
379 - comment-added-contains-event:
380 comment-contains-value: 'please release'
382 - project-compare-type: 'ANT'
383 project-pattern: '{project}'
385 - branch-compare-type: 'ANT'
386 branch-pattern: '**/{branch}'
388 - compare-type: 'ANT'
392 name: trigger-on-build-success
409 # This wrapper is required for all jobs as it configures the wrappers
410 # needed by the eCOMP infra.
416 timeout: '{build-timeout}'
417 timeout-var: 'BUILD_TIMEOUT'
419 - ssh-agent-credentials: