323de7492ab9b60676416a573ea99245e7952f0d
[releng/builder.git] / jjb / opflex / opflex.yaml
1 ---
2 - project:
3     name: opflex-release
4     jobs:
5       - 'opflex-release-{stream}'
6
7     stream:
8       - fluorine:
9           branch: 'master'
10           libuv-version: '1.8.0'
11           rapidjson-version: '1.0.2'
12           openvswitch-version: '2.6.0'
13       - oxygen:
14           branch: 'stable/oxygen'
15           libuv-version: '1.8.0'
16           rapidjson-version: '1.0.2'
17           openvswitch-version: '2.6.0'
18       - nitrogen:
19           branch: 'stable/nitrogen'
20           libuv-version: '1.8.0'
21           rapidjson-version: '1.0.2'
22           openvswitch-version: '2.6.0'
23
24     project: 'opflex'
25     project-name: 'opflex'
26
27     jdk: 'openjdk8'
28
29     branch: master
30     build-timeout: 60
31     global-settings-file: global-settings
32     settings-file: opflex-settings
33     group-id: org.opendaylight.opflex
34     upload-files-dir: "$WORKSPACE/upload_files"
35
36     # Used by the release job
37     staging-profile-id: 906b0d53d714e
38
39 - job-template:
40     name: 'opflex-release-{stream}'
41
42     node: centos7-builder-2c-8g
43     jdk: '{java-version}'
44
45     ######################
46     # Default parameters #
47     ######################
48
49     build-timeout: 30
50     java-version: openjdk8
51     mvn-opts: ''
52     mvn-params: ''
53     mvn-version: mvn33
54     stream: master
55
56     properties:
57       - opendaylight-infra-properties:
58           build-days-to-keep: '{build-days-to-keep}'
59
60     parameters:
61       - opendaylight-infra-parameters:
62           os-cloud: '{os-cloud}'
63           project: '{project}'
64           branch: '{branch}'
65           refspec: 'refs/heads/{branch}'
66           artifacts: ''
67       - lf-infra-maven-parameters:
68           mvn-opts: '{mvn-opts}'
69           mvn-params: '{mvn-params}'
70           mvn-version: '{mvn-version}'
71           staging-profile-id: '{staging-profile-id}'
72       - string:
73           name: LIBUV_VERSION
74           # yamllint disable-line rule:line-length
75           default: '{libuv-version}'
76           description: 'libuv version to pull from thirdparty repository'
77       - string:
78           name: RAPIDJSON_VERSION
79           # yamllint disable-line rule:line-length
80           default: '{rapidjson-version}'
81           description: 'rapidjson version to pull from thirdparty repository'
82       - string:
83           name: OPENVSWITCH_VERSION
84           # yamllint disable-line rule:line-length
85           default: '{openvswitch-version}'
86           description: 'openvswitch version to pull from thirdparty repository'
87
88     scm:
89       - gerrit-trigger-scm:
90           refspec: ''
91           choosing-strategy: 'default'
92
93     wrappers:
94       - opendaylight-infra-wrappers:
95           build-timeout: '{build-timeout}'
96
97     builders:
98       - opflex-build:
99           mvn33: '{mvn-version}'
100           stream: '{stream}'
101       # todo: replace the builder with generic version in global-jjb
102       - opflex-deploy-maven-file:
103           global-settings-file: '{global-settings-file}'
104           settings-file: '{settings-file}'
105           mvn-version: '{mvn-version}'
106           repo-id: '{staging-profile-id}'
107           group-id: '{group-id}'
108           upload-files-dir: '{upload-files-dir}'
109       - lf-infra-create-netrc:
110           server-id: opendaylight-staging
111       # todo: replace the builder with generic version in global-jjb
112       - opflex-maven-stage:
113           global-settings-file: '{global-settings-file}'
114           settings-file: '{settings-file}'
115           staging-profile-id: '{staging-profile-id}'
116       - lf-provide-maven-settings-cleanup
117
118     publishers:
119       - email-notification:
120           email-recipients: '{email-recipients}'
121           email-prefix: '[opflex]'
122       - lf-infra-publish