3rd party ci: Create jobs for ODL netvirt testing in OPNFV
[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         - 'install'
20         - 'functest'
21         - 'postprocess'
22 #####################################
23 # jobs
24 #####################################
25     jobs:
26         - 'odl-netvirt-verify-virtual-{stream}'
27         - 'odl-netvirt-verify-virtual-{phase}-{stream}'
28 #####################################
29 # job templates
30 #####################################
31 - job-template:
32     name: 'odl-netvirt-verify-virtual-{stream}'
33
34     project-type: multijob
35
36     disabled: '{obj:disabled}'
37
38     concurrent: true
39
40     properties:
41         - throttle:
42             enabled: true
43             max-total: 5
44             max-per-node: 1
45             option: 'project'
46
47     parameters:
48         - project-parameter:
49             project: '{project}'
50         - gerrit-parameter:
51             branch: '{branch}'
52         - string:
53             name: NETVIRT_ARTIFACT
54             default: $WORKSPACE/distribution-karaf.tar.gz"
55         - 'odl-netvirt-virtual-defaults'
56
57     scm:
58         - git:
59             url: 'https://git.opendaylight.org/gerrit/p/$PROJECT.git'
60             refspec: '$GERRIT_REFSPEC'
61             branches:
62                 - 'origin/$GERRIT_BRANCH'
63             skip-tag: true
64             choosing-strategy: 'gerrit'
65             timeout: 10
66             wipe-workspace: true
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             projects:
77               - project-compare-type: 'ANT'
78                 project-pattern: '{project}'
79                 branches:
80                   - branch-compare-type: 'ANT'
81                     branch-pattern: '**/{branch}'
82             readable-message: true
83
84     builders:
85         - description-setter:
86             description: "Built on $NODE_NAME"
87         - multijob:
88             name: install
89             condition: SUCCESSFUL
90             projects:
91                 - name: 'odl-netvirt-verify-virtual-install-{stream}'
92                   current-parameters: false
93                   predefined-parameters: |
94                     GERRIT_BRANCH=$GERRIT_BRANCH
95                     GERRIT_REFSPEC=$GERRIT_REFSPEC
96                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
97                     GERRIT_CHANGE_ID=$GERRIT_CHANGE_ID
98                     GERRIT_PATCHSET_NUMBER=$GERRIT_PATCHSET_NUMBER
99                     GERRIT_PATCHSET_REVISION=$GERRIT_PATCHSET_REVISION
100                     NETVIRT_ARTIFACT=$NETVIRT_ARTIFACT
101                   node-parameters: true
102                   kill-phase-on: FAILURE
103                   abort-all-job: true
104         - multijob:
105             name: functest
106             condition: SUCCESSFUL
107             projects:
108                 - name: 'odl-netvirt-verify-virtual-functest-{stream}'
109                   current-parameters: false
110                   predefined-parameters: |
111                     GERRIT_BRANCH=$GERRIT_BRANCH
112                     GERRIT_REFSPEC=$GERRIT_REFSPEC
113                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
114                     GERRIT_CHANGE_ID=$GERRIT_CHANGE_ID
115                     GERRIT_PATCHSET_NUMBER=$GERRIT_PATCHSET_NUMBER
116                     GERRIT_PATCHSET_REVISION=$GERRIT_PATCHSET_REVISION
117                     NETVIRT_ARTIFACT=$NETVIRT_ARTIFACT
118                   node-parameters: true
119                   kill-phase-on: FAILURE
120                   abort-all-job: true
121         - multijob:
122             name: postprocess
123             condition: SUCCESSFUL
124             projects:
125                 - name: 'odl-netvirt-verify-virtual-postprocess-{stream}'
126                   current-parameters: false
127                   predefined-parameters: |
128                     GERRIT_BRANCH=$GERRIT_BRANCH
129                     GERRIT_REFSPEC=$GERRIT_REFSPEC
130                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
131                     GERRIT_CHANGE_ID=$GERRIT_CHANGE_ID
132                     GERRIT_PATCHSET_NUMBER=$GERRIT_PATCHSET_NUMBER
133                     GERRIT_PATCHSET_REVISION=$GERRIT_PATCHSET_REVISION
134                     NETVIRT_ARTIFACT=$NETVIRT_ARTIFACT
135                   node-parameters: true
136                   kill-phase-on: FAILURE
137                   abort-all-job: true
138
139 - job-template:
140     name: 'odl-netvirt-verify-virtual-{phase}-{stream}'
141
142     disabled: '{obj:disabled}'
143
144     concurrent: true
145
146     properties:
147         - throttle:
148             enabled: true
149             max-total: 5
150             max-per-node: 1
151             option: 'project'
152         - build-blocker:
153             use-build-blocker: true
154             blocking-jobs:
155                 - 'odl-netvirt-verify-virtual-install-.*'
156                 - 'odl-netvirt-verify-virtual-functest-.*'
157                 - 'odl-netvirt-verify-virtual-postprocess-.*'
158             block-level: 'NODE'
159
160     scm:
161         - gerrit-trigger-scm:
162             credentials-id: '{ssh-credentials}'
163             refspec: '$GERRIT_REFSPEC'
164             choosing-strategy: 'gerrit'
165
166     wrappers:
167         - ssh-agent-credentials:
168             users:
169                 - '{ssh-credentials}'
170         - timeout:
171             timeout: 360
172             fail: true
173
174     parameters:
175         - project-parameter:
176             project: '{project}'
177         - gerrit-parameter:
178             branch: '{branch}'
179         - 'odl-netvirt-virtual-defaults'
180         - '{installer}-defaults'
181
182     builders:
183         - description-setter:
184             description: "Built on $NODE_NAME"
185         - '{project}-verify-{phase}-builder'
186 #####################################
187 # builder macros
188 #####################################
189 - builder:
190     name: 'netvirt-verify-install-builder'
191     builders:
192         - shell:
193             !include-raw: ./download-netvirt-artifact.sh
194         - shell:
195             !include-raw: ./install-netvirt.sh
196
197 - builder:
198     name: 'netvirt-verify-functest-builder'
199     builders:
200         - shell:
201             !include-raw: ./functest-netvirt.sh
202
203 - builder:
204     name: 'netvirt-verify-postprocess-builder'
205     builders:
206         - shell:
207             !include-raw: ./postprocess-netvirt.sh