Merge "Adding sshpass to centos after new karaf upgrade"
[releng/builder.git] / jjb / releng-jobs.yaml
1 - project:
2     name: builder-jobs
3     jobs:
4         - 'builder-verify-jjb'
5         - 'builder-verify-python'
6         - 'builder-merge'
7         - 'builder-weekly'
8         - 'builder-check-poms'
9
10     project: 'releng/builder'
11
12 - job-template:
13     name: builder-verify-jjb
14
15     project-type: freestyle
16
17     logrotate:
18         daysToKeep: 30
19         numToKeep: 10
20         artifactDaysToKeep: -1
21         artifactNumToKeep: -1
22
23     parameters:
24         - project-parameter:
25             project: '{project}'
26         - gerrit-parameter:
27             branch: 'master'
28
29     scm:
30         - gerrit-trigger-scm:
31             credentials-id: '{ssh-credentials}'
32             refspec: '$GERRIT_REFSPEC'
33             choosing-strategy: 'gerrit'
34
35     wrappers:
36         - ssh-agent-credentials:
37             user: '{ssh-credentials}'
38
39     triggers:
40         - gerrit:
41             trigger-on:
42                 - patchset-created-event:
43                     exclude-drafts: 'false'
44                     exclude-trivial-rebase: 'false'
45                     exclude-no-code-change: 'false'
46                 - draft-published-event
47                 - comment-added-contains-event:
48                     comment-contains-value: 'recheck'
49             projects:
50               - project-compare-type: 'ANT'
51                 project-pattern: 'releng/builder'
52                 branches:
53                   - branch-compare-type: 'ANT'
54                     branch-pattern: '**/master'
55                 file-paths:
56                     - compare-type: ANT
57                       pattern: jjb/**
58                     - compare-type: ANT
59                       pattern: jjb-templates/**
60
61     builders:
62         - shell: |
63             source /opt/virtualenv/jenkins-job-builder/bin/activate
64             python scripts/jjb-autoupdate-project.py
65             jenkins-jobs test jjb/
66
67     publishers:
68         - email-notification:
69             email-prefix: '[releng]'
70
71 - job-template:
72     name: builder-verify-python
73
74     project-type: freestyle
75
76     logrotate:
77         daysToKeep: 30
78         numToKeep: 10
79         artifactDaysToKeep: -1
80         artifactNumToKeep: -1
81
82     parameters:
83         - project-parameter:
84             project: '{project}'
85         - gerrit-parameter:
86             branch: 'master'
87
88     scm:
89         - gerrit-trigger-scm:
90             credentials-id: '{ssh-credentials}'
91             refspec: '$GERRIT_REFSPEC'
92             choosing-strategy: 'gerrit'
93
94     wrappers:
95         - ssh-agent-credentials:
96             user: '{ssh-credentials}'
97
98     triggers:
99         - gerrit:
100             trigger-on:
101                 - patchset-created-event:
102                     exclude-drafts: 'false'
103                     exclude-trivial-rebase: 'false'
104                     exclude-no-code-change: 'false'
105                 - draft-published-event
106                 - comment-added-contains-event:
107                     comment-contains-value: 'recheck'
108             projects:
109               - project-compare-type: 'ANT'
110                 project-pattern: 'releng/builder'
111                 branches:
112                   - branch-compare-type: 'ANT'
113                     branch-pattern: '**/master'
114                 file-paths:
115                     - compare-type: ANT
116                       pattern: scripts/**
117
118
119     builders:
120         - shell: |
121             flake8 scripts/
122
123     publishers:
124         - email-notification:
125             email-prefix: '[releng]'
126
127 - job-template:
128     name: 'builder-merge'
129
130     # builder-merge job to run JJB update
131     #
132     # This job's purpose is to update all the JJB
133
134     project-type: freestyle
135
136     logrotate:
137         daysToKeep: 30
138         numToKeep: 40
139         artifactDaysToKeep: -1
140         artifactNumToKeep: 5
141
142     parameters:
143         - project-parameter:
144             project: '{project}'
145         - gerrit-parameter:
146             branch: 'master'
147
148     scm:
149         - gerrit-trigger-scm:
150             credentials-id: '{ssh-credentials}'
151             refspec: ''
152             choosing-strategy: 'default'
153
154     wrappers:
155         - ssh-agent-credentials:
156             user: '{ssh-credentials}'
157
158     triggers:
159         - gerrit:
160             trigger-on:
161                 - change-merged-event
162                 - comment-added-contains-event:
163                     comment-contains-value: 'remerge'
164             projects:
165               - project-compare-type: 'ANT'
166                 project-pattern: 'releng/builder'
167                 branches:
168                     - branch-compare-type: 'ANT'
169                       branch-pattern: '**/master'
170                 file-paths:
171                     - compare-type: ANT
172                       pattern: jjb/**
173                     - compare-type: ANT
174                       pattern: jjb-templates/**
175
176     builders:
177         - shell:
178             !include-raw-escape include-raw-jjb-update.sh
179
180     publishers:
181         - email-notification:
182             email-prefix: '[releng]'
183
184 - job-template:
185     name: 'builder-weekly'
186
187     # builder-daily job to run JJB update weekly
188     #
189     # This job's purpose is to update all the JJB on a weekly (Sunday)
190     # basis with --flush-cache enabled to ensure jobs are okay
191
192     project-type: freestyle
193
194     logrotate:
195         daysToKeep: 30
196         numToKeep: 40
197         artifactDaysToKeep: -1
198         artifactNumToKeep: 5
199
200     parameters:
201         - project-parameter:
202             project: '{project}'
203
204     scm:
205         - git-scm:
206             credentials-id: '{ssh-credentials}'
207             branch: 'master'
208
209     wrappers:
210         - ssh-agent-credentials:
211             user: '{ssh-credentials}'
212
213     triggers:
214         - timed: 'H H * * 0'
215
216     builders:
217         - shell: |
218             source /opt/virtualenv/jenkins-job-builder/bin/activate
219             jenkins-jobs --flush-cache update jjb/
220
221     publishers:
222         - email-notification:
223             email-prefix: '[releng]'
224
225 - job-template:
226     name: builder-check-poms
227
228     project-type: freestyle
229
230     logrotate:
231         daysToKeep: 1
232         numToKeep: 1
233         artifactDaysToKeep: -1
234         artifactNumToKeep: -1
235
236     wrappers:
237         - ssh-agent-credentials:
238             user: '{ssh-credentials}'
239
240     triggers:
241         - timed: 'H H * * 1'
242
243     builders:
244         - shell:
245             !include-raw-escape include-raw-check-poms.sh
246
247     publishers:
248         - email-notification:
249             email-prefix: '[releng]'