42567ea1bf0c732ae7dfec8ed08ba16500a9c47c
[releng.git] / jjb / apex / apex-project-jobs.yaml
1 ---
2 - project:
3     name: 'apex-project-jobs'
4     project: 'apex'
5
6     stream:
7       - master: &master
8           branch: 'master'
9           gs-pathname: ''
10           concurrent-builds: 3
11           disabled: false
12       - gambia: &gambia
13           branch: 'stable/{stream}'
14           gs-pathname: '/{stream}'
15           concurrent-builds: 3
16           disabled: false
17       - fraser: &fraser
18           branch: 'stable/{stream}'
19           gs-pathname: '/{stream}'
20           concurrent-builds: 3
21           disabled: false
22       - euphrates: &euphrates
23           branch: 'stable/euphrates'
24           gs-pathname: '/euphrates'
25           concurrent-builds: 3
26           disabled: true
27       - danube: &danube
28           branch: 'stable/danube'
29           gs-pathname: '/danube'
30           concurrent-builds: 1
31           disabled: true
32
33     jobs:
34       - 'apex-build-{stream}'
35       - 'apex-verify-iso-{stream}'
36
37 # Build phase
38 - job-template:
39     name: 'apex-build-{stream}'
40
41     # Job template for builds
42     #
43     # Required Variables:
44     #     stream:    branch with - in place of / (eg. stable)
45     #     branch:    branch (eg. stable)
46     node: 'apex-build-master'
47
48     disabled: false
49
50     concurrent: true
51
52     parameters:
53       - '{project}-defaults'
54       - project-parameter:
55           project: '{project}'
56           branch: '{branch}'
57       - apex-parameter:
58           gs-pathname: '{gs-pathname}'
59
60     scm:
61       - git-scm-gerrit
62
63     wrappers:
64       - timeout:
65           timeout: 150
66           fail: true
67
68     properties:
69       - logrotate-default
70       - throttle:
71           max-per-node: '{concurrent-builds}'
72           max-total: 10
73           option: 'project'
74       - build-blocker:
75           use-build-blocker: true
76           blocking-level: 'NODE'
77           blocking-jobs:
78             - 'apex-verify-iso-{stream}'
79
80     builders:
81       - 'apex-build'
82       - inject:
83           properties-content: ARTIFACT_TYPE=rpm
84       - 'apex-upload-artifact'
85
86 # ISO verify job
87 - job-template:
88     name: 'apex-verify-iso-{stream}'
89
90     # Job template for builds
91     #
92     # Required Variables:
93     #     stream:    branch with - in place of / (eg. stable)
94     #     branch:    branch (eg. stable)
95     node: 'apex-virtual-master'
96
97     disabled: false
98
99     concurrent: true
100
101     parameters:
102       - project-parameter:
103           project: '{project}'
104           branch: '{branch}'
105       - apex-parameter:
106           gs-pathname: '{gs-pathname}'
107       - string:
108           name: GIT_BASE
109           default: https://gerrit.opnfv.org/gerrit/$PROJECT
110           description: "Used for overriding the GIT URL coming from parameters macro."
111
112     scm:
113       - git-scm
114
115     properties:
116       - logrotate-default
117       - throttle:
118           max-per-node: 1
119           max-total: 10
120           option: 'project'
121
122     builders:
123       - 'apex-iso-verify'
124       - inject:
125           properties-content: ARTIFACT_TYPE=iso
126       - 'apex-upload-artifact'
127
128 ########################
129 # builder macros
130 ########################
131 - builder:
132     name: 'apex-build'
133     builders:
134       - shell:
135           !include-raw: ./apex-build.sh
136
137 - builder:
138     name: 'apex-iso-verify'
139     builders:
140       - shell:
141           !include-raw: ./apex-iso-verify.sh