54070aa3242e06bde54c453923c6bc892d750b51
[releng.git] / jjb / doctor / doctor.yml
1 - project:
2     name: doctor
3     jobs:
4         - 'doctor-test'
5         - 'doctor-daily-{stream}'
6         - 'doctor-merge'
7         - 'doctor-verify'
8
9     # stream:    branch with - in place of / (eg. stable-helium)
10     # branch:    branch (eg. stable/helium)
11     stream:
12         - master:
13             branch: 'master'
14
15     project: 'doctor'
16     somevar: 'foo'
17
18 - job-template:
19     name: doctor-test
20
21     project-type: freestyle
22
23     logrotate:
24         daysToKeep: 30
25         numToKeep: 10
26         artifactDaysToKeep: -1
27         artifactNumToKeep: -1
28
29     builders:
30         - shell: |
31             echo "Hello world from doctor"
32
33 - job-template:
34     name: 'doctor-daily-{stream}'
35
36     # Job template for daily builders
37     #
38     # Required Variables:
39     #     stream:    branch with - in place of / (eg. stable)
40     #     branch:    branch (eg. stable)
41
42     project-type: freestyle
43     varsetabove: '{somevar}'
44
45     logrotate:
46         daysToKeep: '{build-days-to-keep}'
47         numToKeep: '{build-num-to-keep}'
48         artifactDaysToKeep: '{build-artifact-days-to-keep}'
49         artifactNumToKeep: '{build-artifact-num-to-keep}'
50
51     parameters:
52         - project-parameter:
53             project: '{project}'
54         - string:
55             name: GIT_BASE
56             default: 'https://gerrit.opnfv.org/gerrit/{project}'
57             description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
58
59     scm:
60         - git-scm:
61             credentials-id: '{ssh-credentials}'
62             refspec: ''
63             branch: '{branch}'
64
65     wrappers:
66         - ssh-agent-credentials:
67             user: '{ssh-credentials}'
68
69     triggers:
70         - timed: 'H H * * *'
71
72     prebuilders:
73         - test-macro
74
75     builders:
76         - shell: |
77             pwd
78             find .
79             echo "Hello world from doctor {somevar} daily"
80
81     postbuilders:
82         - test-macro
83
84 - job-template:
85     name: 'doctor-verify'
86
87     project-type: freestyle
88
89     logrotate:
90         daysToKeep: 30
91         numToKeep: 10
92         artifactDaysToKeep: -1
93         artifactNumToKeep: -1
94
95     parameters:
96         - project-parameter:
97             project: '{project}'
98         - gerrit-parameter:
99             branch: 'master'
100         - string:
101             name: GIT_BASE
102             default: 'https://gerrit.opnfv.org/gerrit/{project}'
103             description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
104     scm:
105         - gerrit-trigger-scm:
106             credentials-id: '{ssh-credentials}'
107             refspec: '$GERRIT_REFSPEC'
108             choosing-strategy: 'gerrit'
109
110     wrappers:
111         - ssh-agent-credentials:
112             user: '{ssh-credentials}'
113
114     triggers:
115         - gerrit:
116             trigger-on:
117                 - patchset-created-event:
118                     exclude-drafts: 'false'
119                     exclude-trivial-rebase: 'false'
120                     exclude-no-code-change: 'false'
121                 - draft-published-event
122                 - comment-added-contains-event:
123                     comment-contains-value: 'recheck'
124                 - comment-added-contains-event:
125                     comment-contains-value: 'reverify'
126             projects:
127               - project-compare-type: 'ANT'
128                 project-pattern: 'doctor'
129                 branches:
130                   - branch-compare-type: 'ANT'
131                     branch-pattern: '**/master'
132
133     builders:
134         - shell: |
135             pwd
136             find .
137             echo "verify logic goes here"
138
139 - job-template:
140     name: 'doctor-merge'
141
142     # builder-merge job to run JJB update
143     #
144     # This job's purpose is to update all the JJB
145
146     project-type: freestyle
147
148     logrotate:
149         daysToKeep: 30
150         numToKeep: 40
151         artifactDaysToKeep: -1
152         artifactNumToKeep: 5
153
154     parameters:
155         - project-parameter:
156             project: '{project}'
157         - gerrit-parameter:
158             branch: 'master'
159         - string:
160             name: GIT_BASE
161             default: 'https://gerrit.opnfv.org/gerrit/{project}'
162             description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
163
164     scm:
165         - gerrit-trigger-scm:
166             credentials-id: '{ssh-credentials}'
167             refspec: ''
168             choosing-strategy: 'default'
169
170     wrappers:
171         - ssh-agent-credentials:
172             user: '{ssh-credentials}'
173
174     triggers:
175         - gerrit:
176             trigger-on:
177                 - change-merged-event
178                 - comment-added-contains-event:
179                     comment-contains-value: 'remerge'
180             projects:
181               - project-compare-type: 'ANT'
182                 project-pattern: 'doctor'
183                 branches:
184                     - branch-compare-type: 'ANT'
185                       branch-pattern: '**/master'
186
187     builders:
188         - shell: |
189             pwd
190             find .
191             echo "merge logic goes here"
192
193
194
195
196
197