b2d74eba774e755bef4757c09962cc54045a8402
[releng.git] / jjb / bottlenecks / bottlenecks.yml
1 ####################################
2 # Job configuration for bottlenecks
3 ####################################
4 - project:
5     name: bottlenecks
6     jobs:
7         - 'bottlenecks-test'
8         - 'bottlenecks-verify'
9         - 'bottlenecks-merge'
10         - 'bottlenecks-daily-{installer}-{pod}-{stream}'
11
12     # stream:    branch with - in place of / (eg. stable-arno)
13     # branch:    branch (eg. stable/arno)
14     pod:
15         - lf:
16             node: 'opnfv-jump-2'
17             installer_type: 'fuel'
18             installer_ip: '10.20.0.2'
19
20     installer:
21         -fuel
22
23     stream:
24         - master:
25             branch: 'master'
26
27     project: 'bottlenecks'
28     somevar: 'foo'
29 ###############################
30 # Job templates
31 ##############################
32 - job-template:
33     name: 'bottlenecks-test'
34
35     logrotate:
36         daysToKeep: 30
37         numToKeep: 10
38         artifactDaysToKeep: -1
39         artifactNumToKeep: -1
40
41     builders:
42         - shell: |
43             echo "Hello world from bottlenecks"
44
45 - job-template:
46
47     name: 'bottlenecks-verify'
48
49     logrotate:
50         daysToKeep: 30
51         numToKeep: 10
52         artifactDaysToKeep: -1
53         artifactNumToKeep: -1
54
55     parameters:
56         - project-parameter:
57             project: '{project}'
58         - gerrit-parameter:
59             branch: 'master'
60     scm:
61         - gerrit-trigger-scm:
62             credentials-id: '{ssh-credentials}'
63             refspec: '$GERRIT_REFSPEC'
64             choosing-strategy: 'gerrit'
65
66     triggers:
67         - gerrit:
68             trigger-on:
69                 - patchset-created-event:
70                     exclude-drafts: 'false'
71                     exclude-trivial-rebase: 'false'
72                     exclude-no-code-change: 'false'
73                 - draft-published-event
74                 - comment-added-contains-event:
75                     comment-contains-value: 'recheck'
76                 - comment-added-contains-event:
77                     comment-contains-value: 'reverify'
78             projects:
79               - project-compare-type: 'ANT'
80                 project-pattern: '{project}'
81                 branches:
82                   - branch-compare-type: 'ANT'
83                     branch-pattern: '**/master'
84
85     builders:
86         - shell: |
87             echo "hello world"
88
89 - job-template:
90     name: 'bottlenecks-merge'
91
92     # builder-merge job to run JJB update
93     #
94     # This job's purpose is to update all the JJB
95
96     logrotate:
97         daysToKeep: 30
98         numToKeep: 40
99         artifactDaysToKeep: -1
100         artifactNumToKeep: 5
101
102     parameters:
103         - project-parameter:
104             project: '{project}'
105         - gerrit-parameter:
106             branch: 'master'
107
108     scm:
109         - gerrit-trigger-scm:
110             credentials-id: '{ssh-credentials}'
111             refspec: ''
112             choosing-strategy: 'default'
113
114     triggers:
115         - gerrit:
116             trigger-on:
117                 - change-merged-event
118                 - comment-added-contains-event:
119                     comment-contains-value: 'remerge'
120             projects:
121               - project-compare-type: 'ANT'
122                 project-pattern: 'bottlenecks'
123                 branches:
124                     - branch-compare-type: 'ANT'
125                       branch-pattern: '**/master'
126
127     builders:
128         - shell: |
129             echo "hello world"
130
131 - job-template:
132     name: 'bottlenecks-daily-{installer}-{pod}-{stream}'
133
134     disabled: false
135
136     node: '{node}'
137
138     parameters:
139         - project-parameter:
140             project: '{project}'
141         - '{pod}-parameters'
142         - string:
143             name: POD_NAME
144             default: '{pod}'
145             description: "POD where the job runs"
146         - string:
147             name: INSTALLER_TYPE
148             default: '{installer_type}'
149             description: "Installer name that is used for deployment."
150         - string:
151             name: INSTALLER_IP
152             default: '{installer_ip}'
153             description: "Installer IP."
154
155     scm:
156         - git-scm:
157             credentials-id: '{ssh-credentials}'
158             refspec: ''
159             branch: '{branch}'
160
161     logrotate:
162         daysToKeep: 30
163         numToKeep: 10
164         artifactDaysToKeep: -1
165         artifactNumToKeep: -1
166
167     triggers:
168         - 'bottlenecks-trigger-{pod}'
169
170     builders:
171         - 'bottlenecks-fetch-os-creds'
172         - 'run-rubbos-env-preparation'
173         - 'run-rubbos-tools-installation'
174         - 'rubbos-exec'
175
176     publishers:
177         - email:
178             recipients: hongbo.tianhongbo@huawei.com matthew.lijun@huawei.com
179
180 ###################################
181 #builders for bottlenecks project
182 ###################################
183 - builder:
184     name: bottlenecks-fetch-os-creds
185     builders:
186         - shell:
187             !include-raw ../../utils/fetch_os_creds.sh
188
189 - builder:
190     name: run-rubbos-env-preparation
191     builders:
192         - shell: |
193             #!/bin/bash
194             set -o errexit
195
196             echo "Bottlenecks: export openstack parameters before rubbos running"
197
198             cd $WORKSPACE
199             ./rubbos/rubbos_scripts/1-1-1/scripts/env_preparation.sh
200
201 - builder:
202     name: run-rubbos-tools-installation
203     builders:
204         - shell: |
205             #!/bin/bash
206             set -o errexit
207
208             echo "Bottlenecks: to install tools to run rubbos"
209
210             cd $WORKSPACE
211             ./rubbos/rubbos_scripts/1-1-1/scripts/run.sh
212
213 - builder:
214     name: rubbos-exec
215     builders:
216         - shell: |
217             #!/bin/bash
218             set -o errexit
219
220             echo "Bottlenecks: rubbos execution"
221
222             cd $WORKSPACE
223             cd ./rubbos/rubbos_scripts/1-1-1
224             source set_bottlenecks_rubbos_env.sh
225             ssh $CONTROL_HOST
226             ./tmp/CONTROL_rubbos_exec.sh
227
228 #######################
229 #trigger macros
230 #######################
231 - trigger:
232     name: 'bottlenecks-trigger-lf'
233     triggers:
234         - timed: '@midnight'