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