acc8f59f5b3b9a67f5a433c819a6afa6d7f26e07
[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-check-poms'
8
9     project: 'releng/builder'
10
11 - job-template:
12     name: builder-verify-jjb
13
14     project-type: freestyle
15
16     logrotate:
17         daysToKeep: 30
18         numToKeep: 10
19         artifactDaysToKeep: -1
20         artifactNumToKeep: -1
21
22     parameters:
23         - project-parameter:
24             project: '{project}'
25         - gerrit-parameter:
26             branch: 'master'
27
28     scm:
29         - gerrit-trigger-scm:
30             credentials-id: '{ssh-credentials}'
31             refspec: '$GERRIT_REFSPEC'
32             choosing-strategy: 'gerrit'
33
34     wrappers:
35         - ssh-agent-credentials:
36             user: '{ssh-credentials}'
37
38     triggers:
39         - gerrit:
40             trigger-on:
41                 - patchset-created-event:
42                     exclude-drafts: 'false'
43                     exclude-trivial-rebase: 'false'
44                     exclude-no-code-change: 'false'
45                 - draft-published-event
46                 - comment-added-contains-event:
47                     comment-contains-value: 'recheck'
48             projects:
49               - project-compare-type: 'ANT'
50                 project-pattern: 'releng/builder'
51                 branches:
52                   - branch-compare-type: 'ANT'
53                     branch-pattern: '**/master'
54                 file-paths:
55                     - compare-type: ANT
56                       pattern: jjb/**
57
58
59     builders:
60         - shell: |
61             source /opt/virtualenv/jenkins-job-builder/bin/activate
62             python scripts/jjb-autoupdate-project.py
63             jenkins-jobs test jjb/
64
65     publishers:
66         - email-notification:
67             email-prefix: '[releng]'
68
69 - job-template:
70     name: builder-verify-python
71
72     project-type: freestyle
73
74     logrotate:
75         daysToKeep: 30
76         numToKeep: 10
77         artifactDaysToKeep: -1
78         artifactNumToKeep: -1
79
80     parameters:
81         - project-parameter:
82             project: '{project}'
83         - gerrit-parameter:
84             branch: 'master'
85
86     scm:
87         - gerrit-trigger-scm:
88             credentials-id: '{ssh-credentials}'
89             refspec: '$GERRIT_REFSPEC'
90             choosing-strategy: 'gerrit'
91
92     wrappers:
93         - ssh-agent-credentials:
94             user: '{ssh-credentials}'
95
96     triggers:
97         - gerrit:
98             trigger-on:
99                 - patchset-created-event:
100                     exclude-drafts: 'false'
101                     exclude-trivial-rebase: 'false'
102                     exclude-no-code-change: 'false'
103                 - draft-published-event
104                 - comment-added-contains-event:
105                     comment-contains-value: 'recheck'
106             projects:
107               - project-compare-type: 'ANT'
108                 project-pattern: 'releng/builder'
109                 branches:
110                   - branch-compare-type: 'ANT'
111                     branch-pattern: '**/master'
112                 file-paths:
113                     - compare-type: ANT
114                       pattern: scripts/**
115
116
117     builders:
118         - shell: |
119             flake8 scripts/
120
121     publishers:
122         - email-notification:
123             email-prefix: '[releng]'
124
125 - job-template:
126     name: 'builder-merge'
127
128     # builder-merge job to run JJB update
129     #
130     # This job's purpose is to update all the JJB
131
132     project-type: freestyle
133
134     logrotate:
135         daysToKeep: 30
136         numToKeep: 40
137         artifactDaysToKeep: -1
138         artifactNumToKeep: 5
139
140     parameters:
141         - project-parameter:
142             project: '{project}'
143         - gerrit-parameter:
144             branch: 'master'
145
146     scm:
147         - gerrit-trigger-scm:
148             credentials-id: '{ssh-credentials}'
149             refspec: ''
150             choosing-strategy: 'default'
151
152     wrappers:
153         - ssh-agent-credentials:
154             user: '{ssh-credentials}'
155
156     triggers:
157         - gerrit:
158             trigger-on:
159                 - change-merged-event
160                 - comment-added-contains-event:
161                     comment-contains-value: 'remerge'
162             projects:
163               - project-compare-type: 'ANT'
164                 project-pattern: 'releng/builder'
165                 branches:
166                     - branch-compare-type: 'ANT'
167                       branch-pattern: '**/master'
168                 file-paths:
169                     - compare-type: ANT
170                       pattern: jjb/**
171
172     builders:
173         - shell:
174             !include-raw-escape include-raw-jjb-update.sh
175
176     publishers:
177         - email-notification:
178             email-prefix: '[releng]'
179
180 - job-template:
181     name: builder-check-poms
182
183     project-type: freestyle
184
185     logrotate:
186         daysToKeep: 1
187         numToKeep: 1
188         artifactDaysToKeep: -1
189         artifactNumToKeep: -1
190
191     wrappers:
192         - ssh-agent-credentials:
193             user: '{ssh-credentials}'
194
195     triggers:
196         - timed: 'H H * * 1'
197
198     builders:
199         - shell:
200             !include-raw-escape include-raw-check-poms.sh
201
202     publishers:
203         - email-notification:
204             email-prefix: '[releng]'