3dd4c0b44ba9670d01527fd37fd12cc707f51cc3
[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: 'odl-netvirt-virtual'
23         - 'functest':
24             slave-label: 'odl-netvirt-virtual'
25         - 'postprocess':
26             slave-label: 'odl-netvirt-virtual'
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         - 'odl-netvirt-virtual-defaults'
61
62     triggers:
63         - gerrit:
64             server-name: 'git.opendaylight.org'
65             trigger-on:
66                 - comment-added-contains-event:
67                     comment-contains-value: 'https://jenkins.opendaylight.org/releng/job/netvirt-patch-test-current-carbon/.*?/ : SUCCESS'
68                 - comment-added-contains-event:
69                     comment-contains-value: 'https://jenkins.opendaylight.org/releng/job/netvirt-patch-test-current-carbon/.*?/ : UNSTABLE'
70                 - comment-added-contains-event:
71                     comment-contains-value: 'opnfv-test'
72             projects:
73               - project-compare-type: 'ANT'
74                 project-pattern: '{project}'
75                 branches:
76                   - branch-compare-type: 'ANT'
77                     branch-pattern: '**/{branch}'
78             readable-message: true
79
80     builders:
81         - description-setter:
82             description: "Built on $NODE_NAME"
83         - multijob:
84             name: create-apex-vms
85             condition: SUCCESSFUL
86             projects:
87                 - name: 'odl-netvirt-verify-virtual-create-apex-vms-{stream}'
88                   current-parameters: false
89                   predefined-parameters: |
90                     GERRIT_BRANCH=$GERRIT_BRANCH
91                     GERRIT_REFSPEC=$GERRIT_REFSPEC
92                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
93                     GERRIT_CHANGE_ID=$GERRIT_CHANGE_ID
94                     GERRIT_PATCHSET_NUMBER=$GERRIT_PATCHSET_NUMBER
95                     GERRIT_PATCHSET_REVISION=$GERRIT_PATCHSET_REVISION
96                     NETVIRT_ARTIFACT=$NETVIRT_ARTIFACT
97                     APEX_ENV_NUMBER=$APEX_ENV_NUMBER
98                   node-parameters: false
99                   kill-phase-on: FAILURE
100                   abort-all-job: true
101         - multijob:
102             name: install-netvirt
103             condition: SUCCESSFUL
104             projects:
105                 - name: 'odl-netvirt-verify-virtual-install-netvirt-{stream}'
106                   current-parameters: false
107                   predefined-parameters: |
108                     GERRIT_BRANCH=$GERRIT_BRANCH
109                     GERRIT_REFSPEC=$GERRIT_REFSPEC
110                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
111                     GERRIT_CHANGE_ID=$GERRIT_CHANGE_ID
112                     GERRIT_PATCHSET_NUMBER=$GERRIT_PATCHSET_NUMBER
113                     GERRIT_PATCHSET_REVISION=$GERRIT_PATCHSET_REVISION
114                     NETVIRT_ARTIFACT=$NETVIRT_ARTIFACT
115                   node-parameters: true
116                   kill-phase-on: FAILURE
117                   abort-all-job: true
118         - multijob:
119             name: functest
120             condition: SUCCESSFUL
121             projects:
122                 - name: 'functest-netvirt-virtual-suite-{stream}'
123                   predefined-parameters: |
124                     FUNCTEST_SUITE_NAME=vping_userdata,bgpvpn
125                     RC_FILE_PATH=/home/jenkins/cloner-info/overcloudrc
126                   node-parameters: true
127                   kill-phase-on: FAILURE
128                   abort-all-job: false
129         - multijob:
130             name: postprocess
131             condition: ALWAYS
132             projects:
133                 - name: 'odl-netvirt-verify-virtual-postprocess-{stream}'
134                   current-parameters: false
135                   predefined-parameters: |
136                     GERRIT_BRANCH=$GERRIT_BRANCH
137                     GERRIT_REFSPEC=$GERRIT_REFSPEC
138                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
139                     GERRIT_CHANGE_ID=$GERRIT_CHANGE_ID
140                     GERRIT_PATCHSET_NUMBER=$GERRIT_PATCHSET_NUMBER
141                     GERRIT_PATCHSET_REVISION=$GERRIT_PATCHSET_REVISION
142                     NETVIRT_ARTIFACT=$NETVIRT_ARTIFACT
143                   node-parameters: true
144                   kill-phase-on: FAILURE
145                   abort-all-job: true
146
147 - job-template:
148     name: 'odl-netvirt-verify-virtual-{phase}-{stream}'
149
150     disabled: '{obj:disabled}'
151
152     concurrent: true
153
154     properties:
155         - throttle:
156             enabled: true
157             max-total: 5
158             max-per-node: 1
159             option: 'project'
160         - build-blocker:
161             use-build-blocker: true
162             blocking-jobs:
163                 - 'odl-netvirt-verify-virtual-install-.*'
164                 - 'odl-netvirt-verify-virtual-functest-.*'
165                 - 'odl-netvirt-verify-virtual-postprocess-.*'
166             block-level: 'NODE'
167
168     wrappers:
169         - ssh-agent-credentials:
170             users:
171                 - '{ssh-credentials}'
172         - timeout:
173             timeout: 360
174             fail: true
175
176     parameters:
177         - project-parameter:
178             project: '{project}'
179         - gerrit-parameter:
180             branch: '{branch}'
181         - '{slave-label}-defaults'
182         - '{installer}-defaults'
183
184     builders:
185         - description-setter:
186             description: "Built on $NODE_NAME"
187         - '{project}-verify-{phase}-builder'
188 #####################################
189 # builder macros
190 #####################################
191 - builder:
192     name: 'netvirt-verify-create-apex-vms-builder'
193     builders:
194         - shell:
195             !include-raw: ./create-apex-vms.sh
196 - builder:
197     name: 'netvirt-verify-install-netvirt-builder'
198     builders:
199         - shell:
200             !include-raw: ./download-netvirt-artifact.sh
201         - shell:
202             !include-raw: ./install-netvirt.sh
203 - builder:
204     name: 'netvirt-verify-functest-builder'
205     builders:
206         - shell:
207             !include-raw: ./functest-netvirt.sh
208 - builder:
209     name: 'netvirt-verify-postprocess-builder'
210     builders:
211         - shell:
212             !include-raw: ./postprocess-netvirt.sh