Use OS_CLOUD variable for openstackclient
[releng/builder.git] / jjb / autorelease / autorelease-projects.yaml
1 ---
2 - project:
3     name: autorelease-projects
4     jobs:
5       - 'autorelease-release-{stream}'
6
7     stream:
8       - carbon:
9           next-release-tag: Carbon
10           branch: 'master'
11           jdk: 'openjdk8'
12           integration-test: carbon
13       - boron:
14           next-release-tag: Boron-SR3
15           branch: 'stable/boron'
16           jdk: 'openjdk8'
17           integration-test: boron
18       - beryllium:
19           # Only run once a week since Beryllium is in maintenance mode
20           cron: 'H H * * 0'
21           next-release-tag: Beryllium-SR5
22           branch: 'stable/beryllium'
23           jdk: 'openjdk7'
24           integration-test: beryllium
25
26     project: 'releng/autorelease'
27     archive-artifacts: >
28         **/*.prop
29         **/*.log
30         **/patches/*.bundle
31         **/patches/*.patch
32         patches.tar.gz
33
34 ###
35 # TODO: Remove this job once guava21 testing is complete
36 ###
37
38 - project:
39     name: autorelease-projects-guava21
40     jobs:
41       - 'autorelease-release-guava21-{stream}'
42
43     stream:
44       - carbon:
45           next-release-tag: Guava21-Testing
46           branch: 'master'
47           jdk: 'openjdk8'
48           integration-test: carbon
49
50     project: 'releng/autorelease'
51     archive-artifacts: '**/*.prop **/*.log **/patches/*.bundle **/patches/*.patch all-bundles.tar.gz'
52
53 - job-template:
54     name: 'autorelease-release-guava21-{stream}'
55
56     project-type: freestyle
57     node: centos7-autorelease-4c-16g
58     jdk: '{jdk}'
59
60     properties:
61       - opendaylight-infra-properties:
62           build-days-to-keep: '30'
63
64     parameters:
65       - maven-exec:
66           maven-version: 'mvn33'
67       - opendaylight-infra-parameters:
68           os-cloud: '{os-cloud}'
69           project: '{project}'
70           branch: '{branch}'
71           refspec: 'refs/heads/{branch}'
72           artifacts: '{archive-artifacts}'
73       - autorelease-release-tag:
74           release-tag: '{next-release-tag}'
75       - autorelease-release-branch:
76           release-branch: '{branch}'
77
78     scm:
79       - git:
80           credentials-id: 'opendaylight-jenkins-ssh'
81           url: '$GIT_BASE'
82           refspec: '$GERRIT_REFSPEC'
83           branches:
84             - '$GERRIT_BRANCH'
85           choosing-strategy: 'gerrit'
86           skip-tag: true
87           submodule:
88             recursive: true
89             timeout: 60
90
91     wrappers:
92       - opendaylight-infra-wrappers:
93           build-timeout: '1440'
94
95     triggers:
96       - gerrit:
97           server-name: '{server-name}'
98           trigger-on:
99             - comment-added-contains-event:
100                 comment-contains-value: 'test-guava21-patches'
101           projects:
102             - project-compare-type: 'ANT'
103               project-pattern: '{project}'
104               branches:
105                 - branch-compare-type: 'ANT'
106                   branch-pattern: '**/{branch}'
107           skip-vote:
108             successful: true
109             failed: true
110             unstable: true
111             notbuilt: true
112
113     builders:
114       - shell: |
115           #!/bin/bash
116           cd bgpcep
117           git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/bgpcep
118           git review -d 50184
119           cd ..
120           cd centinel
121           git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/centinel
122           git review -d 50185
123           cd ..
124           cd controller
125           git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/controller
126           git review -d 50176
127           cd ..
128           cd didm
129           git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/didm
130           git review -d 50187
131           cd ..
132           cd faas
133           git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/faas
134           git review -d 50190
135           cd ..
136           cd genius
137           git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/genius
138           git review -d 50192
139           cd ..
140           cd groupbasedpolicy
141           git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/groupbasedpolicy
142           git review -d 50200
143           cd ..
144           cd netvirt
145           git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/netvirt
146           git review -d 50215
147           cd ..
148           cd odlparent
149           git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/odlparent
150           git review -d 49820
151           cd ..
152           cd openflowplugin
153           git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/openflowplugin
154           git review -d 50183
155           cd ..
156           cd ovsdb
157           git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/ovsdb
158           git review -d 50191
159           cd ..
160           cd yangtools
161           git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/yangtools
162           git review -d 50173
163           cd ..
164       # force jenkins install of maven version before any shell scripts use it
165       - maven-target:
166           maven-version: 'mvn33'
167           goals: '-version'
168           settings: 'autorelease-settings'
169           settings-type: cfp
170           global-settings: 'odl-global-settings'
171           global-settings-type: cfp
172       - wipe-local-maven-repo
173       - jacoco-nojava-workaround
174       - shell: "./scripts/list-project-dependencies.sh"
175       - autorelease-determine-merge-order
176       - autorelease-cfp:
177           autorelease-settings: 'autorelease-settings'
178           odl-global-settings: 'odl-global-settings'
179       - autorelease-generate-taglist
180       - autorelease-distribute-taglist
181       - autorelease-generate-release-patches
182       # In a perfect world projects should be releasing separately and we consume them
183       # via a project that pulls the release bits from each project from Nexus.
184       # Keep the patches compatible with that ideal, but apply an edit
185       # to enable building in a single maven reactor afterwards.
186       - autorelease-fix-relative-paths
187       - maven-target:
188           maven-version: 'mvn33'
189           pom: 'pom.xml'
190           goals: >
191               clean deploy -V -B -Pintegrationtests,docs,repoBuild -Djenkins
192               -Dcheckstyle.skip=true
193               -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
194               -DaltDeploymentRepository=staging::default::file:hide/from/pom/files/stage
195           java-opts:
196             - '-Xmx10g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
197           settings: 'autorelease-settings'
198           settings-type: cfp
199           global-settings: 'odl-global-settings'
200           global-settings-type: cfp
201       - autorelease-maven-deploy
202       - autorelease-get-integration-test-variables
203       - autorelease-maven-sources:
204           maven-version: 'mvn33'
205           settings: 'autorelease-settings'
206           global-settings: 'odl-global-settings'
207       - autorelease-maven-sources-post-process
208       - autorelease-sys-stats
209       - shell: |
210           mkdir -p archives/
211           cp *.log *.prop $_
212
213     publishers:
214       - email-notification:
215           email-recipients: '{email-recipients}'
216           email-prefix: '[autorelease]'
217       - trigger-parameterized-builds:
218           - project: 'integration-distribution-test-{integration-test}'
219             condition: UNSTABLE_OR_BETTER
220             property-file: variables.jenkins-trigger
221             fail-on-missing: true
222       - opendaylight-infra-shiplogs:
223           maven-version: 'mvn33'