Merge "set timer on the compass+onos and compass+odl job"
[releng.git] / jjb / compass4nfv / compass-ci-jobs.yml
1 - project:
2
3     name: compass-ci
4
5     installer: 'compass'
6
7     project: 'compass4nfv'
8
9     master: &master
10         stream: master
11         branch: '{stream}'
12         gs-pathname: ''
13     brahmaputra: &brahmaputra
14         stream: brahmaputra
15         branch: 'stable/{stream}'
16         gs-pathname: '/{stream}'
17
18 #--------------------------------
19 # POD, INSTALLER, AND BRANCH MAPPING
20 #--------------------------------
21     pod:
22 #--------------------------------
23 #        brahmaputra
24 #--------------------------------
25         - huawei-us-deploy-bare-1:
26             <<: *brahmaputra
27 #--------------------------------
28 #        master
29 #--------------------------------
30         - intel-pod8:
31             <<: *master
32
33     scenario:
34         - 'os-nosdn-nofeature-ha':
35             disabled: false
36             auto-trigger-name: 'compass-{scenario}-{pod}-trigger'
37         - 'os-odl_l2-nofeature-ha':
38             disabled: false
39             auto-trigger-name: 'compass-{scenario}-{pod}-trigger'
40         - 'os-onos-nofeature-ha':
41             disabled: false
42             auto-trigger-name: 'compass-{scenario}-{pod}-trigger'
43 #        - 'os-ocl-nofeature-ha':
44 #            disabled: true
45 #            auto-trigger-name: 'compass-{scenario}-{pod}-trigger'
46
47     jobs:
48         - 'compass-{scenario}-{pod}-daily-{stream}'
49         - 'compass-deploy-{pod}-daily-{stream}'
50
51 ########################
52 # job templates
53 ########################
54 - job-template:
55     name: 'compass-{scenario}-{pod}-daily-{stream}'
56
57     project-type: multijob
58
59     node: huawei-build
60
61     concurrent: false
62
63     properties:
64         - throttle:
65             enabled: true
66             max-total: 1
67             max-per-node: 1
68         - build-blocker:
69             use-build-blocker: true
70             blocking-jobs:
71                 - 'compass-os-.*?-{pod}-daily-{stream}'
72
73     wrappers:
74         - build-name:
75             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
76
77     parameters:
78         - project-parameter:
79             project: '{project}'
80         - compass-ci-parameter:
81             installer: '{installer}'
82             gs-pathname: '{gs-pathname}'
83         - string:
84             name: DEPLOY_SCENARIO
85             default: '{scenario}'
86         - 'huawei-build-defaults'
87         - '{installer}-defaults'
88
89     triggers:
90         - '{auto-trigger-name}'
91
92     builders:
93         - multijob:
94             name: deploy
95             condition: SUCCESSFUL
96             projects:
97                 - name: 'compass-deploy-{pod}-daily-{stream}'
98                   current-parameters: false
99                   predefined-parameters: 'DEPLOY_SCENARIO={scenario}'
100                   kill-phase-on: FAILURE
101         - multijob:
102             name: functest
103             condition: COMPLETED
104             projects:
105                 - name: 'functest-compass-{pod}-daily-{stream}'
106                   current-parameters: false
107                   predefined-parameters: 'DEPLOY_SCENARIO={scenario}'
108                   kill-phase-on: NEVER
109         - multijob:
110             name: yardstick
111             condition: COMPLETED
112             projects:
113                 - name: 'yardstick-compass-{pod}-daily-{stream}'
114                   current-parameters: false
115                   predefined-parameters: 'DEPLOY_SCENARIO={scenario}'
116                   kill-phase-on: NEVER
117
118 - job-template:
119     name: 'compass-deploy-{pod}-daily-{stream}'
120
121     disabled: false
122
123     concurrent: false
124
125     properties:
126         - throttle:
127             enabled: true
128             max-total: 1
129             max-per-node: 1
130         - build-blocker:
131             use-build-blocker: true
132             blocking-jobs:
133                 - 'compass-deploy-{pod}-daily-{stream}'
134
135     wrappers:
136         - build-name:
137             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
138
139     parameters:
140         - project-parameter:
141             project: '{project}'
142         - compass-ci-parameter:
143             installer: '{installer}'
144             gs-pathname: '{gs-pathname}'
145         - '{pod}-defaults'
146         - '{installer}-defaults'
147
148     scm:
149         - git-scm:
150             credentials-id: '{ssh-credentials}'
151             refspec: ''
152             branch: '{branch}'
153
154     wrappers:
155         - build-name:
156             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
157
158
159     builders:
160         - shell:
161             !include-raw: ./compass-workspace-precleanup.sh
162         - shell:
163             !include-raw: ./compass-download-artifact.sh
164         - shell:
165             !include-raw: ./compass-deploy-bare.sh
166
167     publishers:
168         - archive:
169             artifacts: 'ansible.log'
170             allow-empty: 'true'
171             fingerprint: true
172
173 ########################
174 # parameter macros
175 ########################
176 - parameter:
177     name: compass-ci-parameter
178     parameters:
179         - string:
180             name: BUILD_DIRECTORY
181             default: $WORKSPACE/build_output
182             description: "Directory where the build artifact will be located upon the completion of the build."
183         - string:
184             name: CACHE_DIRECTORY
185             default: $HOME/opnfv/cache/$PROJECT
186             description: "Directory where the cache to be used during the build is located."
187         - string:
188             name: GS_URL
189             default: '$GS_BASE{gs-pathname}'
190             description: "URL to Google Storage."
191         - string:
192             name: PPA_REPO
193             default: "http://205.177.226.235:9999"
194         - string:
195             name: PPA_CACHE
196             default: "$WORKSPACE/work/repo/"
197         - choice:
198             name: COMPASS_OPENSTACK_VERSION
199             choices:
200                 - 'liberty'
201                 - 'juno'
202         - choice:
203             name: COMPASS_OS_VERSION
204             choices:
205                 - 'trusty'
206                 - 'centos7'
207
208 ########################
209 # trigger macros
210 ########################
211 - trigger:
212     name: 'compass-os-nosdn-nofeature-ha-huawei-us-deploy-bare-1-trigger'
213     triggers:
214         - timed: '0 3 * * * '
215 - trigger:
216     name: 'compass-os-odl_l2-nofeature-ha-huawei-us-deploy-bare-1-trigger'
217     triggers:
218         - timed: '0 20 * * *'
219 - trigger:
220     name: 'compass-os-onos-nofeature-ha-huawei-us-deploy-bare-1-trigger'
221     triggers:
222         - timed: '0 15 * * *'
223 - trigger:
224     name: 'compass-os-ocl-nofeature-ha-huawei-us-deploy-bare-1-trigger'
225     triggers:
226         - timed: ''
227 - trigger:
228     name: 'compass-os-nosdn-nofeature-ha-intel-pod8-trigger'
229     triggers:
230         - timed: ''
231 - trigger:
232     name: 'compass-os-odl_l2-nofeature-ha-intel-pod8-trigger'
233     triggers:
234         - timed: '0 16 * * *'
235 - trigger:
236     name: 'compass-os-onos-nofeature-ha-intel-pod8-trigger'
237     triggers:
238         - timed: ''
239 - trigger:
240     name: 'compass-os-ocl-nofeature-ha-intel-pod8-trigger'
241     triggers:
242         - timed: ''