Create Stable Branch Jobs for clover
[releng.git] / jjb / clover / clover-project.yaml
1 ---
2 ###################################################
3 # All the jobs except verify have been removed!
4 # They will only be enabled on request by projects!
5 ###################################################
6 - project:
7     name: clover
8
9     project: '{name}'
10
11     jobs:
12       - 'clover-verify-{stream}'
13       - 'clover-daily-upload-{stream}'
14       - 'clover-daily-deploy-{stream}'
15
16     stream:
17       - master:
18           branch: '{stream}'
19           gs-pathname: ''
20           disabled: false
21       - hunter:
22           branch: 'stable/{stream}'
23           gs-pathname: '/{stream}'
24           disabled: false
25
26 - job-template:
27     name: 'clover-verify-{stream}'
28
29     disabled: '{obj:disabled}'
30
31     parameters:
32       - project-parameter:
33           project: '{project}'
34           branch: '{branch}'
35       # yamllint disable rule:line-length
36       - string:
37           name: GIT_BASE
38           default: https://gerrit.opnfv.org/gerrit/$PROJECT
39           description: "Used for overriding the GIT URL coming from Global Jenkins\
40             \ configuration in case if the stuff is done on none-LF HW."
41       # yamllint enable rule:line-length
42       - 'opnfv-build-ubuntu-defaults'
43
44     scm:
45       - git-scm-gerrit
46
47     triggers:
48       - gerrit:
49           server-name: 'gerrit.opnfv.org'
50           trigger-on:
51             - patchset-created-event:
52                 exclude-drafts: 'false'
53                 exclude-trivial-rebase: 'false'
54                 exclude-no-code-change: 'false'
55             - draft-published-event
56             - comment-added-contains-event:
57                 comment-contains-value: 'recheck'
58             - comment-added-contains-event:
59                 comment-contains-value: 'reverify'
60           projects:
61             - project-compare-type: 'ANT'
62               project-pattern: '{project}'
63               branches:
64                 - branch-compare-type: 'ANT'
65                   branch-pattern: '**/{branch}'
66               disable-strict-forbidden-file-verification: 'true'
67               forbidden-file-paths:
68                 - compare-type: ANT
69                   pattern: 'docs/**|.gitignore'
70
71     builders:
72       - shell: |
73           cd $WORKSPACE/ci
74           ./verify.sh
75
76 - job-template:
77     name: 'clover-daily-upload-{stream}'
78
79     disabled: '{obj:disabled}'
80
81     concurrent: false
82
83     scm:
84       - git-scm
85
86     triggers:
87       - timed: '0 8 * * *'
88
89     wrappers:
90       - fix-workspace-permissions
91
92     parameters:
93       - project-parameter:
94           project: '{project}'
95           branch: '{branch}'
96       - 'opnfv-build-ubuntu-defaults'
97       - 'clover-defaults':
98           gs-pathname: '{gs-pathname}'
99
100     builders:
101       - shell: |
102           cd $WORKSPACE/ci
103           ./upload.sh
104
105 - job-template:
106     name: 'clover-daily-deploy-{stream}'
107
108     project-type: freestyle
109
110     disabled: '{obj:disabled}'
111
112     concurrent: false
113
114     properties:
115       - logrotate-default
116       - throttle:
117           enabled: true
118           max-per-node: 1
119           option: 'project'
120       - build-blocker:
121           use-build-blocker: true
122           blocking-jobs:
123             - 'clover-daily-deploy-.*?'
124             - 'container4nfv-daily-deploy-.*?'
125           blocking-level: 'NODE'
126
127     wrappers:
128       - timeout:
129           timeout: 180
130           abort: true
131       - fix-workspace-permissions
132
133     parameters:
134       - project-parameter:
135           project: '{project}'
136           branch: '{branch}'
137       # yamllint disable rule:line-length
138       - string:
139           name: GIT_BASE
140           default: https://gerrit.opnfv.org/gerrit/$PROJECT
141           description: "Used for overriding the GIT URL coming from Global Jenkins\
142             \ configuration in case if the stuff is done on none-LF HW."
143       # yamllint enable rule:line-length
144       - node:
145           name: SLAVE_NAME
146           description: 'Slave name on Jenkins'
147           allowed-slaves:
148             - huawei-virtual6
149           default-slaves:
150             - huawei-virtual6
151
152     scm:
153       - git-scm
154
155     triggers:
156       - timed: '0 9 * * *'
157
158     builders:
159       - shell: |
160           cd $WORKSPACE/ci
161           ./deploy.sh
162
163 ###################
164 # parameter macros
165 ###################
166 - parameter:
167     name: 'clover-defaults'
168     parameters:
169       - string:
170           name: GS_URL
171           default: artifacts.opnfv.org/$PROJECT{gs-pathname}
172           description: "URL to Google Storage."