510015137800eab17c50bf017bf492107808e771
[releng.git] / jjb / genesis / genesis.yml
1 - project:
2     name: genesis
3     jobs:
4         - 'genesis-test'
5         - 'genesis-daily-master'
6         - 'genesis-merge'
7         - 'genesis-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: 'genesis'
16     somevar: 'foo'
17
18 - job-template:
19     name: genesis-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 genesis"
32
33 - job-template:
34     name: 'genesis-daily-master'
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     wrappers:
52         - ssh-agent-credentials:
53             user: '{ssh-credentials}'
54
55     triggers:
56         - timed: 'H H * * *'
57
58     prebuilders:
59         - test-macro
60
61     builders:
62         - shell: |
63             echo "Hello world from genesis {somevar} daily"
64         - test-macro
65
66     postbuilders:
67         - test-macro
68
69 - job-template:
70     name: 'genesis-verify'
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     scm:
86         - gerrit-trigger-scm:
87             credentials-id: '{ssh-credentials}'
88             refspec: '$GERRIT_REFSPEC'
89             choosing-strategy: 'gerrit'
90
91     wrappers:
92         - ssh-agent-credentials:
93             user: '{ssh-credentials}'
94
95     triggers:
96         - gerrit:
97             trigger-on:
98                 - patchset-created-event:
99                     exclude-drafts: 'false'
100                     exclude-trivial-rebase: 'false'
101                     exclude-no-code-change: 'false'
102                 - draft-published-event
103                 - comment-added-contains-event:
104                     comment-contains-value: 'recheck'
105             projects:
106               - project-compare-type: 'ANT'
107                 project-pattern: 'releng'
108                 branches:
109                   - branch-compare-type: 'ANT'
110                     branch-pattern: '**/master'
111                 file-paths:
112                     - compare-type: ANT
113                       pattern: jjb/**
114                     - compare-type: ANT
115                       pattern: jjb-templates/**
116
117     builders:
118         - shell: |
119             echo foo
120             echo bar
121
122
123 - job-template:
124     name: 'genesis-merge'
125
126     # builder-merge job to run JJB update
127     #
128     # This job's purpose is to update all the JJB
129
130     project-type: freestyle
131
132     logrotate:
133         daysToKeep: 30
134         numToKeep: 40
135         artifactDaysToKeep: -1
136         artifactNumToKeep: 5
137
138     parameters:
139         - project-parameter:
140             project: '{project}'
141         - gerrit-parameter:
142             branch: 'master'
143
144     scm:
145         - gerrit-trigger-scm:
146             credentials-id: '{ssh-credentials}'
147             refspec: ''
148             choosing-strategy: 'default'
149
150     wrappers:
151         - ssh-agent-credentials:
152             user: '{ssh-credentials}'
153
154     triggers:
155         - gerrit:
156             trigger-on:
157                 - change-merged-event
158                 - comment-added-contains-event:
159                     comment-contains-value: 'remerge'
160             projects:
161               - project-compare-type: 'ANT'
162                 project-pattern: 'releng'
163                 branches:
164                     - branch-compare-type: 'ANT'
165                       branch-pattern: '**/master'
166                 file-paths:
167                     - compare-type: ANT
168                       pattern: jjb/**
169
170     builders:
171         - shell: |
172             echo foo
173             echo bar