Merge "jjb: move project-style to releng-defaults.yaml"
[releng.git] / jjb / octopus / octopus.yml
1 ################################
2 # job configuration for Octopus
3 ################################
4 - project:
5     name: octopus
6     jobs:
7         - 'octopus-test'
8         - 'octopus-daily-{stream}'
9         - 'octopus-merge-{stream}'
10         - 'octopus-verify-{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: 'octopus'
23     somevar: 'foo'
24 ###############################
25 # job templates
26 ###############################
27
28 - job-template:
29     name: octopus-test
30
31     logrotate:
32         daysToKeep: 30
33         numToKeep: 10
34         artifactDaysToKeep: -1
35         artifactNumToKeep: -1
36
37     builders:
38         - shell: |
39             echo "Hello world from octopus"
40
41 - job-template:
42     name: 'octopus-daily-{stream}'
43
44     node: master
45
46     # Job template for daily builders
47     #
48     # Required Variables:
49     #     stream:    branch with - in place of / (eg. stable)
50     #     branch:    branch (eg. stable)
51
52     varsetabove: '{somevar}'
53
54     logrotate:
55         daysToKeep: '{build-days-to-keep}'
56         numToKeep: '{build-num-to-keep}'
57         artifactDaysToKeep: '{build-artifact-days-to-keep}'
58         artifactNumToKeep: '{build-artifact-num-to-keep}'
59
60     parameters:
61         - project-parameter:
62             project: '{project}'
63         - octopus-parameter:
64             gs-pathname: '{gs-pathname}'
65
66     scm:
67         - git-scm:
68             credentials-id: '{ssh-credentials}'
69             refspec: ''
70             branch: '{branch}'
71
72     triggers:
73         - 'octopus-{stream}'
74
75     prebuilders:
76         - test-macro
77
78     builders:
79         - shell:
80             !include-raw ../opnfvdocs/docu-build.sh
81
82     postbuilders:
83         - test-macro
84
85 - job-template:
86     name: 'octopus-verify-{stream}'
87
88     node: master
89
90     logrotate:
91         daysToKeep: 30
92         numToKeep: 10
93         artifactDaysToKeep: -1
94         artifactNumToKeep: -1
95
96     parameters:
97         - project-parameter:
98             project: '{project}'
99         - gerrit-parameter:
100             branch: '{branch}'
101     scm:
102         - gerrit-trigger-scm:
103             credentials-id: '{ssh-credentials}'
104             refspec: '$GERRIT_REFSPEC'
105             choosing-strategy: 'gerrit'
106
107     triggers:
108         - gerrit:
109             trigger-on:
110                 - patchset-created-event:
111                     exclude-drafts: 'false'
112                     exclude-trivial-rebase: 'false'
113                     exclude-no-code-change: 'false'
114                 - draft-published-event
115                 - comment-added-contains-event:
116                     comment-contains-value: 'recheck'
117                 - comment-added-contains-event:
118                     comment-contains-value: 'reverify'
119             projects:
120               - project-compare-type: 'ANT'
121                 project-pattern: 'octopus'
122                 branches:
123                   - branch-compare-type: 'ANT'
124                     branch-pattern: '**/{branch}'
125
126     builders:
127         - shell:
128             !include-raw ../opnfvdocs/docu-build.sh
129
130 - job-template:
131     name: 'octopus-merge-{stream}'
132
133     node: master
134
135     # builder-merge job to run JJB update
136     #
137     # This job's purpose is to update all the JJB
138
139     logrotate:
140         daysToKeep: 30
141         numToKeep: 40
142         artifactDaysToKeep: -1
143         artifactNumToKeep: 5
144
145     parameters:
146         - project-parameter:
147             project: '{project}'
148         - gerrit-parameter:
149             branch: '{branch}'
150
151     scm:
152         - gerrit-trigger-scm:
153             credentials-id: '{ssh-credentials}'
154             refspec: ''
155             choosing-strategy: 'default'
156
157     triggers:
158         - gerrit:
159             trigger-on:
160                 - change-merged-event
161                 - comment-added-contains-event:
162                     comment-contains-value: 'remerge'
163             projects:
164               - project-compare-type: 'ANT'
165                 project-pattern: 'octopus'
166                 branches:
167                     - branch-compare-type: 'ANT'
168                       branch-pattern: '**/{branch}'
169
170     builders:
171         - shell:
172             !include-raw ../opnfvdocs/docu-build.sh
173
174 ########################
175 ## parameter macros
176 #########################
177 - parameter:
178     name: octopus-parameter
179     parameters:
180         - string:
181             name: GS_PATHNAME
182             default: '{gs-pathname}'
183             description: "Version directory where the octopus will be stored in gs repository"
184
185 #########################
186 ## trigger macros
187 #########################
188 - trigger:
189     name: 'octopus-master'
190     triggers:
191         - pollscm: "H 7 * * *"
192
193 - trigger:
194     name: 'octopus-stable-arno'
195     triggers:
196         - pollscm: "H 19 * * *"