Remove verify-tox / python jobs
[releng/builder.git] / jjb / releng-templates.yaml
1 ---
2 - job-template:
3     name: '{project-name}-release-java'
4
5     # Job template for producing a release candidate by creating a staging repo
6     # in Nexus.
7
8     project-type: freestyle
9     node: '{build-node}'
10     jdk: '{jdk}'
11
12     properties:
13       - opendaylight-infra-properties:
14           build-days-to-keep: 30
15
16     parameters:
17       - opendaylight-infra-parameters:
18           os-cloud: '{os-cloud}'
19           project: '{project}'
20           branch: '{branch}'
21           refspec: 'refs/heads/{branch}'
22           artifacts: '{archive-artifacts}'
23       - build-tag
24       - stage-id-parameter:
25           stage-id: '{stage-id}'
26
27     scm:
28       - git:
29           credentials-id: 'opendaylight-jenkins-ssh'
30           url: '$GIT_BASE'
31           branches:
32             - '$BUILD_TAG'
33           skip-tag: true
34           shallow-clone: true
35           wipe-workspace: true
36
37     wrappers:
38       - opendaylight-infra-wrappers:
39           build-timeout: '{build-timeout}'
40
41     builders:
42       - wipe-org-opendaylight-repo
43       - jacoco-nojava-workaround
44       - provide-maven-settings:
45           global-settings-file: 'global-settings'
46           settings-file: 'autorelease-settings'
47       - maven-target:
48           maven-version: 'mvn33'
49           pom: 'pom.xml'
50           goals: >
51               clean deploy -V -B
52               -Dmaven.repo.local=/tmp/r
53               -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
54               -Djenkins
55               -DaltDeploymentRepository=staging::default::file:hide/from/pom/files/stage
56           java-opts:
57             - '-Xmx1024m -XX:MaxPermSize=256m'
58           settings: 'autorelease-settings'
59           settings-type: cfp
60           global-settings: 'global-settings'
61           global-settings-type: cfp
62       - releng-stage-release
63
64     publishers:
65       - email-notification:
66           email-recipients: '{email-recipients}'
67           email-prefix: '[releng]'
68       - lf-infra-publish
69
70
71 - job-template:
72     name: '{project-name}-publish-p2repo'
73
74     # Job template for publishing a p2 repo given a URL to a zipped p2repo.
75
76     project-type: freestyle
77     node: '{build-node}'
78     jdk: '{jdk}'
79
80     parameters:
81       - opendaylight-infra-parameters:
82           os-cloud: '{os-cloud}'
83           project: '{project}'
84           branch: '{branch}'
85           refspec: 'refs/heads/{branch}'
86           artifacts: '{archive-artifacts}'
87       - p2zip-parameter
88
89     wrappers:
90       - opendaylight-infra-wrappers:
91           build-timeout: '{build-timeout}'
92
93     builders:
94       - wipe-org-opendaylight-repo
95       - jacoco-nojava-workaround
96       - releng-fetch-p2zip-if-necessary:
97           maven-version: 'mvn33'
98           settings: '{mvn-settings}'
99           global-settings: 'global-settings'
100       - releng-generate-p2pom
101       - maven-target:
102           maven-version: 'mvn33'
103           pom: 'pom.xml'
104           goals: 'clean deploy -V -B -Dmaven.repo.local=/tmp/r'
105           settings: '{mvn-settings}'
106           settings-type: cfp
107           global-settings: 'global-settings'
108           global-settings-type: cfp
109       - releng-update-p2composite-metadata:
110           maven-version: 'mvn33'
111           settings: '{mvn-settings}'
112           global-settings: 'global-settings'
113
114     publishers:
115       - email-notification:
116           email-recipients: '{email-recipients}'
117           email-prefix: '[releng]'
118       - lf-infra-publish
119
120 - job-template:
121     name: '{project-name}-merge-rtd-{stream}'
122     # Template for ReadTheDocs triggering
123
124     project-type: freestyle
125     node: '{build-node}'
126     concurrent: false
127
128     parameters:
129       - opendaylight-infra-parameters:
130           os-cloud: '{os-cloud}'
131           project: '{project}'
132           branch: '{branch}'
133           refspec: 'refs/heads/{branch}'
134           artifacts: '{archive-artifacts}'
135
136     wrappers:
137       - opendaylight-infra-wrappers:
138           build-timeout: '{build-timeout}'
139
140     triggers:
141       - gerrit-trigger-patch-merged:
142           server-name: '{server-name}'
143           name: '{project}'
144           branch: '{branch}'
145
146     builders:
147       - shell: |
148           curl -X POST https://readthedocs.org/build/{rtdproject}
149
150     publishers:
151       - email-notification:
152           email-recipients: '{email-recipients}'
153           email-prefix: '[{project}]'
154       - lf-infra-publish
155
156 # Node related
157
158 - job-template:
159     name: '{project-name}-verify-node-{stream}'
160
161     # Job template for python verify jobs
162     #
163     # The purpose of this job template is to run node tests for projects using
164     # this template. It uses python virtualenv to install nodeenv and create a
165     # virtualenv for nodejs.
166     #
167     # Required Variables:
168     #     stream:    release stream (eg. nitrogen or oxygen)
169     #     branch:    git branch (eg. stable/nitrogen or master)
170     #     nodedir:   directory of nodejs project to run node test against
171     #     nodever:   version of node to install in virtualenv
172
173     project-type: freestyle
174     node: '{build-node}'
175     concurrent: true
176
177     properties:
178       - opendaylight-infra-properties:
179           build-days-to-keep: 7
180
181     parameters:
182       - opendaylight-infra-parameters:
183           os-cloud: '{os-cloud}'
184           project: '{project}'
185           branch: '{branch}'
186           refspec: 'refs/heads/{branch}'
187           artifacts: '{archive-artifacts}'
188
189     scm:
190       - git:
191           credentials-id: 'opendaylight-jenkins-ssh'
192           url: '$GIT_BASE'
193           basedir: 'repo'
194           refspec: '$GERRIT_REFSPEC'
195           branches:
196             - 'origin/$GERRIT_BRANCH'
197           skip-tag: true
198           choosing-strategy: 'gerrit'
199
200     wrappers:
201       - opendaylight-infra-wrappers:
202           build-timeout: '{build-timeout}'
203
204     triggers:
205       - gerrit-trigger-patch-submitted:
206           server: '{server-name}'
207           project: '{project}'
208           branch: '{branch}'
209           files: '{nodedir}/**'
210
211     builders:
212       - shell: |
213           #!/bin/bash
214           # Prepare Python
215           virtualenv $WORKSPACE/venv-python
216           source $WORKSPACE/venv-python/bin/activate
217           PYTHON="$WORKSPACE/venv-python/bin/python"
218           $PYTHON -m pip install --upgrade pip
219           $PYTHON -m pip install --upgrade tox argparse nodeenv
220           $PYTHON -m pip install --upgrade pipdeptree
221           pipdeptree
222
223           # Prepare node
224           nodeenv --node={nodever} --prebuilt $WORKSPACE/venv-node
225           source $WORKSPACE/venv-node/bin/activate
226           cd $WORKSPACE/repo/{nodedir}
227           npm install
228           npm test
229
230     publishers:
231       - email-notification:
232           email-recipients: '{email-recipients}'
233           email-prefix: '[{project}]'
234       - lf-infra-publish