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