73a0c9f085696b99881947bbcaea8e24bcdc413b
[releng/builder.git] / jjb / netvirt / netvirt-full-integration.yaml
1 ---
2 - project:
3     name: netvirt-full-integration
4     jobs:
5       - 'netvirt-daily-full-integration-{stream}'
6
7     stream:
8       - carbon:
9           branch: 'master'
10           jdk: openjdk8
11           jdks:
12             - openjdk8
13       - boron:
14           branch: 'stable/boron'
15           jdk: openjdk8
16           jdks:
17             - openjdk8
18       - beryllium:
19           branch: 'stable/beryllium'
20           jdk: openjdk8
21           jdks:
22             - openjdk8
23
24     project: 'netvirt'
25     archive-artifacts: '*.log **/target/surefire-reports/*.txt'
26
27 - builder:
28     name: netvirt-run-it-external-docker
29     builders:
30       - maven-target:
31           maven-version: '{maven-version}'
32           pom: '{pomFile}'
33           goals: >
34               -V -B verify -l {logfile} -Pintegrationtest
35               -Dskip.karaf.featureTest=true -Dmaven.compile.fork=true
36               -Dovsdb.controller.address=${{CONTROLLER_IP}}
37               -Dmaven.test.failure.ignore=true
38           properties:
39             - 'ovsdbserver.ipaddress=127.0.0.1'
40             - 'ovsdbserver.port=6641'
41             - 'ovsdb.userspace.enabled=yes'
42             - 'maven.repo.local=/tmp/r'
43             - 'org.ops4j.pax.url.mvn.localRepository=/tmp/r'
44             - 'stream={stream}'
45           java-opts:
46             - '-Xmx1024m -XX:MaxPermSize=256m'
47           settings: 'netvirt-settings'
48           settings-type: cfp
49           global-settings: 'odl-global-settings'
50           global-settings-type: cfp
51
52 - builder:
53     name: netvirt-run-it-dockerOvs
54     builders:
55       - maven-target:
56           maven-version: '{maven-version}'
57           pom: '{pomFile}'
58           goals: >
59               -V -B verify -l {logfile} -Pintegrationtest
60               -Dskip.karaf.featureTest=true -Dmaven.compile.fork=true
61               -Dovsdb.controller.address=${{CONTROLLER_IP}}
62               -Ddocker.compose.file=ovs-{OVS_VERSION}-hwvtep.yml
63               -Ddocker.vEnvWs=$WORKSPACE
64               -Dsgm=transparent
65               -Dmaven.test.failure.ignore=true
66           properties:
67             - 'maven.repo.local=/tmp/r'
68             - 'org.ops4j.pax.url.mvn.localRepository=/tmp/r'
69             - 'stream={stream}'
70           java-opts:
71             - '-Xmx1024m -XX:MaxPermSize=256m'
72           settings: 'netvirt-settings'
73           settings-type: cfp
74           global-settings: 'odl-global-settings'
75           global-settings-type: cfp
76
77 - builder:
78     name: run-net-virt-it
79     builders:
80       - netvirt-run-it-dockerOvs:
81           maven-version: '{maven-version}'
82           stream: '{stream}'
83           pomFile: 'openstack/net-virt-it/pom.xml'
84           logfile: '{OVS_VERSION}-net-virt-IT.log'
85           OVS_VERSION: '{OVS_VERSION}'
86
87 - builder:
88     name: run-netvirt-sfc-it
89     builders:
90       - netvirt-run-it-external-docker:
91           maven-version: '{maven-version}'
92           stream: '{stream}'
93           pomFile: 'openstack/net-virt-sfc/it/pom.xml'
94           logfile: '{OVS_VERSION}-netvirt-sfc-IT.log'
95
96 - builder:
97     name: run-netvirt-vpnservice-it
98     builders:
99       - netvirt-run-it-dockerOvs:
100           maven-version: '{maven-version}'
101           stream: '{stream}'
102           pomFile: 'vpnservice/it/pom.xml'
103           logfile: '{OVS_VERSION}-netvirt-vpnservice-IT.log'
104           OVS_VERSION: '{OVS_VERSION}'
105
106 - builder:
107     name: install-docker-compose
108     builders:
109       - shell: |
110           virtualenv $WORKSPACE/venv
111           source $WORKSPACE/venv/bin/activate
112           pip install --upgrade pip
113           pip install docker-compose
114
115
116 - builder:
117     name: run-netvirt-it
118     builders:
119       - inject:
120           properties-content: OVS_VERSION={OVS_VERSION}
121       - shell: !include-raw-escape: include-setup-misc.sh
122       - inject:
123           properties-file: env.properties
124       - install-docker-compose
125       - run-netvirt-vpnservice-it:
126           OVS_VERSION: '{OVS_VERSION}'
127           maven-version: '{maven-version}'
128           stream: '{stream}'
129       - run-net-virt-it:
130           OVS_VERSION: '{OVS_VERSION}'
131           maven-version: '{maven-version}'
132           stream: '{stream}'
133       - shell: !include-raw-escape: include-raw-setup-docker.sh
134       - inject:
135           properties-file: env.properties
136       - run-netvirt-sfc-it:
137           OVS_VERSION: '{OVS_VERSION}'
138           maven-version: '{maven-version}'
139           stream: '{stream}'
140       - shell: !include-raw-escape: include-raw-cleanup-docker.sh
141
142 - job-template:
143     name: 'netvirt-daily-full-integration-{stream}'
144
145     project-type: freestyle
146     node: centos7-docker-2c-4g
147     concurrent: true
148     jdk: '{jdk}'
149     description: >
150         Integration tests for the Netvirt project against different versions of
151         OVS and branches. This job runs nightly.
152
153     properties:
154       - opendaylight-infra-properties:
155           build-days-to-keep: '{build-days-to-keep}'
156
157     parameters:
158       - opendaylight-infra-parameters:
159           os-cloud: '{os-cloud}'
160           project: '{project}'
161           branch: '{branch}'
162           refspec: 'refs/heads/{branch}'
163           artifacts: '{archive-artifacts}'
164
165     scm:
166       - gerrit-trigger-scm:
167           refspec: '$GERRIT_REFSPEC'
168           branch: '{branch}'
169           choosing-strategy: gerrit
170
171     wrappers:
172       - opendaylight-infra-wrappers:
173           build-timeout: '{build-timeout}'
174
175     triggers:
176       - timed: '@midnight'
177       - gerrit:
178           server-name: '{server-name}'
179           trigger-on:
180             - comment-added-contains-event:
181                 comment-contains-value: 'runit'
182           projects:
183             - project-compare-type: 'ANT'
184               project-pattern: '{project}'
185               branches:
186                 - branch-compare-type: 'ANT'
187                   branch-pattern: '**/{branch}'
188           skip-vote:
189             successful: true
190             failed: true
191             unstable: true
192             notbuilt: true
193
194     builders:
195       - wipe-org-opendaylight-repo
196       - maven-target:
197           maven-version: 'mvn33'
198           pom: 'pom.xml'
199           goals: '-V -B -l build.log clean install dependency:tree -Pq -Dmaven.compile.fork=true'
200           properties:
201             - 'maven.repo.local=/tmp/r'
202             - 'org.ops4j.pax.url.mvn.localRepository=/tmp/r'
203             - 'stream={stream}'
204           java-opts:
205             - '-Xmx1024m -XX:MaxPermSize=256m'
206           settings: 'netvirt-settings'
207           settings-type: cfp
208           global-settings: 'odl-global-settings'
209           global-settings-type: cfp
210       # skip 2.4.0 until we figure out conntrack
211       # - run-netvirt-it:
212       #    maven-version: 'mvn33'
213       #    stream: '{stream}'
214       #    OVS_VERSION: '2.4.0'
215       - run-netvirt-it:
216           maven-version: 'mvn33'
217           stream: '{stream}'
218           OVS_VERSION: '2.5.0'
219       - jacoco-nojava-workaround
220
221     publishers:
222       - email-notification:
223           email-recipients: '{email-recipients}'
224           email-prefix: '[netvirt]'
225       - text-finder:
226           fileset: "**/target/surefire-reports/*.xml"
227           regexp: 'failures\=\"[^0]\"'
228           succeed-if-found: false
229           unstable-if-found: true
230           also-check-console-output: false
231       - opendaylight-infra-shiplogs:
232           maven-version: 'mvn33'