Merge "Add tool to backup Mongo tables and postman collection as sample"
[releng.git] / jjb / pharos / pharos.yml
1 #################################
2 # job configuration for pharos
3 #################################
4 - project:
5     name: pharos
6     jobs:
7         - 'pharos-daily-{stream}'
8         - 'pharos-merge-{stream}'
9         - 'pharos-verify-{stream}'
10         - 'pharos-maas-pilot-{stream}'
11
12     # stream:    branch with - in place of / (eg. stable-arno)
13     # branch:    branch (eg. stable/arno)
14     stream:
15         - master:
16             branch: 'master'
17             gs-pathname: ''
18         - stable-arno:
19             branch: 'stable/arno'
20             gs-pathname: '/arno'
21
22     project: 'pharos'
23     somevar: 'foo'
24 ##############################
25 # job template
26 ##############################
27 - job-template:
28     name: 'pharos-daily-{stream}'
29
30     node: master
31
32     # Job template for daily builders
33     #
34     # Required Variables:
35     #     stream:    branch with - in place of / (eg. stable)
36     #     branch:    branch (eg. stable)
37
38     project-type: freestyle
39     varsetabove: '{somevar}'
40
41     logrotate:
42         daysToKeep: '{build-days-to-keep}'
43         numToKeep: '{build-num-to-keep}'
44         artifactDaysToKeep: '{build-artifact-days-to-keep}'
45         artifactNumToKeep: '{build-artifact-num-to-keep}'
46
47     parameters:
48         - project-parameter:
49             project: '{project}'
50         - pharos-parameter:
51             gs-pathname: '{gs-pathname}'
52
53     scm:
54         - git-scm:
55             credentials-id: '{ssh-credentials}'
56             refspec: ''
57             branch: '{branch}'
58
59     triggers:
60         - 'pharos-{stream}'
61
62     prebuilders:
63         - test-macro
64
65     builders:
66         - shell:
67             !include-raw ../opnfvdocs/docu-build.sh
68
69     postbuilders:
70         - test-macro
71
72 - job-template:
73     name: 'pharos-verify-{stream}'
74
75     node: master
76
77     project-type: freestyle
78
79     logrotate:
80         daysToKeep: 30
81         numToKeep: 10
82         artifactDaysToKeep: -1
83         artifactNumToKeep: -1
84
85     parameters:
86         - project-parameter:
87             project: '{project}'
88         - gerrit-parameter:
89             branch: '{branch}'
90     scm:
91         - gerrit-trigger-scm:
92             credentials-id: '{ssh-credentials}'
93             refspec: '$GERRIT_REFSPEC'
94             choosing-strategy: 'gerrit'
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                 - comment-added-contains-event:
107                     comment-contains-value: 'reverify'
108             projects:
109               - project-compare-type: 'ANT'
110                 project-pattern: 'pharos'
111                 branches:
112                   - branch-compare-type: 'ANT'
113                     branch-pattern: '**/{branch}'
114
115     builders:
116         - shell:
117             !include-raw ../opnfvdocs/docu-build.sh
118
119 - job-template:
120     name: 'pharos-merge-{stream}'
121
122     node: master
123
124     # builder-merge job to run JJB update
125     #
126     # This job's purpose is to update all the JJB
127
128     project-type: freestyle
129
130     logrotate:
131         daysToKeep: 30
132         numToKeep: 40
133         artifactDaysToKeep: -1
134         artifactNumToKeep: 5
135
136     parameters:
137         - project-parameter:
138             project: '{project}'
139         - gerrit-parameter:
140             branch: '{branch}'
141
142     scm:
143         - gerrit-trigger-scm:
144             credentials-id: '{ssh-credentials}'
145             refspec: ''
146             choosing-strategy: 'default'
147
148     triggers:
149         - gerrit:
150             trigger-on:
151                 - change-merged-event
152                 - comment-added-contains-event:
153                     comment-contains-value: 'remerge'
154             projects:
155               - project-compare-type: 'ANT'
156                 project-pattern: 'pharos'
157                 branches:
158                     - branch-compare-type: 'ANT'
159                       branch-pattern: '**/{branch}'
160
161     builders:
162         - shell:
163             !include-raw ../opnfvdocs/docu-build.sh
164
165 - job-template:
166     name: 'pharos-maas-pilot-{stream}'
167
168     node: master
169
170     project-type: freestyle
171
172     logrotate:
173         daysToKeep: '{build-days-to-keep}'
174         numToKeep: '{build-num-to-keep}'
175         artifactDaysToKeep: '{build-artifact-days-to-keep}'
176         artifactNumToKeep: '{build-artifact-num-to-keep}'
177
178     parameters:
179         - project-parameter:
180             project: '{project}'
181
182     scm:
183         - git-scm:
184             credentials-id: '{ssh-credentials}'
185             refspec: ''
186             branch: '{branch}'
187
188     triggers:
189        - pollscm: '@midnight'
190
191     builders:
192         - shell:
193             echo "Hello World"
194 ########################
195 # parameter macros
196 ########################
197 - parameter:
198     name: pharos-parameter
199     parameters:
200         - string:
201             name: GS_PATHNAME
202             default: '{gs-pathname}'
203             description: "Version directory where the pharos documents will be stored in gs repository"
204
205 ########################
206 ## trigger macros
207 #########################
208 - trigger:
209     name: 'pharos-master'
210     triggers:
211        - pollscm: "H 6 * * *"
212
213 - trigger:
214     name: 'pharos-stable-arno'
215     triggers:
216        - pollscm: "H 18 * * *"