3rd party ci: Create job to bring up apex vms
[releng.git] / jjb / 3rd_party_ci / odl-netvirt.yml
1 - project:
2     name: 'netvirt'
3
4     project: 'netvirt'
5
6     installer: 'apex'
7 #####################################
8 # branch definitions
9 #####################################
10     stream:
11         - master:
12             branch: '{stream}'
13             gs-pathname: ''
14             disabled: false
15 #####################################
16 # patch verification phases
17 #####################################
18     phase:
19         - 'create-apex-vms':
20             slave-label: 'ericsson-virtual5'
21         - 'install-netvirt':
22             slave-label: 'ericsson-virtual6'
23         - 'functest':
24             slave-label: 'ericsson-virtual6'
25         - 'postprocess':
26             slave-label: 'ericsson-virtual6'
27 #####################################
28 # jobs
29 #####################################
30     jobs:
31         - 'odl-netvirt-verify-virtual-{stream}'
32         - 'odl-netvirt-verify-virtual-{phase}-{stream}'
33 #####################################
34 # job templates
35 #####################################
36 - job-template:
37     name: 'odl-netvirt-verify-virtual-{stream}'
38
39     project-type: multijob
40
41     disabled: '{obj:disabled}'
42
43     concurrent: true
44
45     properties:
46         - throttle:
47             enabled: true
48             max-total: 5
49             max-per-node: 1
50             option: 'project'
51
52     parameters:
53         - project-parameter:
54             project: '{project}'
55         - gerrit-parameter:
56             branch: '{branch}'
57         - string:
58             name: NETVIRT_ARTIFACT
59             default: $WORKSPACE/distribution-karaf.tar.gz"
60         - 'ericsson-virtual6-defaults'
61
62     scm:
63         - gerrit-trigger-scm:
64             credentials-id: '{ssh-credentials}'
65             refspec: '$GERRIT_REFSPEC'
66             choosing-strategy: 'gerrit'
67
68     triggers:
69         - gerrit:
70             server-name: 'git.opendaylight.org'
71             trigger-on:
72                 - comment-added-contains-event:
73                     comment-contains-value: 'https://jenkins.opendaylight.org/releng/job/netvirt-patch-test-current-carbon/.*?/ : SUCCESS'
74                 - comment-added-contains-event:
75                     comment-contains-value: 'https://jenkins.opendaylight.org/releng/job/netvirt-patch-test-current-carbon/.*?/ : UNSTABLE'
76                 - comment-added-contains-event:
77                     comment-contains-value: 'opnfv-test'
78             projects:
79               - project-compare-type: 'ANT'
80                 project-pattern: '{project}'
81                 branches:
82                   - branch-compare-type: 'ANT'
83                     branch-pattern: '**/{branch}'
84             readable-message: true
85
86     builders:
87         - description-setter:
88             description: "Built on $NODE_NAME"
89         - multijob:
90             name: create-apex-vms
91             condition: SUCCESSFUL
92             projects:
93                 - name: 'odl-netvirt-verify-virtual-create-apex-vms-{stream}'
94                   current-parameters: false
95                   predefined-parameters: |
96                     GERRIT_BRANCH=$GERRIT_BRANCH
97                     GERRIT_REFSPEC=$GERRIT_REFSPEC
98                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
99                     GERRIT_CHANGE_ID=$GERRIT_CHANGE_ID
100                     GERRIT_PATCHSET_NUMBER=$GERRIT_PATCHSET_NUMBER
101                     GERRIT_PATCHSET_REVISION=$GERRIT_PATCHSET_REVISION
102                     NETVIRT_ARTIFACT=$NETVIRT_ARTIFACT
103                   node-parameters: false
104                   kill-phase-on: FAILURE
105                   abort-all-job: true
106         - multijob:
107             name: install-netvirt
108             condition: SUCCESSFUL
109             projects:
110                 - name: 'odl-netvirt-verify-virtual-install-netvirt-{stream}'
111                   current-parameters: false
112                   predefined-parameters: |
113                     GERRIT_BRANCH=$GERRIT_BRANCH
114                     GERRIT_REFSPEC=$GERRIT_REFSPEC
115                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
116                     GERRIT_CHANGE_ID=$GERRIT_CHANGE_ID
117                     GERRIT_PATCHSET_NUMBER=$GERRIT_PATCHSET_NUMBER
118                     GERRIT_PATCHSET_REVISION=$GERRIT_PATCHSET_REVISION
119                     NETVIRT_ARTIFACT=$NETVIRT_ARTIFACT
120                   node-parameters: true
121                   kill-phase-on: FAILURE
122                   abort-all-job: true
123         - multijob:
124             name: functest
125             condition: SUCCESSFUL
126             projects:
127                 - name: 'odl-netvirt-verify-virtual-functest-{stream}'
128                   current-parameters: false
129                   predefined-parameters: |
130                     GERRIT_BRANCH=$GERRIT_BRANCH
131                     GERRIT_REFSPEC=$GERRIT_REFSPEC
132                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
133                     GERRIT_CHANGE_ID=$GERRIT_CHANGE_ID
134                     GERRIT_PATCHSET_NUMBER=$GERRIT_PATCHSET_NUMBER
135                     GERRIT_PATCHSET_REVISION=$GERRIT_PATCHSET_REVISION
136                     NETVIRT_ARTIFACT=$NETVIRT_ARTIFACT
137                   node-parameters: true
138                   kill-phase-on: FAILURE
139                   abort-all-job: true
140         - multijob:
141             name: postprocess
142             condition: SUCCESSFUL
143             projects:
144                 - name: 'odl-netvirt-verify-virtual-postprocess-{stream}'
145                   current-parameters: false
146                   predefined-parameters: |
147                     GERRIT_BRANCH=$GERRIT_BRANCH
148                     GERRIT_REFSPEC=$GERRIT_REFSPEC
149                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
150                     GERRIT_CHANGE_ID=$GERRIT_CHANGE_ID
151                     GERRIT_PATCHSET_NUMBER=$GERRIT_PATCHSET_NUMBER
152                     GERRIT_PATCHSET_REVISION=$GERRIT_PATCHSET_REVISION
153                     NETVIRT_ARTIFACT=$NETVIRT_ARTIFACT
154                   node-parameters: true
155                   kill-phase-on: FAILURE
156                   abort-all-job: true
157
158 - job-template:
159     name: 'odl-netvirt-verify-virtual-{phase}-{stream}'
160
161     disabled: '{obj:disabled}'
162
163     concurrent: true
164
165     properties:
166         - throttle:
167             enabled: true
168             max-total: 5
169             max-per-node: 1
170             option: 'project'
171         - build-blocker:
172             use-build-blocker: true
173             blocking-jobs:
174                 - 'odl-netvirt-verify-virtual-install-.*'
175                 - 'odl-netvirt-verify-virtual-functest-.*'
176                 - 'odl-netvirt-verify-virtual-postprocess-.*'
177             block-level: 'NODE'
178
179     scm:
180         - gerrit-trigger-scm:
181             credentials-id: '{ssh-credentials}'
182             refspec: '$GERRIT_REFSPEC'
183             choosing-strategy: 'gerrit'
184
185     wrappers:
186         - ssh-agent-credentials:
187             users:
188                 - '{ssh-credentials}'
189         - timeout:
190             timeout: 360
191             fail: true
192
193     parameters:
194         - project-parameter:
195             project: '{project}'
196         - gerrit-parameter:
197             branch: '{branch}'
198         - '{slave-label}-defaults'
199         - '{installer}-defaults'
200
201     builders:
202         - description-setter:
203             description: "Built on $NODE_NAME"
204         - '{project}-verify-{phase}-builder'
205 #####################################
206 # builder macros
207 #####################################
208 - builder:
209     name: 'netvirt-verify-create-apex-vms-builder'
210     builders:
211         - shell:
212             !include-raw: ./create-apex-vms.sh
213 - builder:
214     name: 'netvirt-verify-install-netvirt-builder'
215     builders:
216         - shell:
217             !include-raw: ./download-netvirt-artifact.sh
218         - shell:
219             !include-raw: ./install-netvirt.sh
220 - builder:
221     name: 'netvirt-verify-functest-builder'
222     builders:
223         - shell:
224             !include-raw: ./functest-netvirt.sh
225 - builder:
226     name: 'netvirt-verify-postprocess-builder'
227     builders:
228         - shell:
229             !include-raw: ./postprocess-netvirt.sh