Upgrade to global-jjb v0.27.0
[ci-management.git] / jjb / akraino-templates / akraino-jjb-templates.yaml
1 ---
2 #
3 # Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
4 #
5 # Licensed under the Apache License, Version 2.0 (the "License"); you may
6 # not use this file except in compliance with the License.
7 #
8 # You may obtain a copy of the License at
9 #       http://www.apache.org/licenses/LICENSE-2.0
10 #
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
13 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
16 #
17 - job-template:
18     id: akraino-project-stream-release-config
19     name: '{project}-{stream}-release-config'
20
21     ######################
22     # Default parameters #
23     ######################
24
25     archive-artifacts: >
26       **/*.log
27       **/hs_err_*.log
28       **/target/**/feature.xml
29       **/target/failsafe-reports/failsafe-summary.xml
30       **/target/surefire-reports/*-output.txt
31     build-days-to-keep: 30
32     build-timeout: 60
33     java-version: openjdk8
34     maven-repo-url: '$NEXUS_URL/content/repositories/snapshots'
35     mvn-global-settings: global-settings
36     mvn-opts: ''
37     mvn-params: ''
38     mvn-version: mvn35
39     nexus-shapshot-repo: snapshots
40     repo-id: snapshots
41     staging-profile-id: ''  # Unused by this job.
42     stream: master
43     submodule-recursive: true
44     upload-files-dir: /tmp/tardir
45
46     #####################
47     # Job Configuration #
48     #####################
49
50     project-type: freestyle
51     node: '{build-node}'
52
53     properties:
54       - lf-infra-properties:
55           build-days-to-keep: '{build-days-to-keep}'
56
57     parameters:
58       - lf-infra-parameters:
59           project: '{project}'
60           branch: '{branch}'
61           stream: '{stream}'
62           lftools-version: '{lftools-version}'
63       - lf-infra-maven-parameters:
64           mvn-opts: '{mvn-opts}'
65           mvn-params: '{mvn-params}'
66           mvn-version: '{mvn-version}'
67           # Staging repos do not make sense for CLM jobs so set it blank.
68           staging-profile-id: '{staging-profile-id}'
69       - string:
70           name: ARCHIVE_ARTIFACTS
71           default: '{archive-artifacts}'
72           description: Artifacts to archive to the logs server.
73       - string:
74           name: UPLOAD_FILES_PATH
75           default: '{upload-files-dir}'
76           description: File path to generate tarball and upload to repository.
77
78     wrappers:
79       - lf-infra-wrappers:
80           build-timeout: '{build-timeout}'
81           jenkins-ssh-credential: '{jenkins-ssh-credential}'
82
83     gerrit_merge_triggers:
84       - change-merged-event
85       - comment-added-contains-event:
86           comment-contains-value: remerge$
87
88     gerrit_trigger_file_paths:
89       - compare-type: REG_EXP
90         pattern: '.*'
91
92     scm:
93       - lf-infra-gerrit-scm:
94           jenkins-ssh-credential: '{jenkins-ssh-credential}'
95           git-url: '{git-url}/{project}.git'
96           refspec: '{refspec}'
97           branch: '{branch}'
98           submodule-recursive: '{submodule-recursive}'
99           submodule-timeout: '{submodule-timeout}'
100           choosing-strategy: default
101
102     triggers:
103       - timed: '{obj:cron}'
104       - gerrit:
105           server-name: '{gerrit-server-name}'
106           trigger-on: '{obj:gerrit_merge_triggers}'
107           projects:
108             - project-compare-type: ANT
109               project-pattern: '{project}'
110               branches:
111                 - branch-compare-type: ANT
112                   branch-pattern: '**/{branch}'
113               file-paths: '{obj:gerrit_trigger_file_paths}'
114
115     builders:
116       - lf-infra-pre-build
117       - lf-maven-install:
118           mvn-version: '{mvn-version}'
119       - lf-update-java-alternatives:
120           java-version: '{java-version}'
121       - lf-provide-maven-settings:
122           global-settings-file: '{mvn-global-settings}'
123           settings-file: '{mvn-settings}'
124       - shell: !include-raw-escape:
125           - ../shell/make-tar.sh
126       - lf-infra-deploy-maven-file:
127           global-settings-file: '{mvn-global-settings}'
128           settings-file: '{mvn-settings}'
129           mvn-version: '{mvn-version}'
130           repo-id: '{repo-id}'
131           group-id: '{group-id}'
132           upload-files-dir: '{upload-files-dir}'
133           maven-repo-url: '{maven-repo-url}'
134
135     publishers:
136       - lf-infra-publish