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