[compass] adjust concurrency of ci daily jobs
[releng.git] / jjb / compass4nfv / compass-project-jobs.yml
1 - project:
2
3     name: compass-project
4
5     installer: 'compass'
6
7     project: 'compass4nfv'
8
9     stream:
10         - master:
11             branch: '{stream}'
12             gs-pathname: ''
13         - brahmaputra:
14             branch: 'stable/{stream}'
15             gs-pathname: '/{stream}'
16
17
18     jobs:
19         - 'compass-verify-{stream}'
20         - 'compass-build-iso-{stream}'
21         - 'compass-build-ppa-{stream}'
22         - 'compass-verify-deploy-{stream}'
23
24
25 ########################
26 # job templates
27 ########################
28 - job-template:
29     name: 'compass-verify-{stream}'
30
31     disabled: false
32
33     node: 'huawei-virtual'
34
35     concurrent: true
36
37     wrappers:
38         - timeout:
39             timeout: 120
40             fail: true
41
42     properties:
43         - throttle:
44             enabled: true
45             max-per-node: 1
46         - build-blocker:
47             use-build-blocker: true
48             blocking-jobs:
49                 - 'compass-verify-[^-]*'
50                 - 'compass-os-.*?-virtual-daily-.*?'
51             block-level: 'NODE'
52
53     parameters:
54         - project-parameter:
55             project: '{project}'
56         - gerrit-parameter:
57             branch: '{branch}'
58         - compass-project-parameter:
59             installer: '{installer}'
60             gs-pathname: '{gs-pathname}'
61         - '{node}-defaults'
62         - '{installer}-defaults'
63         - string:
64             name: DEPLOY_SCENARIO
65             default: 'os-nosdn-nofeature-ha'
66
67     triggers:
68         - gerrit:
69             trigger-on:
70                 - patchset-created-event:
71                     exclude-drafts: 'false'
72                     exclude-trivial-rebase: 'false'
73                     exclude-no-code-change: 'false'
74                 - draft-published-event
75                 - comment-added-contains-event:
76                     comment-contains-value: 'recheck'
77                 - comment-added-contains-event:
78                     comment-contains-value: 'reverify'
79             projects:
80               - project-compare-type: 'ANT'
81                 project-pattern: '{project}'
82                 branches:
83                   - branch-compare-type: 'ANT'
84                     branch-pattern: '**/{branch}'
85                 forbidden-file-paths:
86                   - compare-type: ANT
87                     pattern: 'docs/**|.gitignore'
88
89     builders:
90         - trigger-builds:
91             - project: 'compass-verify-deploy-{stream}'
92               current-parameters: true
93               same-node: true
94               block: true
95
96 - job-template:
97     name: 'compass-verify-deploy-{stream}'
98
99     concurrent: true
100
101     properties:
102         - throttle:
103             enabled: true
104             max-per-node: 1
105         - build-blocker:
106             use-build-blocker: true
107             blocking-jobs:
108                 - 'compass-deploy-huawei-virtual-daily-.*?'
109             block-level: 'NODE'
110
111     scm:
112         - gerrit-trigger-scm:
113             credentials-id: '{ssh-credentials}'
114             refspec: '$GERRIT_REFSPEC'
115             choosing-strategy: 'gerrit'
116
117     builders:
118         - shell:
119             !include-raw: ./compass-build.sh
120         - shell:
121             !include-raw: ./compass-deploy.sh
122
123     publishers:
124         - archive:
125             artifacts: 'ansible.log'
126             allow-empty: 'true'
127             fingerprint: true
128
129 - job-template:
130     name: 'compass-build-iso-{stream}'
131
132     node: ericsson-build
133
134     concurrent: true
135
136     properties:
137         - throttle:
138             enabled: true
139             max-total: 1
140             max-per-node: 1
141
142     parameters:
143         - project-parameter:
144             project: '{project}'
145         - compass-project-parameter:
146             installer: '{installer}'
147             gs-pathname: '{gs-pathname}'
148         - '{node}-defaults'
149         - '{installer}-defaults'
150
151     scm:
152         - git-scm:
153             credentials-id: '{ssh-credentials}'
154             refspec: ''
155             branch: '{branch}'
156
157     triggers:
158         - timed: 'H 14 * * *'
159
160     builders:
161         - shell:
162             !include-raw: ./compass-build.sh
163         - shell:
164             !include-raw: ./compass-upload-artifact.sh
165         - shell:
166             !include-raw: ./compass-workspace-cleanup.sh
167
168 - job-template:
169     name: 'compass-build-ppa-{stream}'
170
171     description: "build ppa(using docker) in huawei lab"
172
173     node: huawei-build
174
175     concurrent: true
176
177     properties:
178         - throttle:
179             enabled: true
180             max-total: 1
181             max-per-node: 1
182
183     parameters:
184         - project-parameter:
185             project: '{project}'
186         - compass-project-parameter:
187             installer: '{installer}'
188             gs-pathname: '{gs-pathname}'
189         - '{node}-defaults'
190         - '{installer}-defaults'
191     scm:
192         - git-scm:
193             credentials-id: '{ssh-credentials}'
194             refspec: ''
195             branch: '{branch}'
196
197     builders:
198         - shell:
199             !include-raw: ./compass-makeppa.sh
200
201
202
203 ########################
204 # parameter macros
205 ########################
206 - parameter:
207     name: compass-project-parameter
208     parameters:
209         - string:
210             name: BUILD_DIRECTORY
211             default: $WORKSPACE/build_output
212             description: "Directory where the build artifact will be located upon the completion of the build."
213         - string:
214             name: CACHE_DIRECTORY
215             default: "$HOME/opnfv/cache/$PROJECT{gs-pathname}"
216             description: "Directory where the cache to be used during the build is located."
217         - string:
218             name: GS_URL
219             default: '$GS_BASE{gs-pathname}'
220             description: "URL to Google Storage."
221         - string:
222             name: PPA_REPO
223             default: "http://205.177.226.237:9999{gs-pathname}"
224         - string:
225             name: PPA_CACHE
226             default: "$WORKSPACE/work/repo/"
227         - choice:
228             name: COMPASS_OPENSTACK_VERSION
229             choices:
230                 - 'liberty'
231                 - 'juno'
232         - choice:
233             name: COMPASS_OS_VERSION
234             choices:
235                 - 'trusty'
236                 - 'centos7'
237