4 # vim: sw=2 ts=2 sts=2 et :
8 name: provide-maven-settings
10 - config-file-provider:
12 - file-id: '{global-settings-file}'
13 variable: 'GLOBAL_SETTINGS_FILE'
14 - file-id: '{settings-file}'
15 variable: 'SETTINGS_FILE'
17 # call maven-target builder with a goal of --version to force Jenkins to
18 # install the needed maven version
23 maven-version: '{maven-version}'
27 name: maven-docker-push-release
30 maven-version: '{maven-version}'
32 goals: 'clean deploy -B -P {mvn-profile}'
33 settings: '{mvn-settings}'
35 global-settings: 'global-settings'
36 global-settings-type: cfp
38 - maven.test.skip=true
39 - docker.pull.registry=nexus3.onap.org:10001
40 - docker.push.registry=nexus3.onap.org:10002
43 name: maven-docker-push-daily
46 maven-version: '{maven-version}'
48 goals: 'clean deploy -B -P {mvn-profile} {mvn-params}'
49 settings: '{mvn-settings}'
51 global-settings: 'global-settings'
52 global-settings-type: cfp
54 - docker.pull.registry=nexus3.onap.org:10001
55 - docker.push.registry=nexus3.onap.org:10003
58 name: maven-docker-push-daily-test
61 maven-version: '{maven-version}'
63 goals: 'clean deploy -B -P {mvn-profile}'
64 settings: '{mvn-settings}'
66 global-settings: 'global-settings'
67 global-settings-type: cfp
69 - docker.pull.registry=nexus3.onap.org:10001
70 - docker.push.registry=nexus3.onap.org:10003
75 - shell: !include-raw: include-docker-login.sh
81 properties-content: PYPI_SERVER={pypi-server}
83 !include-raw-escape: ../shell/pypi-publish.sh
87 name: infra-parameters
92 # yamllint disable rule:line-length
93 description: 'JJB configured PROJECT parameter to identify a Gerrit project'
96 name: ARCHIVE_ARTIFACTS
97 default: '{artifacts} **/target/surefire-reports/*-output.txt'
98 # yamllint disable rule:line-length
99 description: 'Space separated glob patterns for artifacts to archive to logs hosting'
104 description: 'JJB configured GERRIT_BRANCH parameter'
108 description: 'GERRIT_PROJECT parameter if not given by trigger'
112 description: 'GERRIT_REFSPEC parameter if not given by trigger'
115 default: '$JOB_NAME-$BUILD_NUMBER'
116 description: 'Used by Heat to generate a unique stack & vm name'
123 default: '{mvn-params}'
124 description: Maven parameters to pass to the mvn command.
131 # yamllint disable rule:line-length
132 default: '/w/tools/hudson.tasks.Maven_MavenInstallation/{maven-version}/bin/mvn'
134 description: 'Maven selector to be used by shell scripts'
137 name: docker-image-name
140 name: DOCKER_IMAGE_NAME
141 # yamllint disable rule:line-length
142 default: '{docker-image-name}'
144 description: 'Docker image name, e.g. onap/appc'
148 name: infra-properties
151 days-to-keep: '{build-days-to-keep}'
153 artifact-days-to-keep: -1
154 artifact-num-to-keep: 5
158 name: archive-artifacts
161 artifacts: '{artifacts}'
167 name: email-notification
170 recipients: 'nobody@open-o.org'
172 content-type: default
173 # yamllint disable rule:line-length
174 subject: '{email-prefix} $PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS!'
177 $PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS:
179 Check console output at $BUILD_URL to view the results.
190 exec-pattern: '**/**.exec'
191 class-pattern: '**/classes'
192 source-pattern: '**/src/main/java'
193 # yamllint disable rule:line-length
194 exclusion-pattern: '**/gen**,**/generated-sources/**,**/yang-gen**,**/pax/**'
206 name: checkstyle-result
209 pattern: '**/checkstyle-result.xml'
212 health-threshold: 'high'
225 name: checkstyle-result-daily
228 pattern: '**/checkstyle-result.xml'
231 health-threshold: 'high'
245 # lf-infra macro to finish up a build.
247 # Handles the following:
248 # - Shipping logs to Nexus logs site repository
249 # - Cleanup workspace
263 mark-unstable-if-failed: true
266 # Do not clean up *.jenkins-trigger files for jobs that use a
267 # properties file as input for triggering another build.
268 - '**/*.jenkins-trigger'
277 credentials-id: 'onap-jenkins-ssh'
287 name: gerrit-trigger-scm
290 credentials-id: 'onap-jenkins-ssh'
294 - 'origin/$GERRIT_BRANCH'
297 choosing-strategy: '{choosing-strategy}'
299 recursive: '{submodule-recursive}'
302 name: gerrit-trigger-scm-basedir
305 credentials-id: 'onap-jenkins-ssh'
309 - 'origin/$GERRIT_BRANCH'
312 choosing-strategy: '{choosing-strategy}'
319 credentials-id: 'onap-jenkins-ssh'
329 name: git-extra-project
332 credentials-id: 'onap-jenkins-ssh'
333 url: '$GIT_NO_PROJECT/{project}'
339 wipe-workspace: false
340 basedir: '{checkout-dir}'
344 # This is a single macro to use for all jobs who vote on every (relevant) patch
345 # set. Only 'recheck' trigger word is supported, it always triggers the full set
346 # of relevant jobs, in order to prevent Jenkins from starting only a subset and
347 # still voting Verified+1
349 # server: name of gerrit server to listen to
350 # project: pattern to match triggering projects
351 # branch: triggering branch name
352 # files: pattern to match triggering filepaths
354 name: gerrit-trigger-patch-submitted
357 server-name: '{server}'
359 - patchset-created-event:
360 exclude-drafts: 'false'
361 exclude-trivial-rebase: 'false'
362 exclude-no-code-change: 'false'
363 - draft-published-event
364 - comment-added-contains-event:
365 comment-contains-value: 'recheck'
367 - project-compare-type: 'ANT'
368 project-pattern: '{project}'
370 - branch-compare-type: 'ANT'
371 branch-pattern: '**/{branch}'
373 - compare-type: 'ANT'
377 name: gerrit-trigger-patch-merged
380 server-name: '{server}'
382 - change-merged-event
383 - comment-added-contains-event:
384 comment-contains-value: 'remerge'
386 - project-compare-type: 'ANT'
387 project-pattern: '{project}'
389 - branch-compare-type: 'ANT'
390 branch-pattern: '**/{branch}'
392 - compare-type: 'ANT'
396 name: gerrit-trigger-release-manually
399 server-name: '{server}'
401 - comment-added-contains-event:
402 comment-contains-value: 'please release'
404 - project-compare-type: 'ANT'
405 project-pattern: '{project}'
407 - branch-compare-type: 'ANT'
408 branch-pattern: '**/{branch}'
410 - compare-type: 'ANT'
414 name: trigger-on-build-success
435 <org.jenkinsci.plugins.golang.GolangBuildWrapper plugin="golang@1.2">
436 <goVersion>Golang 1.10</goVersion>
437 </org.jenkinsci.plugins.golang.GolangBuildWrapper>
440 # This wrapper is required for all jobs as it configures the wrappers
441 # needed by the eCOMP infra.
447 timeout: '{build-timeout}'
448 timeout-var: 'BUILD_TIMEOUT'
450 - ssh-agent-credentials:
457 # This wrapper is used for docker build jobs to use the dedicated docker
458 # build VM and turn off OpenStack single-use
459 name: infra-wrappers-docker-build
464 timeout: '{build-timeout}'
465 timeout-var: 'BUILD_TIMEOUT'
467 - ssh-agent-credentials: