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