~maria-captains/mariadb-tools/trunk

654 by Daniel Bartholomew
automatic maria-master.cfg commit
1
##, -*- python -*-
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
2
# ex: set syntax=python:
3
240 by Daniel Bartholomew
automatic maria-master.cfg commit
4
#-------------------------------------------------------------------------------
269 by Daniel Bartholomew
Added note on how to reload changes to the file.
5
# To reload buildbot:
6
#  1) check that this file does not have any syntax errors with:
7
#       sudo -u buildbot PYTHONPATH=/usr/local/buildbot/lib/python python -c 'exec open("maria-master.cfg", "r")'
8
#     (no output = no syntax errors)
9
#  2) reload with:
10
#       sudo /etc/init.d/buildmaster reload
11
#  3) check the reload process:
12
#       sudo less /var/lib/buildbot/maria/twistd.log
13
#     - or -
14
#       sudo tail -f /var/lib/buildbot/maria/twistd.log
15
#-------------------------------------------------------------------------------
16
17
#-------------------------------------------------------------------------------
240 by Daniel Bartholomew
automatic maria-master.cfg commit
18
#  Notice: Once per day this file is auto-commited into the mariadb-tools
19
#          project on Launchpad if it has been modified. As a safety feature,
20
#          in case someone is currently making changes to the file, commits
21
#          will _not_ take place if the file was modified less than two hours
22
#          before the cron job runs.
23
#
24
#          The cron job runs every morning at 0300
25
#
26
#          The auto-commit script does a "bzr pull" prior to checking if there
27
#          are uncommited changes that need to be commited; but because of the
28
#          way the script works, the version of this file currently in
29
#          production trumps all other versions when it comes to deciding what
30
#          to auto-commit and push, even if the changes on Launchpad are more
31
#          recent.
32
#
33
#          With that in mind, if you are modifing this file, you are encouraged
34
#          follow the following procedure:
35
#
36
#              First:  Branch the mariadb-tools project from Launchpad, if you
37
#                      haven't already, and prototype and stage your changes
38
#                      there first. You can commit your changes locally, but
39
#                      don't push your changes yet.
40
#
41
#              Second: When your changes are ready, do a last pull from
42
#                      Launchpad and a diff of the production file, just to
43
#                      make sure there are no conflicts with your changes or
44
#                      that you are not overwriting someone else's more recent
45
#                      production changes.
46
#
47
#              Third:  Assuming you are not erasing someone else's changes,
48
#                      copy your version of the file to the production
49
#                      location and reload buildbot.
50
#
51
#              Fourth: Test and verify that all is well with your changes after
52
#                      they are in production.
53
#
54
#              Fifth:  Commit your changes in your local branch of
55
#                      mariadb-tools, if you haven't already, with a meaningful
56
#                      commit message; and push your changes up to Launchpad.
57
#-------------------------------------------------------------------------------
58
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
59
# Master configuration file for MariaDB buildbot.
168.1.1 by Kristian Nielsen
New "labrador" mac slave.
60
# Copyright (C) 2012  Monty Program AB.
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
61
#
62
# This program is free software; you can redistribute it and/or modify
63
# it under the terms of the GNU General Public License as published by
64
# the Free Software Foundation; either version 2 of the License, or
65
# (at your option) any later version.
66
#
67
# This program is distributed in the hope that it will be useful,
68
# but WITHOUT ANY WARRANTY; without even the implied warranty of
69
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
70
# GNU General Public License for more details.
71
#
72
# You should have received a copy of the GNU General Public License along
73
# with this program; if not, write to the Free Software Foundation, Inc.,
74
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
75
76
# This is a sample buildmaster config file. It must be installed as
77
# 'master.cfg' in your buildmaster's base directory (although the filename
78
# can be changed with the --basedir option to 'mktap buildbot master').
79
80
# It has one job: define a dictionary named BuildmasterConfig. This
81
# dictionary has a variety of keys to control different aspects of the
82
# buildmaster. They are documented in docs/config.xhtml .
83
654 by Daniel Bartholomew
automatic maria-master.cfg commit
84
# On our Ubuntu/Debian VMs we use debconf-set-selections with a seed file
85
# to auto-populate the answers to the questions that the .deb packages ask.
86
# 'rootpass' - the default password for root user is set during the same
87
# process.
88
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
89
227 by Kristian Nielsen
Add debpkg builder for Otto; when new stuff is pushed to the .deb buildscripts repo on github, it pulls the changes and tries a build.
90
from buildbot.changes.filter import ChangeFilter
91
92
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
93
# This is the dictionary that the buildmaster pays attention to. We also use
94
# a shorter alias to save typing.
95
c = BuildmasterConfig = {}
96
97
# We load the slave and database passwords from an external file, so
98
# that the rest of the configuration can be public.
99
configDict= { "cfg": { } }
100
execfile("/etc/buildbot/maria-master-private.cfg", configDict, { })
101
89 by Kristian Nielsen
Add Daniel's solaris slave.
102
c['db_url'] = configDict["cfg"]["db_url"]
103
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
104
105
####### BUILDSLAVES
106
107
def mkSlave(name, **kwargs):
108
    return BuildSlave(name, configDict["cfg"]["slavePasswords"][name], **kwargs)
109
110
# the 'slaves' list defines the set of allowable buildslaves. Each element is
111
# a tuple of bot-name and bot-password. These correspond to values given to
112
# the buildslave's mktap invocation.
113
from buildbot.buildslave import BuildSlave
154 by Kristian Nielsen
educe parallelism on overloaded host.
114
c['slaves'] = [mkSlave("valgrind", max_builds=1)
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
115
#              ,mkSlave("centos5", max_builds=1)
116
#              ,mkSlave("archivist-cnc", max_builds=1)
117
#              ,mkSlave("archivist-amd64", max_builds=1)
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
118
#              ,mkSlave("adutko-amd64", max_builds=1)
119
#              ,mkSlave("adutko-alpha", max_builds=1)
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
120
#              ,mkSlave("toby-sol10", max_builds=1)
121
#              ,mkSlave("toby-sol10-sparc", max_builds=1)
122
#               ,mkSlave("psergey-pylon-x86", max_builds=1)
123
#               ,mkSlave("psergey-pylon-amd64", max_builds=1)
128 by Kristian Nielsen
Buildbot changes:
124
#               ,mkSlave("psergey-foxhole-x86", max_builds=1)
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
125
#               ,mkSlave("psergey-pslp2-x86", max_builds=1)
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
126
              ,mkSlave("work-opensuse-amd64", max_builds=1)
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
127
#              ,mkSlave("sanja-gentoo-x86_64", max_builds=1)
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
128
              ,mkSlave("sanja-mac-x86", max_builds=1)
321 by Daniel Bartholomew
automatic maria-master.cfg commit
129
              ,mkSlave("knielsen-kvm-x86", max_builds=2)
900 by Sergei Golubchik
disable builders and buildslaves that are offline anyway
130
#              ,mkSlave("opensolaris-x86", max_builds=1)
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
131
              ,mkSlave("adutko-centos5-amd64", max_builds=1)
132
              ,mkSlave("mariadb-brs", max_builds=1)
4.1.1 by Kristian Nielsen
New trees and host.
133
              ,mkSlave("adutko-ultrasparc3", max_builds=1)
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
134
              ,mkSlave("centos56-quality2", max_builds=2)
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
135
#             ,mkSlave("philip-win2008r2-amd64", max_builds=1)
128 by Kristian Nielsen
Buildbot changes:
136
#              ,mkSlave("mac-mini-intel", max_builds=1)
80.1.1 by Kristian Nielsen
New buildslaves from haidong.
137
              ,mkSlave("haidong-fedora13-x86", max_builds=1)
99 by Kristian Nielsen
RQG changes.
138
#             ,mkSlave("haidong-win7-x86", max_builds=1) # can not run 24/7
89 by Kristian Nielsen
Add Daniel's solaris slave.
139
              ,mkSlave("solaris10-x86", max_builds=1)
900 by Sergei Golubchik
disable builders and buildslaves that are offline anyway
140
#             ,mkSlave("solaris-sparc", max_builds=1)
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
141
              ,mkSlave("jakob-freebsd", max_builds=1)
142
              ,mkSlave("adutko3", max_builds=1)
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
143
              ,mkSlave("wlads-box",max_builds=4)
322 by Daniel Bartholomew
automatic maria-master.cfg commit
144
              ,mkSlave("terrier2", max_builds=1)
143 by Kristian Nielsen
Slave naming.
145
              ,mkSlave("wizard-box", max_builds=1)
146
              ,mkSlave("wizard-box2", max_builds=1)
694 by Daniel Bartholomew
automatic maria-master.cfg commit
147
#              ,mkSlave("bbwin1", max_builds=1)
226 by Kristian Nielsen
Buildbot config updates:
148
              ,mkSlave("bbwin2", max_builds=1)
676 by Daniel Bartholomew
automatic maria-master.cfg commit
149
              ,mkSlave("bbwin3", max_builds=1)
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
150
              ,mkSlave("bb-win32", max_builds=4)
614 by Daniel Bartholomew
automatic maria-master.cfg commit
151
              ,mkSlave("bb-win-azure", max_builds=4)
665 by Daniel Bartholomew
automatic maria-master.cfg commit
152
              ,mkSlave("bb-win-azure-2", max_builds=4)
566 by Daniel Bartholomew
automatic maria-master.cfg commit
153
              ,mkSlave("bc1-win", max_builds=4)
682 by Daniel Bartholomew
automatic maria-master.cfg commit
154
              ,mkSlave("win-connectors", max_builds=4)
156 by Kristian Nielsen
New slave "aps82-204".
155
              ,mkSlave("aps82-204", max_builds=1)
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
156
              ,mkSlave("bsd9", max_builds=1)
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
157
#              ,mkSlave("macintosh", max_builds=1)
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
158
              ,mkSlave("labrador", max_builds=2)
753 by Daniel Bartholomew
automatic maria-master.cfg commit
159
              ,mkSlave("db-mac-1012", max_builds=1)
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
160
              ,mkSlave("dan_demeter1", max_builds=1)
161
              ,mkSlave("dan_demeter2", max_builds=1)
900 by Sergei Golubchik
disable builders and buildslaves that are offline anyway
162
#              ,mkSlave("raspberrypi", max_builds=1)             
372 by Daniel Bartholomew
Increase bb01 and bb02 max_builds to 4
163
              ,mkSlave("bb01", max_builds=4)
164
              ,mkSlave("bb02", max_builds=4)
595 by Daniel Bartholomew
automatic maria-master.cfg commit
165
              ,mkSlave("bb03", max_builds=4)
166
              ,mkSlave("bb04", max_builds=4)
807 by Daniel Bartholomew
automatic maria-master.cfg commit
167
              ,mkSlave("bb05", max_builds=8)
776 by Daniel Bartholomew
automatic maria-master.cfg commit
168
              ,mkSlave("bb06", max_builds=3)
762 by Daniel Bartholomew
automatic maria-master.cfg commit
169
              ,mkSlave("p801", max_builds=4)
398 by Daniel Bartholomew
automatic maria-master.cfg commit
170
              ,mkSlave("bc01", max_builds=4)
550 by Daniel Bartholomew
Remove power01 builder
171
#              ,mkSlave("power01", max_builds=3)
296 by Daniel Bartholomew
automatic maria-master.cfg commit
172
              ,mkSlave("power8-vlp01", max_builds=1)
551 by Daniel Bartholomew
Remove power8-vlp02 builder
173
#              ,mkSlave("power8-vlp02", max_builds=1)
296 by Daniel Bartholomew
automatic maria-master.cfg commit
174
              ,mkSlave("power8-vlp03", max_builds=1)
175
              ,mkSlave("power8-vlp04", max_builds=1)
352 by Daniel Bartholomew
Added ibm-vlp05 builder
176
              ,mkSlave("power8-vlp05", max_builds=1)
392 by Daniel Bartholomew
automatic maria-master.cfg commit
177
              ,mkSlave("power8-vlp06", max_builds=1)
682 by Daniel Bartholomew
automatic maria-master.cfg commit
178
              ,mkSlave("p8-rhel6-bb", max_builds=1)
179
              ,mkSlave("p8-trusty-bb", max_builds=1)
679 by Daniel Bartholomew
automatic maria-master.cfg commit
180
              ,mkSlave("p8-xenial-bb", max_builds=1)
900 by Sergei Golubchik
disable builders and buildslaves that are offline anyway
181
#             ,mkSlave("ibmz-rhel6", max_builds=1)
182
#              ,mkSlave("ibmz-sles11", max_builds=1)
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
183
               ]
184
790 by Daniel Bartholomew
automatic maria-master.cfg commit
185
# There was bb05 here, removed (temporarily?)
904 by Sergei Golubchik
don't build packages on terrier, use it only for fulltest*
186
kvm_slaves=["bb01", "bb02", "bb03", "bb04", "bb06", "bb05"]
212 by Kristian Nielsen
Misc. changes to buildbot config.
187
# , "centos56-quality2"
320 by Kristian Nielsen
Don't run bld_kvm_rpm_centos7_0_x86_64 on buildslave knielsen-kvm-x86, since the kvm on that machine is too old to understand the VM image used.
188
# Build slaves that have a kvm new enough to understand compat:1.1 qemu images.
790 by Daniel Bartholomew
automatic maria-master.cfg commit
189
# There was bb05 here, removed (temporarily?)
807 by Daniel Bartholomew
automatic maria-master.cfg commit
190
kvm11_slaves=["bb01", "bb02", "bb03", "bb04", "bb06", "bb05"]
212 by Kristian Nielsen
Misc. changes to buildbot config.
191
399 by Daniel Bartholomew
automatic maria-master.cfg commit
192
# Build slaves for connectors
193
connector_slaves=["bc01"]
194
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
195
# to limit to two concurrent builds on a slave, use
196
#  c['slaves'] = [BuildSlave("bot1name", "bot1passwd", max_builds=2)]
197
198
199
# 'slavePortnum' defines the TCP port to listen on. This must match the value
200
# configured into the buildslaves (with their --master option)
201
202
c['slavePortnum'] = 9989
203
204
####### CHANGESOURCES
205
206
# the 'change_source' setting tells the buildmaster how it should find out
207
# about source code changes. Any class which implements IChangeSource can be
208
# put here: there are several in buildbot/changes/*.py to choose from.
209
210
# Get changes from Launchpad branch subscription emails.
211
# This requires that buildbot@askmonty.org be subscribed to each branch to be tracked.
212
from buildbot.changes import mail
238 by Sergei Golubchik
kntest
213
242 by Sergei Golubchik
merge myBranchMap_5_123 and myBranchMap_55plus into one dict myBranchMap
214
bzrBranches = {
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
215
    "lp:~maria-captains/maria/5.1" : "5.1",
216
    "lp:~maria-captains/maria/5.2" : "5.2",
217
    "lp:~maria-captains/maria/mariadb-5.1-knielsen" : "mariadb-5.1-knielsen",
218
    "lp:~maria-captains/maria/mariadb-5.2-knielsen" : "mariadb-5.2-knielsen",
219
    "lp:~maria-captains/maria/mariadb-5.1-monty" : "mariadb-5.1-monty",
220
    "lp:~maria-captains/maria/mariadb-5.2-monty" : "mariadb-5.2-monty",
221
    "lp:~maria-captains/maria/5.1-release" : "5.1-release",
222
    "lp:~maria-captains/maria/5.2-release" : "5.2-release",
223
    "lp:~maria-captains/maria/5.1-serg" : "5.1-serg",
224
    "lp:~maria-captains/maria/5.2-serg" : "5.2-serg",
225
    "lp:~maria-captains/maria/5.3-serg" : "5.3-serg",
168.1.1 by Kristian Nielsen
New "labrador" mac slave.
226
    "lp:~maria-captains/maria/5.3-knielsen" : "5.3-knielsen",
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
227
    "lp:~maria-captains/maria/5.3" : "5.3",
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
228
    "lp:~maria-captains/maria/maria-10.0-mwl253" : "maria-10.0-mwl253",
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
229
    "lp:~maria-captains/maria/mariadb-5.3-monty" : "mariadb-5.3-monty",
190 by Daniel Bartholomew
misc config updates
230
    "lp:~maria-captains/maria/10.0-show-explain" : "10.0-show-explain",
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
231
    "lp:~maria-captains/maria/5.5" : "5.5",
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
232
    "lp:~maria-captains/maria/5.6" : "5.6",
233
    "lp:~maria-captains/maria/trunk" : "trunk",
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
234
    "lp:~maria-captains/maria/5.5-serg" : "5.5-serg",
179 by Daniel Bartholomew
Added 5.5-wlad to savedPackageBranches
235
    "lp:~maria-captains/maria/5.5-wlad" : "5.5-wlad",
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
236
    "lp:~maria-captains/maria/5.5-knielsen" : "5.5-knielsen",
159 by Kristian Nielsen
Disable innodb_plugin for solaris, as GCC there does not support it.
237
    "lp:~maria-captains/maria/5.5-release" : "5.5-release",
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
238
    "lp:~maria-captains/maria/5.5-hf" : "5.5-hf",
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
239
    "lp:~maria-captains/maria/5.5-noga-hf" : "5.5-noga-hf",
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
240
    "lp:~maria-captains/maria/5.5-jani" : "5.5-jani",
168.1.1 by Kristian Nielsen
New "labrador" mac slave.
241
    "lp:~maria-captains/maria/maria-5.5-galera" : "maria-5.5-galera",
217 by Daniel Bartholomew
add maria-10.0-galera tree to mainTreesList and savedPackageBranches so that packages get built and saved properly
242
    "lp:~maria-captains/maria/maria-10.0-galera" : "maria-10.0-galera",
168.1.1 by Kristian Nielsen
New "labrador" mac slave.
243
    "lp:~maria-captains/maria/maria-5.5-monty" : "maria-5.5-monty",
168.1.6 by Kristian Nielsen
dd 10.0 main tree.
244
    "lp:~maria-captains/maria/10.0" : "10.0",
165 by Kristian Nielsen
Big bunch of changes - new trees, bsd build, mac build,5.5 rpm build, rqg.
245
    "lp:~maria-captains/maria/10.0-monty" : "10.0-monty",
168.1.1 by Kristian Nielsen
New "labrador" mac slave.
246
    "lp:~maria-captains/maria/10.0-serg" : "10.0-serg",
190 by Daniel Bartholomew
misc config updates
247
    "lp:~maria-captains/maria/10.0-connect" : "10.0-connect",
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
248
    "lp:~maria-captains/maria/10.0-release" : "10.0-release",
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
249
    "lp:~maria-captains/maria/10.0-bar" : "10.0-bar",
250
    "lp:~maria-captains/maria/10-hf" : "10-hf",
168.1.1 by Kristian Nielsen
New "labrador" mac slave.
251
    "lp:~maria-captains/maria/10.0-knielsen" : "10.0-knielsen",
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
252
    "lp:~maria-captains/maria/10.0-mdev26" : "10.0-mdev26",
253
    "lp:~maria-captains/maria/maria-10.0-mwl253" : "maria-10.0-mwl253",
190 by Daniel Bartholomew
misc config updates
254
    "lp:~maria-captains/maria/10.0-show-explain" : "10.0-show-explain",
255
    "lp:~maria-captains/maria/10.0-spider" : "10.0-spider",
198 by Daniel Bartholomew
Various additions and modifications to add new trees, fix issues, and so on.
256
    "lp:~maria-captains/maria/5.5-svoj" : "5.5-svoj",
220 by Daniel Bartholomew
add 10.0-mroonga branch
257
    "lp:~maria-captains/maria/10.0-mroonga" : "10.0-mroonga",
341 by Daniel Bartholomew
automatic maria-master.cfg commit
258
    "lp:~maria-captains/maria/10.0-FusionIO" : "10.0-FusionIO",
259
    "lp:~maria-captains/maria/10.0-Galera-FusionIO" : "10.0-Galera-FusionIO",
231 by Kristian Nielsen
Misc. changes to buildbot config.
260
    "lp:~maria-captains/maria/10.0-elenst" : "10.0-elenst",
261
    "lp:~maria-captains/maria/5.5-elenst" : "5.5-elenst",
306 by Daniel Bartholomew
automatic maria-master.cfg commit
262
    "lp:~maria-captains/maria/10.0-mdev6657-try2" : "10.0-mdev6657-try2",
308 by Daniel Bartholomew
automatic maria-master.cfg commit
263
    "lp:~maria-captains/maria/10.0-csc8034-r1" : "10.0-csc8034-r1",
330 by Daniel Bartholomew
automatic maria-master.cfg commit
264
    "lp:~maria-captains/maria/10.0-custombld" : "10.0-custombld",
401 by Kristian Nielsen
New branch, and enable rqg on pre-5.5.
265
    "lp:~maria-captains/maria/10.0.15-mdev6634-r2" : "10.0.15-mdev6634-r2",
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
266
    }
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
267
242 by Sergei Golubchik
merge myBranchMap_5_123 and myBranchMap_55plus into one dict myBranchMap
268
bzrBranches_all = dict(bzrBranches)
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
269
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
270
mailSource = mail.BzrLaunchpadEmailMaildirSource("/var/lib/buildbot/Maildir",
242 by Sergei Golubchik
merge myBranchMap_5_123 and myBranchMap_55plus into one dict myBranchMap
271
                                                 branchMap=bzrBranches_all)
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
272
c['change_source'] = [mailSource]
273
247 by Sergei Golubchik
github support #1
274
gitBranches = {
254 by Sergei Golubchik
buildbot: fix a silly error that was adding many identical keys in a dict.
275
    "https://github.com/MariaDB/server" :
276
      (
762 by Daniel Bartholomew
automatic maria-master.cfg commit
277
        "10.3",
573 by Sergei Golubchik
added 10.2 main branch
278
        "10.2",
254 by Sergei Golubchik
buildbot: fix a silly error that was adding many identical keys in a dict.
279
        "10.1",
406 by Daniel Bartholomew
automatic maria-master.cfg commit
280
        "10.0",
281
        "5.5",
410 by Daniel Bartholomew
automatic maria-master.cfg commit
282
        "10.0-galera",
283
        "5.5-galera",
256 by Daniel Bartholomew
automatic maria-master.cfg commit
284
        "bb-*", # yes, wildcards are ok
524 by Daniel Bartholomew
Misc updates
285
        "hf-*", # hotfix branches
262 by Daniel Bartholomew
Fixes to get ssh git branches working.
286
      ),
441 by Sergei Golubchik
Add Olivier Bertrand's branches to buildbot
287
    "https://github.com/Buggynours/MariaDB" : # this is Olivier Bertrand
288
      (
289
        "ob-*",
290
      ),
467 by Daniel Bartholomew
automatic maria-master.cfg commit
291
    "https://github.com/Kentoku/MariaDB" : # this is Kentoku Shiba
466 by Sergei Golubchik
Add Kentoku Shiba branches
292
      (
293
        "ks-*",
294
      ),
511 by Daniel Bartholomew
automatic maria-master.cfg commit
295
    "https://github.com/ottok/mariadb" : # Otto, new debian packaging
296
      (
297
        "ok-*",
298
      ),
618 by Daniel Bartholomew
automatic maria-master.cfg commit
299
    "https://github.com/ottok/mariadb-10.0" : # Otto, mirror of official debian packaging
300
      (
301
        "jessie",
302
        "jessie-*",
303
      ),
524 by Daniel Bartholomew
Misc updates
304
    "https://github.com/f4rnham/server" : # Martin Kaluznik, MDEV-7502
305
      (
306
        "bb-*",
307
      ),
408 by Daniel Bartholomew
restored non-public git repo as we need those binaries built
308
    "git@github.com:mariadb-corporation/MariaDBEnterprise" :
309
      (
557 by Daniel Bartholomew
automatic maria-master.cfg commit
310
        "10.1e",
408 by Daniel Bartholomew
restored non-public git repo as we need those binaries built
311
        "10.0e",
429 by Daniel Bartholomew
Added hotfix wildcard branches (hf-*)
312
        "hf-*",
824 by Daniel Bartholomew
automatic maria-master.cfg commit
313
        "bb-*",
408 by Daniel Bartholomew
restored non-public git repo as we need those binaries built
314
        "5.5e",
315
        "10.0e-galera",
316
        "5.5e-galera",
317
      ),
548 by Daniel Bartholomew
automatic maria-master.cfg commit
318
     "https://github.com/MariaDB/mariadb-connector-c":
399 by Daniel Bartholomew
automatic maria-master.cfg commit
319
      (
320
        "master",
557 by Daniel Bartholomew
automatic maria-master.cfg commit
321
        "connector_c_2.2",
850 by Daniel Bartholomew
Added FreeBSD 11 builders for Connector/C
322
        "connector_c_3.0",
851 by Daniel Bartholomew
automatic maria-master.cfg commit
323
        "bb-*",
399 by Daniel Bartholomew
automatic maria-master.cfg commit
324
      ),
548 by Daniel Bartholomew
automatic maria-master.cfg commit
325
     "https://github.com/MariaDB/mariadb-connector-j":
399 by Daniel Bartholomew
automatic maria-master.cfg commit
326
      (
327
        "master",
328
      ),
548 by Daniel Bartholomew
automatic maria-master.cfg commit
329
     "https://github.com/MariaDB/mariadb-connector-odbc":
399 by Daniel Bartholomew
automatic maria-master.cfg commit
330
      (
425 by Daniel Bartholomew
automatic maria-master.cfg commit
331
        "odbc-2.0",
782 by Daniel Bartholomew
automatic maria-master.cfg commit
332
        "odbc-3.0",
333
        "master"
506 by Daniel Bartholomew
automatic maria-master.cfg commit
334
      ),
664 by Daniel Bartholomew
automatic maria-master.cfg commit
335
     "https://github.com/MariaDB/galera": # Nirbhay: mariadb-3.x-* is for specific galera bugs/features.
506 by Daniel Bartholomew
automatic maria-master.cfg commit
336
      (
535 by Daniel Bartholomew
automatic maria-master.cfg commit
337
        "mariadb-3.x",
664 by Daniel Bartholomew
automatic maria-master.cfg commit
338
        "mariadb-3.x-*",
261 by Daniel Bartholomew
add MariaDBEnterprise repository, add support for accessing github using ssh
339
      )
247 by Sergei Golubchik
github support #1
340
    }
341
399 by Daniel Bartholomew
automatic maria-master.cfg commit
342
247 by Sergei Golubchik
github support #1
343
# bzr/git branch filter
344
import fnmatch
430 by Sergei Golubchik
support for wildcards in savedPackageBranches
345
def fnmatch_any(s, list_of_patterns):
346
    return any(fnmatch.fnmatch(s, p) for p in list_of_patterns)
347
247 by Sergei Golubchik
github support #1
348
class BranchFilter(ChangeFilter):
349
    def __init__(self, on_launchpad = {}, on_github = {}):
350
        self.bzr_branches = on_launchpad
351
        self.git_branches = on_github
352
353
    def filter_change(self, change):
354
        repo = getattr(change, 'repository', '?')
355
        branch = getattr(change, 'branch', '?')
262 by Daniel Bartholomew
Fixes to get ssh git branches working.
356
        if re.match('(https://|git@)github.com', repo):
247 by Sergei Golubchik
github support #1
357
            # git branch on github
430 by Sergei Golubchik
support for wildcards in savedPackageBranches
358
            return fnmatch_any(branch, self.git_branches.get(repo, ()))
247 by Sergei Golubchik
github support #1
359
        else:
360
            # bzr branch on launchpad
361
            return branch == self.bzr_branches.get('lp:' + repo)
362
363
    def __repr__(self):
364
        return "<%s>" % (self.__class__.__name__,)
365
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
366
# Some branches are more important than others...
367
def myNextBuild(bldr, requests):
368
  best_r= None
369
  best_prio= None
370
  for r in requests:
371
    if r.source is not None:
372
      b= r.source.branch
373
    else:
374
      b= r.properties.get("branch")
807 by Daniel Bartholomew
automatic maria-master.cfg commit
375
    # Put here the name of the tree you want to temporarily prioritize over everything
899 by Daniel Bartholomew
automatic maria-master.cfg commit
376
    if b in ["current-hottest-tree", "10.3"]:
808 by Daniel Bartholomew
automatic maria-master.cfg commit
377
        prio= 2
807 by Daniel Bartholomew
automatic maria-master.cfg commit
378
    elif b in ["5.1-release", "5.2-release", "5.3-release", "5.5-release", "10.0-release", "5.5e", "10.0e", "10.1e", "5.5e-galera", "10.0e-galera"]:
758 by Daniel Bartholomew
automatic maria-master.cfg commit
379
        prio= 2
380
    elif b in ["5.1", "5.2", "5.3", "5.5", "10.0", "bb-10.1-serg", "bb-5.5-serg",
807 by Daniel Bartholomew
automatic maria-master.cfg commit
381
             "10.0-galera", "5.5-galera", "10.3", "10.2", "10.1", "bb-10.2-serg"]:
524 by Daniel Bartholomew
Misc updates
382
        prio= 1
383
    elif fnmatch.fnmatch(b, 'hf-*'):
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
384
        prio= 1
385
    else:
386
        prio= 0
387
    if best_r is None or prio > best_prio:
388
        best_r= r
389
        best_prio= prio
390
  return best_r
391
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
392
# Some builders only run in main trees.
767 by Daniel Bartholomew
automatic maria-master.cfg commit
393
mainTreesList10_2Plus = ["10.3", "10.2",
891 by Daniel Bartholomew
automatic maria-master.cfg commit
394
                         "bb-10.2-compatibility", "bb-10.2-mariarocks", "bb-10.2-marko"
333 by Daniel Bartholomew
automatic maria-master.cfg commit
395
                         ]
767 by Daniel Bartholomew
automatic maria-master.cfg commit
396
mainTreesList10_1Plus = ["10.1", "10.1e",
824 by Daniel Bartholomew
automatic maria-master.cfg commit
397
                         "bb-10.1-serg"
767 by Daniel Bartholomew
automatic maria-master.cfg commit
398
                         ] + mainTreesList10_2Plus
703 by Daniel Bartholomew
automatic maria-master.cfg commit
399
mainTreesList10_0Plus = ["10.0", "10.0e",
867 by Daniel Bartholomew
automatic maria-master.cfg commit
400
                         "10.0e-galera", "10.0-galera", "jessie", "jessie-*"
703 by Daniel Bartholomew
automatic maria-master.cfg commit
401
                         ] + mainTreesList10_1Plus
333 by Daniel Bartholomew
automatic maria-master.cfg commit
402
mainTreesList = ["5.1-release", "5.2-release", "5.1", "5.5-release", "5.3",
810 by Daniel Bartholomew
automatic maria-master.cfg commit
403
                 "5.2", "5.5", "5.5e", "trunk", "5.5e-galera", "5.5-galera", "bb-5.5-serg"
333 by Daniel Bartholomew
automatic maria-master.cfg commit
404
                 ] + mainTreesList10_0Plus
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
405
def isMainTree(step):
406
  return step.getProperty("branch") in mainTreesList
767 by Daniel Bartholomew
automatic maria-master.cfg commit
407
def isMainTree10_2Plus(step):
408
  return step.getProperty("branch") in mainTreesList10_2Plus
703 by Daniel Bartholomew
automatic maria-master.cfg commit
409
def isMainTree10_1Plus(step):
410
  return step.getProperty("branch") in mainTreesList10_1Plus
333 by Daniel Bartholomew
automatic maria-master.cfg commit
411
def isMainTree10_0Plus(step):
412
  return step.getProperty("branch") in mainTreesList10_0Plus
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
413
148 by Kristian Nielsen
Some Buildbot fixes for 5.5
414
# In 5.[123] we use OurDelta legacy bakery scripts.
415
# In 5.5+ we have the necessary stuff directly in the source tree.
416
# And 5.5 uses CMake while older use autotools
417
def branch_is_5_123(step):
418
  if re.search("5\\.[123]", step.getProperty("branch")):
419
    return True
420
  else:
421
    return False
422
373 by Daniel Bartholomew
automatic maria-master.cfg commit
423
def branch_is_10_x(step):
424
  if re.search("10\\.[0-9]", step.getProperty("branch")):
425
    return True
618 by Daniel Bartholomew
automatic maria-master.cfg commit
426
  elif re.search("jessie", step.getProperty("branch")):
427
    return True
373 by Daniel Bartholomew
automatic maria-master.cfg commit
428
  else:
429
    return False
430
549 by Daniel Bartholomew
automatic maria-master.cfg commit
431
def branch_is_10_1_or_later(step):
432
  if re.search("10\\.[1-9]", step.getProperty("branch")):
433
    return True
434
  else:
435
    return False
436
732 by Sergei Golubchik
for 10.2: upload MariaDB-shared-10.1 rpm into a VM
437
def branch_is_10_2_or_later(step):
438
  if re.search("10\\.[2-9]", step.getProperty("branch")):
439
    return True
440
  else:
441
    return False
442
824 by Daniel Bartholomew
automatic maria-master.cfg commit
443
def branch_is_enterprise(step):
444
  return re.search("5\\.5e", step.getProperty("branch")) or re.search("10\\.[0-9]e", step.getProperty("branch"))
445
594 by Daniel Bartholomew
automatic maria-master.cfg commit
446
def branch_has_previous_minor_versions(step):
704 by Daniel Bartholomew
automatic maria-master.cfg commit
447
  if re.search("10\\.3", step.getProperty("branch")):
594 by Daniel Bartholomew
automatic maria-master.cfg commit
448
    return False
449
  else:
450
    return True
451
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
452
def branch_is_5_5_or_later(step):
453
  return not branch_is_5_123(step)
454
279 by Daniel Bartholomew
automatic maria-master.cfg commit
455
def branch_is_not_10_1(step):
456
  return not re.search("10\\.1", step.getProperty("branch"))
457
727 by Daniel Bartholomew
automatic maria-master.cfg commit
458
def branch_is_not_10_2(step):
459
  return not re.search("10\\.2", step.getProperty("branch"))
460
762 by Daniel Bartholomew
automatic maria-master.cfg commit
461
def branch_is_not_10_3(step):
462
  return not re.search("10\\.3", step.getProperty("branch"))
463
279 by Daniel Bartholomew
automatic maria-master.cfg commit
464
def branch_is_not_galera(step):
465
  return not re.search("galera", step.getProperty("branch"))
466
665 by Daniel Bartholomew
automatic maria-master.cfg commit
467
def branch_is_not_connector(step):
468
  return not re.search("mariadb-connector", step.getProperty("branch"))
469
824 by Daniel Bartholomew
automatic maria-master.cfg commit
470
618 by Daniel Bartholomew
automatic maria-master.cfg commit
471
# Trees for Otto's Debian Packaging work
472
debpkgBranches= ["ok-*", "jessie", "jessie-*"]
473
517 by Sergei Golubchik
new debpkg scheduler
474
def debpkg_branch(step):
618 by Daniel Bartholomew
automatic maria-master.cfg commit
475
  #return fnmatch.fnmatch(step.getProperty("branch"), 'ok-*')
476
  return fnmatch_any(step.getProperty("branch"), debpkgBranches)
517 by Sergei Golubchik
new debpkg scheduler
477
654 by Daniel Bartholomew
automatic maria-master.cfg commit
478
def rpm_test_branch(step):
479
  return fnmatch.fnmatch(step.getProperty("branch"), "*-rpm-*") or step.getProperty("branch") == 'bb-10.1-elenst'
545 by Daniel Bartholomew
automatic maria-master.cfg commit
480
601 by Daniel Bartholomew
automatic maria-master.cfg commit
481
# Some additional new images are maintained to build Galera package.
482
def getGaleraBuildImage(kvm_image) :
611 by Daniel Bartholomew
automatic maria-master.cfg commit
483
  imagelist = ("vm-precise-amd64",
601 by Daniel Bartholomew
automatic maria-master.cfg commit
484
               "vm-precise-i386",
485
               "vm-sid-amd64",
486
               "vm-sid-i386",
487
               "vm-centos5-amd64",
613 by Daniel Bartholomew
automatic maria-master.cfg commit
488
               "vm-centos5-i386",
632 by Daniel Bartholomew
automatic maria-master.cfg commit
489
               "vm-sles11sp1-amd64",)
601 by Daniel Bartholomew
automatic maria-master.cfg commit
490
  found = any(kvm_image in image for image in imagelist)
491
  if found:
492
      kvm_build_image=kvm_image + "-galera"
493
  else:
494
      kvm_build_image=kvm_image + "-build"
495
  return kvm_build_image
545 by Daniel Bartholomew
automatic maria-master.cfg commit
496
497
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
498
# For example, if you had CVSToys installed on your repository, and your
499
# CVSROOT/freshcfg file had an entry like this:
500
#pb = ConfigurationSet([
501
#    (None, None, None, PBService(userpass=('foo', 'bar'), port=4519)),
502
#    ])
503
504
# then you could use the following buildmaster Change Source to subscribe to
505
# the FreshCVS daemon and be notified on every commit:
506
#
507
#from buildbot.changes.freshcvs import FreshCVSSource
508
#fc_source = FreshCVSSource("cvs.example.com", 4519, "foo", "bar")
509
#c['change_source'] = fc_source
510
511
# or, use a PBChangeSource, and then have your repository's commit script run
512
# 'buildbot sendchange', or use contrib/svn_buildbot.py, or
513
# contrib/arch_buildbot.py :
514
#
515
#from buildbot.changes.pb import PBChangeSource
516
#c['change_source'] = PBChangeSource()
517
518
519
####### SCHEDULERS
520
521
## configure the Schedulers
522
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
523
# Unused builders:
524
#    "centos5-debug",
525
#    "lenny-amd64-dbg", "adutko-alpha",
526
#    "jaunty-x86-valgrind", "jaunty-amd64-rel",
527
#    "gentoo-x86-dbg",
528
#    "ubuntu-x86-dbg",
529
#    "gentoo-amd64-sanja",
530
#    "opensolaris-511-x86",
531
#    "sol10-amd64-dbg", "sol10-sparc32-forte", "sol10-sparc64-forte",
532
#    "mac-mini-x86-dbg",
533
#    "win7-x86",	# can not run 24/7
534
#    "fedora13-x86-dbg",
535
#    "adutko-generic",
536
#    "aps82-204-generic"
537
#    "freebsd-amd64",
538
539
myMainBuilders = [
824 by Daniel Bartholomew
automatic maria-master.cfg commit
540
#    "work-amd64-valgrind",
665 by Daniel Bartholomew
automatic maria-master.cfg commit
541
    "win32-debug",
542
    "winx64-debug",
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
543
#    "macintosh",
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
544
    "labrador",
824 by Daniel Bartholomew
automatic maria-master.cfg commit
545
#    "mac-1012-bintar",
546
#    "bld-dan-debug",
547
#    "bld-dan-release",
900 by Sergei Golubchik
disable builders and buildslaves that are offline anyway
548
#   "raspberrypi",
550 by Daniel Bartholomew
Remove power01 builder
549
#    "power01"
298 by Daniel Bartholomew
automatic maria-master.cfg commit
550
    ]
551
552
myPower8Builders = [
356 by Daniel Bartholomew
automatic maria-master.cfg commit
553
     "p8-rhel6-bintar"
554
    ,"p8-rhel6-bintar-debug"
555
    ,"p8-rhel7-bintar"
556
    ,"p8-rhel7-bintar-debug"
392 by Daniel Bartholomew
automatic maria-master.cfg commit
557
    ,"p8-rhel71-bintar"
558
    ,"p8-rhel71-bintar-debug"
356 by Daniel Bartholomew
automatic maria-master.cfg commit
559
    ,"p8-trusty-bintar"
560
    ,"p8-trusty-bintar-debug"
561
    ,"p8-trusty-deb"
679 by Daniel Bartholomew
automatic maria-master.cfg commit
562
    ,"p8-xenial-bintar"
563
    ,"p8-xenial-bintar-debug"
564
    ,"p8-xenial-deb"
356 by Daniel Bartholomew
automatic maria-master.cfg commit
565
    ,"p8-rhel6-rpm"
566
    ,"p8-rhel7-rpm"
392 by Daniel Bartholomew
automatic maria-master.cfg commit
567
    ,"p8-rhel71-rpm"
353 by Daniel Bartholomew
Initial P8 SUSE 12 RPM builder
568
    ,"p8-suse12-rpm"
610 by Daniel Bartholomew
automatic maria-master.cfg commit
569
    ]
570
571
myIBMzBuilders = [
572
    "ibmz-rhel6-bintar"
579 by Daniel Bartholomew
additions to finish adding IBM System Z builders (rhel6 & sles11) to buildbot
573
    ,"ibmz-rhel6-rpm"
574
    ,"ibmz-sles11-bintar"
575
    ,"ibmz-sles11-rpm"
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
576
    ]
298 by Daniel Bartholomew
automatic maria-master.cfg commit
577
543 by Daniel Bartholomew
automatic maria-master.cfg commit
578
myNonSystemdBuilders = [
647 by Daniel Bartholomew
automatic maria-master.cfg commit
579
#     "kvm-deb-debian6-amd64"
580
#    ,"kvm-deb-debian6-x86"
581
    "kvm-deb-wheezy-amd64"
543 by Daniel Bartholomew
automatic maria-master.cfg commit
582
    ,"kvm-deb-wheezy-x86"
583
    ,"kvm-deb-precise-amd64"
584
    ,"kvm-deb-precise-x86"
823 by Daniel Bartholomew
add kvm-deb-trusty-ppc64le builder
585
    ,"kvm-deb-trusty-ppc64le"
543 by Daniel Bartholomew
automatic maria-master.cfg commit
586
    ,"kvm-deb-trusty-amd64"
587
    ,"kvm-deb-trusty-x86"
584 by Daniel Bartholomew
Disable Ubuntu 14.10 Utopic builders as it has been deprecated
588
#    ,"kvm-deb-utopic-amd64"
589
#    ,"kvm-deb-utopic-x86"
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
590
#    ,"kvm-rpm-centos5-amd64"
591
#    ,"kvm-rpm-centos5-x86"
543 by Daniel Bartholomew
automatic maria-master.cfg commit
592
    ,"kvm-rpm-centos6-amd64"
593
    ,"kvm-rpm-centos6-x86"
807 by Daniel Bartholomew
automatic maria-master.cfg commit
594
    ,"kvm-zyp-sles11-amd64"
800 by Daniel Bartholomew
automatic maria-master.cfg commit
595
#    ,"kvm-zyp-sles11sp1-amd64"
807 by Daniel Bartholomew
automatic maria-master.cfg commit
596
    ,"kvm-zyp-sles11-x86"
543 by Daniel Bartholomew
automatic maria-master.cfg commit
597
    ,"kvm-zyp-sles12-amd64"
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
598
#    ,"kvm-rpm-rhel5-amd64"
599
#    ,"kvm-rpm-rhel5-x86"
543 by Daniel Bartholomew
automatic maria-master.cfg commit
600
    ]
601
335 by Kristian Nielsen
Put a BranchFilter on most AnyBranch schedulers.
602
default_branch_filter = BranchFilter(on_launchpad=bzrBranches,
603
                                     on_github=gitBranches)
253 by Sergei Golubchik
dgcov script only supports bzr - don't run git branches on dgcov builder
604
from buildbot.scheduler import AnyBranchScheduler, Triggerable
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
605
c['schedulers'] = []
606
c['schedulers'].append(AnyBranchScheduler(
607
    name="mariadb",
335 by Kristian Nielsen
Put a BranchFilter on most AnyBranch schedulers.
608
    change_filter=default_branch_filter,
253 by Sergei Golubchik
dgcov script only supports bzr - don't run git branches on dgcov builder
609
    treeStableTimer=60,
610
    builderNames=myMainBuilders))
611
304 by Daniel Bartholomew
automatic maria-master.cfg commit
612
# Power 8 builders only support 5.5 and 10.0
335 by Kristian Nielsen
Put a BranchFilter on most AnyBranch schedulers.
613
# We need a BranchFilter so we don't get random stuff from GitHub.
298 by Daniel Bartholomew
automatic maria-master.cfg commit
614
c['schedulers'].append(AnyBranchScheduler(
615
    name="mariadb-power8",
335 by Kristian Nielsen
Put a BranchFilter on most AnyBranch schedulers.
616
    change_filter=BranchFilter(on_launchpad={"lp:~maria-captains/maria/5.5" : "5.5",
358 by Sergei Golubchik
buildbot: remove unused or useless doStepIf filters.
617
                                             "lp:~maria-captains/maria/10.0" : "10.0"},
762 by Daniel Bartholomew
automatic maria-master.cfg commit
618
                               on_github={"https://github.com/MariaDB/server" : ("10.3","10.2","10.1","10.0","5.5","5.5-galera","10.0-galera","bb-10.2-mdev10813"),
557 by Daniel Bartholomew
automatic maria-master.cfg commit
619
                                          "git@github.com:mariadb-corporation/MariaDBEnterprise" : ("10.1e","10.0e","5.5e","10.0e-galera","5.5e-galera")}),
298 by Daniel Bartholomew
automatic maria-master.cfg commit
620
    treeStableTimer=60,
621
    builderNames=myPower8Builders))
622
610 by Daniel Bartholomew
automatic maria-master.cfg commit
623
# IBMz builders only support 10.1+
624
# We need a BranchFilter so we don't get random stuff from GitHub.
900 by Sergei Golubchik
disable builders and buildslaves that are offline anyway
625
#c['schedulers'].append(AnyBranchScheduler(
626
#    name="mariadb-ibmz",
627
#    change_filter=BranchFilter(on_github={"https://github.com/MariaDB/server" : ("10.3","10.2","10.1"),
628
#                                          "git@github.com:mariadb-corporation/MariaDBEnterprise" : ("10.1e","10.2e")}),
629
#    treeStableTimer=60,
630
#    builderNames=myIBMzBuilders))
610 by Daniel Bartholomew
automatic maria-master.cfg commit
631
253 by Sergei Golubchik
dgcov script only supports bzr - don't run git branches on dgcov builder
632
# dgcov script only supports bzr
633
c['schedulers'].append(AnyBranchScheduler(
634
    name="mariadb-bzronly",
335 by Kristian Nielsen
Put a BranchFilter on most AnyBranch schedulers.
635
    change_filter=BranchFilter(on_launchpad=bzrBranches),
44 by Kristian Nielsen
Fix some wrong comments.
636
    treeStableTimer=60,
253 by Sergei Golubchik
dgcov script only supports bzr - don't run git branches on dgcov builder
637
    builderNames=["kvm-dgcov-jaunty-i386"]))
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
638
168.1.9 by Kristian Nielsen
For Galera trees, add our main public repo to /etc/apt/sources* when testing.
639
c['schedulers'].append(AnyBranchScheduler(
640
    name="jdbc",
399 by Daniel Bartholomew
automatic maria-master.cfg commit
641
    branches= "https://github.com/MariaDB/mariadb-connector-j.git",
168.1.9 by Kristian Nielsen
For Galera trees, add our main public repo to /etc/apt/sources* when testing.
642
    treeStableTimer=60,
643
    builderNames=["win-jdbc"
644
                  ]))
645
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
646
c['schedulers'].append(AnyBranchScheduler(
400 by Daniel Bartholomew
automatic maria-master.cfg commit
647
    name="connector_odbc",
729 by Daniel Bartholomew
automatic maria-master.cfg commit
648
    change_filter=BranchFilter(on_github={"https://github.com/MariaDB/mariadb-connector-odbc" : ("odbc-2.0")}),
223 by Daniel Bartholomew
add Windows ODBC driver builder to buildbot
649
    treeStableTimer=60,
405 by Daniel Bartholomew
automatic maria-master.cfg commit
650
    builderNames=["win_connector_odbc"
223 by Daniel Bartholomew
add Windows ODBC driver builder to buildbot
651
                  ]))
404 by Daniel Bartholomew
automatic maria-master.cfg commit
652
c['schedulers'].append(AnyBranchScheduler(
653
    name="connector_odbc_linux",
502 by Daniel Bartholomew
automatic maria-master.cfg commit
654
    change_filter=BranchFilter(on_github={"https://github.com/MariaDB/mariadb-connector-odbc" : ("odbc-2.0")}),
404 by Daniel Bartholomew
automatic maria-master.cfg commit
655
    treeStableTimer=60,
902 by Daniel Bartholomew
automatic maria-master.cfg commit
656
    builderNames=["linux_x64-connector-odbc", "linux_x86-connector-odbc", "centos7_x86-connector-odbc", "centos7_x64-connector-odbc", "jessie_x86-connector-odbc", "jessie_x64-connector-odbc", "generic_x64-connector-odbc",
576 by Daniel Bartholomew
Various updates to bld_linux_connector_oddbc builder
657
                  "generic_x86-connector-odbc"
404 by Daniel Bartholomew
automatic maria-master.cfg commit
658
                  ]))
223 by Daniel Bartholomew
add Windows ODBC driver builder to buildbot
659
660
c['schedulers'].append(AnyBranchScheduler(
400 by Daniel Bartholomew
automatic maria-master.cfg commit
661
    name="connector-c",
566 by Daniel Bartholomew
automatic maria-master.cfg commit
662
    change_filter=BranchFilter(on_github={"https://github.com/MariaDB/mariadb-connector-c" : ("connector_c_2.2")}),
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
663
    treeStableTimer=60,
850 by Daniel Bartholomew
Added FreeBSD 11 builders for Connector/C
664
    builderNames=["win-connector_c", "freebsd_x64-connector_c", "freebsd11_x64-connector_c", "freebsd11_x86-connector_c", "linux_x64-connector_c", "linux_x86-connector_c", "centos6_i386-connector_c"
400 by Daniel Bartholomew
automatic maria-master.cfg commit
665
                  ]))
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
666
566 by Daniel Bartholomew
automatic maria-master.cfg commit
667
c['schedulers'].append(AnyBranchScheduler(
668
    name="connector-c-3",
851 by Daniel Bartholomew
automatic maria-master.cfg commit
669
    change_filter=BranchFilter(on_github={"https://github.com/MariaDB/mariadb-connector-c" : ("master", "connector_c_3.0", "bb-*")}),
566 by Daniel Bartholomew
automatic maria-master.cfg commit
670
    treeStableTimer=60,
851 by Daniel Bartholomew
automatic maria-master.cfg commit
671
    builderNames=["win-connector_c_3", "linux_x64-connector_c", "linux_x86-connector_c", "centos6_i386-connector_c", "freebsd11_x64-connector_c", "freebsd11_x86-connector_c"
566 by Daniel Bartholomew
automatic maria-master.cfg commit
672
                  ]))
673
74 by Kristian Nielsen
Misc. config changes for Buildbot:
674
# A scheduler for the GCov build
52 by Kristian Nielsen
Tree configuration.
675
676
c['schedulers'].append(AnyBranchScheduler(
677
    name="gcov",
678
    treeStableTimer=60,
244 by Sergei Golubchik
remove old 5.[1235] feature trees
679
    branches=["5.1", "5.2", "5.3" ],
52 by Kristian Nielsen
Tree configuration.
680
    builderNames=["gcov"]
681
))
682
74 by Kristian Nielsen
Misc. config changes for Buildbot:
683
#
684
# A scheduler for the build that compiles DBD::mysql, php and the like
685
#
52 by Kristian Nielsen
Tree configuration.
686
74 by Kristian Nielsen
Misc. config changes for Buildbot:
687
c['schedulers'].append(AnyBranchScheduler(
688
    name="compile-connectors",
689
    treeStableTimer=60,
690
    branches=["5.1", "5.2", "5.3"],
691
    builderNames=["compile-connectors"]
692
))
52 by Kristian Nielsen
Tree configuration.
693
123 by Kristian Nielsen
--innodb-release-locks-early was removed from server.
694
#
138 by Kristian Nielsen
New trees.
695
# A scheduler for testing with customer data
696
#
697
698
c['schedulers'].append(AnyBranchScheduler(
699
    name="test-customer-data",
700
    treeStableTimer=60,
335 by Kristian Nielsen
Put a BranchFilter on most AnyBranch schedulers.
701
    change_filter=BranchFilter(on_launchpad={"lp:~maria-captains/maria/5.2" : "5.2",
702
                                             "lp:~maria-captains/maria/5.3" : "5.3",
703
                                             "lp:~maria-captains/maria/5.5" : "5.5",
408 by Daniel Bartholomew
restored non-public git repo as we need those binaries built
704
                                             "lp:~maria-captains/maria/10.0" : "10.0"},
557 by Daniel Bartholomew
automatic maria-master.cfg commit
705
                               on_github={"git@github.com:mariadb-corporation/MariaDBEnterprise" : ("10.1e", "10.0e","5.5e",)}),
138 by Kristian Nielsen
New trees.
706
    builderNames=["test-customer-data"]
707
))
708
709
710
711
#
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
712
# A scheduler for the builder that compiles Net::HandlerSocket and tests handlersocket
713
# 
714
715
c['schedulers'].append(AnyBranchScheduler(
716
    name="test-handlersocket",
717
    treeStableTimer=60,
335 by Kristian Nielsen
Put a BranchFilter on most AnyBranch schedulers.
718
    change_filter=BranchFilter(on_launchpad={"lp:~maria-captains/maria/5.5" : "5.5",
719
                                             "lp:~maria-captains/maria/10.0" : "10.0"}),
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
720
    builderNames=["test-handlersocket"]
721
))
722
168.1.9 by Kristian Nielsen
For Galera trees, add our main public repo to /etc/apt/sources* when testing.
723
# A scheduler for creating tarballs used by non-bzr builders.
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
724
c['schedulers'].append(AnyBranchScheduler(
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
725
    name="tarbake",
335 by Kristian Nielsen
Put a BranchFilter on most AnyBranch schedulers.
726
    change_filter=default_branch_filter,
44 by Kristian Nielsen
Fix some wrong comments.
727
    treeStableTimer=60,
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
728
    properties= {"bakebranch": "lp:~maria-captains/ourdelta/ourdelta-montyprogram-fixes"},
729
    builderNames=["kvm-tarbake-jaunty-x86"]))
730
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
731
# A scheduler for running those of the kvm-based builders that are run in
732
# all trees.
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
733
c['schedulers'].append(Triggerable(
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
734
        name="kvm-sched-alltrees",
735
        builderNames=[
736
                      "kvm-fulltest",
236 by Sergei Golubchik
kvm-fulltest2 - moved from 'alltrees' to a separate scheduler for 5.5+,
737
#                      "kvm-fulltest2",
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
738
                      "winx64-packages",
739
                      "win32-packages",
660 by Daniel Bartholomew
automatic maria-master.cfg commit
740
#                      "bsd9-64",
191 by Daniel Bartholomew
Removed (commented out) the hardy and oneiric builders. They have been
741
#                      "kvm-deb-hardy-x86",
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
742
                      "kvm-deb-wheezy-amd64",
520 by Daniel Bartholomew
automatic maria-master.cfg commit
743
                      "kvm-deb-trusty-amd64",
823 by Daniel Bartholomew
add kvm-deb-trusty-ppc64le builder
744
                      "kvm-deb-trusty-ppc64le",
216 by Daniel Bartholomew
removed fedora18 builders as they are now deprecated
745
#                      "kvm-rpm-fedora18-amd64",
200 by Daniel Bartholomew
Disable precise bintar
746
#                      "kvm-bintar-precise-x86",
835 by Daniel Bartholomew
automatic maria-master.cfg commit
747
                      "kvm-bintar-trusty-x86",
748
                      "kvm-bintar-trusty-amd64",
199 by Daniel Bartholomew
Added quantal bintar
749
                      "kvm-bintar-quantal-x86",
797 by Daniel Bartholomew
automatic maria-master.cfg commit
750
#                      "kvm-bintar-centos5-x86",
598 by Daniel Bartholomew
automatic maria-master.cfg commit
751
                      "kvm-bintar-quantal-amd64",
797 by Daniel Bartholomew
automatic maria-master.cfg commit
752
#                      "kvm-bintar-centos5-amd64",
753
#                      "kvm-rpm-centos6-amd64",
770 by Daniel Bartholomew
automatic maria-master.cfg commit
754
                      "kvm-rpm-centos7-amd64",
888 by Daniel Bartholomew
automatic maria-master.cfg commit
755
                      "kvm-rpm-centos73-amd64",
890 by Daniel Bartholomew
Add kvm-rpm-centos73-ppc64 and kvm-rpm-centos73-ppc64le builders
756
                      "kvm-rpm-centos73-ppc64",
757
                      "kvm-rpm-centos73-ppc64le",
824 by Daniel Bartholomew
automatic maria-master.cfg commit
758
#                      "sol10-64",
900 by Sergei Golubchik
disable builders and buildslaves that are offline anyway
759
#                     "sol10-sparc",
810 by Daniel Bartholomew
automatic maria-master.cfg commit
760
#                      "xenial-amd64-valgrind",
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
761
                      ]))
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
762
# A scheduler for running those of the kvm-based builders that are run only
763
# in main trees.
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
764
c['schedulers'].append(Triggerable(
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
765
        name="kvm-sched-mainonly",
766
        builderNames=[
824 by Daniel Bartholomew
automatic maria-master.cfg commit
767
                      "work-amd64-valgrind",
768
                      "mac-1012-bintar",
769
                      "bld-dan-debug", "bld-dan-release",
797 by Daniel Bartholomew
automatic maria-master.cfg commit
770
                      "kvm-bintar-centos5-x86", "kvm-bintar-centos5-amd64",
835 by Daniel Bartholomew
automatic maria-master.cfg commit
771
#                      "kvm-bintar-trusty-x86",
772
#                      "kvm-bintar-trusty-amd64",
853 by Daniel Bartholomew
Added FreeBSD MariaDB build factory, and freebsd11-amd64/i386 builders
773
                      "kvm-freebsd11-x86", "kvm-freebsd11-amd64",
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
774
#                      "kvm-rpm-centos5-x86", "kvm-rpm-centos5-amd64",
797 by Daniel Bartholomew
automatic maria-master.cfg commit
775
                      "kvm-rpm-centos6-x86", "kvm-rpm-centos6-amd64",
387 by Daniel Bartholomew
automatic maria-master.cfg commit
776
#                      "kvm-rpm-centos7_0-x86_64",
777
#                      "kvm-zyp-opensuse13_1-x86", "kvm-zyp-opensuse13_1-x86_64",
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
778
#                      "kvm-zyp-opensuse13-x86", "kvm-zyp-opensuse13-amd64",
387 by Daniel Bartholomew
automatic maria-master.cfg commit
779
#                      "kvm-zyp-sles11-x86_64",
824 by Daniel Bartholomew
automatic maria-master.cfg commit
780
#                      "kvm-zyp-sles11-x86", "kvm-zyp-sles11-amd64",
800 by Daniel Bartholomew
automatic maria-master.cfg commit
781
#                      "kvm-zyp-sles11sp1-amd64",
387 by Daniel Bartholomew
automatic maria-master.cfg commit
782
#                      "kvm-zyp-sles12-x86_64",
783
                      "kvm-zyp-sles12-amd64",
180 by Daniel Bartholomew
Remove Debian 5, Ubuntu Maverick, Ubuntu Natty, and Fedora 16 builds from buildbot
784
#                      "kvm-rpm-fedora16-x86", "kvm-rpm-fedora16-amd64",
216 by Daniel Bartholomew
removed fedora18 builders as they are now deprecated
785
#                      "kvm-rpm-fedora18-x86",
490 by Daniel Bartholomew
Deactivate Fedora19 rpm builders
786
#                      "kvm-rpm-fedora19-x86", "kvm-rpm-fedora19-amd64",
585 by Daniel Bartholomew
disable Fedora20 builds
787
#                      "kvm-rpm-fedora20-x86", "kvm-rpm-fedora20-amd64",
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
788
#                      "kvm-rpm-opensuse12-x86", "kvm-rpm-opensuse12-amd64",
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
789
#                      "kvm-rpm-rhel5-x86",
790
#                      "kvm-rpm-rhel5-amd64",
387 by Daniel Bartholomew
automatic maria-master.cfg commit
791
#                      "kvm-rpm-rhel6-x86",  # Some kvm images are missing
792
#                      "kvm-rpm-rhel6-amd64",
180 by Daniel Bartholomew
Remove Debian 5, Ubuntu Maverick, Ubuntu Natty, and Fedora 16 builds from buildbot
793
#                      "kvm-deb-debian5-amd64", "kvm-deb-debian5-x86",
647 by Daniel Bartholomew
automatic maria-master.cfg commit
794
#                      "kvm-deb-debian6-amd64", "kvm-deb-debian6-x86",
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
795
                      "kvm-deb-wheezy-x86",
191 by Daniel Bartholomew
Removed (commented out) the hardy and oneiric builders. They have been
796
#                      "kvm-deb-hardy-amd64",
489 by Daniel Bartholomew
Deactivate Ubuntu 10.04 LTS "Lucid" builders
797
#                      "kvm-deb-lucid-amd64", "kvm-deb-lucid-x86",
180 by Daniel Bartholomew
Remove Debian 5, Ubuntu Maverick, Ubuntu Natty, and Fedora 16 builds from buildbot
798
#                      "kvm-deb-maverick-amd64", "kvm-deb-maverick-x86",
799
#                      "kvm-deb-natty-amd64", "kvm-deb-natty-x86",
191 by Daniel Bartholomew
Removed (commented out) the hardy and oneiric builders. They have been
800
#                      "kvm-deb-oneiric-amd64", "kvm-deb-oneiric-x86",
268 by Daniel Bartholomew
Stop Ubuntu Quantal .deb builds (that release is now deprecated).
801
#                      "kvm-deb-quantal-amd64", "kvm-deb-quantal-x86",
215 by Daniel Bartholomew
removed raring builders as it is now deprecated
802
#                      "kvm-deb-raring-amd64", "kvm-deb-raring-x86",
321 by Daniel Bartholomew
automatic maria-master.cfg commit
803
#                      "kvm-deb-saucy-amd64", "kvm-deb-saucy-x86",
520 by Daniel Bartholomew
automatic maria-master.cfg commit
804
                      "kvm-deb-trusty-x86",
584 by Daniel Bartholomew
Disable Ubuntu 14.10 Utopic builders as it has been deprecated
805
#                      "kvm-deb-utopic-amd64", "kvm-deb-utopic-x86",
311 by Daniel Bartholomew
automatic maria-master.cfg commit
806
#                      "kvm-bintar-hardy-amd64", "kvm-bintar-hardy-x86",
200 by Daniel Bartholomew
Disable precise bintar
807
#                      "kvm-bintar-precise-amd64",
900 by Sergei Golubchik
disable builders and buildslaves that are offline anyway
808
#                      "opensolaris-511-bintar",
744 by Daniel Bartholomew
automatic maria-master.cfg commit
809
                      "kvm-fulltest-big",
810
                      "kvm-fulltest2-big",
824 by Daniel Bartholomew
automatic maria-master.cfg commit
811
                      "sol10-64",
798 by Daniel Bartholomew
automatic maria-master.cfg commit
812
#                      "xenial-amd64-valgrind",
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
813
                      ]))
824 by Daniel Bartholomew
automatic maria-master.cfg commit
814
815
c['schedulers'].append(Triggerable(
816
        name="kvm-sched-enterprise-only",
817
        builderNames=[
818
                      "kvm-zyp-sles11-x86", "kvm-zyp-sles11-amd64",
819
                      ]))
820
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
821
# These are no longer used, the distro is out of support or they have been
822
# superceeded by other builders.
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
823
#                      "kvm-rpm-fedora17-x86", "kvm-rpm-fedora17-amd64",
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
824
#                      "kvm-zip-winxp-x86",
825
#                      "kvm-deb-debian4-amd64", "kvm-deb-debian4-x86",
826
#                      "kvm-deb-intrepid-amd64", "kvm-deb-intrepid-x86",
827
#                      "kvm-deb-jaunty-amd64", "kvm-deb-jaunty-x86",
828
#                      "kvm-deb-karmic-amd64", "kvm-deb-karmic-x86",
829
333 by Daniel Bartholomew
automatic maria-master.cfg commit
830
# A scheduler for running those of the kvm-based builders that are run only
767 by Daniel Bartholomew
automatic maria-master.cfg commit
831
# in main trees, and only in 5.5, 10.0, and 10.1
832
c['schedulers'].append(Triggerable(
833
        name="kvm-sched-mainonly-5.5-10.1",
834
        builderNames=[
835
                      "kvm-deb-precise-amd64", "kvm-deb-precise-x86",
836
                      ]))
837
            
838
839
# A scheduler for running those of the kvm-based builders that are run only
333 by Daniel Bartholomew
automatic maria-master.cfg commit
840
# in main trees, and only in 10.0 or later.
841
c['schedulers'].append(Triggerable(
703 by Daniel Bartholomew
automatic maria-master.cfg commit
842
        name="kvm-sched-mainonly-10.1+",
843
        # Fedora 24 has MariaDB 10.1, so no need to build lower versions
844
        builderNames=[
845
                      "kvm-rpm-fedora24-x86", "kvm-rpm-fedora24-amd64",
811 by Daniel Bartholomew
Add Fedora 25 builder
846
                      "kvm-rpm-fedora25-x86", "kvm-rpm-fedora25-amd64",
771 by Daniel Bartholomew
automatic maria-master.cfg commit
847
                      "kvm-deb-stretch-amd64", "kvm-deb-stretch-x86",
815 by Daniel Bartholomew
Add stretch-ppc64le builder
848
                      "kvm-deb-stretch-ppc64le",
908 by Daniel Bartholomew
Add Ubuntu 17.04 "zesty" VMs
849
                      "kvm-deb-zesty-amd64", "kvm-deb-zesty-x86",
703 by Daniel Bartholomew
automatic maria-master.cfg commit
850
                      ]))
851
852
c['schedulers'].append(Triggerable(
333 by Daniel Bartholomew
automatic maria-master.cfg commit
853
        name="kvm-sched-mainonly-10.0+",
854
        # Debian SID has MariaDB 10.0 native, so our 5.5 3rd-party builds
855
        # do not work.
378 by Daniel Bartholomew
automatic maria-master.cfg commit
856
	# Ubuntu Utopic has Boost 1.55, with which the old OQGRAPH does not build.
857
        # And the official repo has MariaDB 5.5, so there is no critical need 
858
        # to build it
333 by Daniel Bartholomew
automatic maria-master.cfg commit
859
        builderNames=[
860
                      "kvm-deb-sid-amd64", "kvm-deb-sid-x86",
469 by Daniel Bartholomew
Modify Debian Jessie and Ubuntu Vivid builders to only build 10.0 (or higher) trees.
861
                      "kvm-deb-jessie-amd64", "kvm-deb-jessie-x86",
778 by Daniel Bartholomew
automatic maria-master.cfg commit
862
                      "kvm-deb-jessie-ppc64le",
647 by Daniel Bartholomew
automatic maria-master.cfg commit
863
                      #"kvm-deb-vivid-amd64", "kvm-deb-vivid-x86",
710 by Daniel Bartholomew
automatic maria-master.cfg commit
864
                      #"kvm-deb-wily-amd64", "kvm-deb-wily-x86",
660 by Daniel Bartholomew
automatic maria-master.cfg commit
865
                      "kvm-deb-xenial-amd64", "kvm-deb-xenial-x86",
777 by Daniel Bartholomew
automatic maria-master.cfg commit
866
                      "kvm-deb-xenial-ppc64le",
754 by Daniel Bartholomew
automatic maria-master.cfg commit
867
                      "kvm-deb-yakkety-amd64", "kvm-deb-yakkety-x86",
617 by Daniel Bartholomew
automatic maria-master.cfg commit
868
                      #"kvm-rpm-fedora21-x86", "kvm-rpm-fedora21-amd64",
720 by Daniel Bartholomew
automatic maria-master.cfg commit
869
                      #"kvm-rpm-fedora22-x86", "kvm-rpm-fedora22-amd64",
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
870
                      #"kvm-rpm-fedora23-x86", "kvm-rpm-fedora23-amd64",
870 by Daniel Bartholomew
Move kvm-zyp-opensuse42-amd64 builder to kvm-sched-mainonly-10.0+ because 10.0 is the version of MariaDB in the openSUSE repos
871
                      "kvm-zyp-opensuse42-amd64",
333 by Daniel Bartholomew
automatic maria-master.cfg commit
872
                      ]))
873
810 by Daniel Bartholomew
automatic maria-master.cfg commit
874
# Created on 2017-01-22 by Elena
875
# to have xenial built for non-main 10+ trees instead of precise,
876
# which is only built for main 5.5-10.1 trees
877
c['schedulers'].append(Triggerable(
878
        name="kvm-sched-devtrees-10.0+",
879
        builderNames=[
880
                      "kvm-deb-xenial-x86",
881
                      ]))
882
883
# To preserve precise for 5.5 development trees, since
884
# we don't build xenail there
885
c['schedulers'].append(Triggerable(
886
        name="kvm-sched-devtrees-5.5",
887
        builderNames=[
888
                      "kvm-deb-precise-x86",
889
                      ]))
890
891
236 by Sergei Golubchik
kvm-fulltest2 - moved from 'alltrees' to a separate scheduler for 5.5+,
892
# kvm-fulltest2 - moved from 'alltrees' to a separate scheduler for 5.5+,
893
#   because it doesn't compile on 5.1-5.3
894
c['schedulers'].append(Triggerable(
895
    name="kvm-sched-fulltest2",
896
    builderNames=["kvm-fulltest2"]
897
))
898
749 by Elena Stepanova
Extract QA-specific schedulers and builders into separate config.
899
execfile("/etc/buildbot/builders/qa/qa_schedulers.py");
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
900
373 by Daniel Bartholomew
automatic maria-master.cfg commit
901
#
902
# A scheduler for building Galera packages
903
# 
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
904
myGaleraBuilders = [
905
                    #"kvm-rpm-centos5-x86-gal", "kvm-rpm-centos5-amd64-gal",
539 by Daniel Bartholomew
automatic maria-master.cfg commit
906
                    "kvm-rpm-centos6-x86-gal", "kvm-rpm-centos6-amd64-gal",
907
                    "kvm-rpm-centos7-amd64-gal",
888 by Daniel Bartholomew
automatic maria-master.cfg commit
908
                    "kvm-rpm-centos73-amd64-gal",
890 by Daniel Bartholomew
Add kvm-rpm-centos73-ppc64 and kvm-rpm-centos73-ppc64le builders
909
                    "kvm-rpm-centos73-ppc64-gal",
910
                    "kvm-rpm-centos73-ppc64le-gal",
539 by Daniel Bartholomew
automatic maria-master.cfg commit
911
                    # "kvm-rpm-fedora19-x86-gal", "kvm-rpm-fedora19-amd64-gal",
585 by Daniel Bartholomew
disable Fedora20 builds
912
                    # "kvm-rpm-fedora20-x86-gal", "kvm-rpm-fedora20-amd64-gal",
617 by Daniel Bartholomew
automatic maria-master.cfg commit
913
                    #"kvm-rpm-fedora21-x86-gal", "kvm-rpm-fedora21-amd64-gal",
720 by Daniel Bartholomew
automatic maria-master.cfg commit
914
                    #"kvm-rpm-fedora22-x86-gal", "kvm-rpm-fedora22-amd64-gal",
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
915
                    #"kvm-rpm-fedora23-x86-gal", "kvm-rpm-fedora23-amd64-gal",
702 by Daniel Bartholomew
add Fedora24
916
                    "kvm-rpm-fedora24-x86-gal", "kvm-rpm-fedora24-amd64-gal",
811 by Daniel Bartholomew
Add Fedora 25 builder
917
                    "kvm-rpm-fedora25-x86-gal", "kvm-rpm-fedora25-amd64-gal",
618 by Daniel Bartholomew
automatic maria-master.cfg commit
918
                    #"kvm-rpm-rhel5-x86-gal", "kvm-rpm-rhel5-amd64-gal",
539 by Daniel Bartholomew
automatic maria-master.cfg commit
919
920
                    # "kvm-deb-lucid-amd64-gal", "kvm-deb-lucid-x86-gal",
921
                    "kvm-deb-precise-amd64-gal", "kvm-deb-precise-x86-gal",
922
                    "kvm-deb-trusty-amd64-gal", "kvm-deb-trusty-x86-gal",
823 by Daniel Bartholomew
add kvm-deb-trusty-ppc64le builder
923
                    "kvm-deb-trusty-ppc64le-gal",
585 by Daniel Bartholomew
disable Fedora20 builds
924
                    # "kvm-deb-utopic-amd64-gal", "kvm-deb-utopic-x86-gal",
647 by Daniel Bartholomew
automatic maria-master.cfg commit
925
                    #"kvm-deb-vivid-amd64-gal", "kvm-deb-vivid-x86-gal",
710 by Daniel Bartholomew
automatic maria-master.cfg commit
926
                    #"kvm-deb-wily-amd64-gal", "kvm-deb-wily-x86-gal",
660 by Daniel Bartholomew
automatic maria-master.cfg commit
927
                    "kvm-deb-xenial-amd64-gal", "kvm-deb-xenial-x86-gal",
777 by Daniel Bartholomew
automatic maria-master.cfg commit
928
                    "kvm-deb-xenial-ppc64le-gal",
754 by Daniel Bartholomew
automatic maria-master.cfg commit
929
                    "kvm-deb-yakkety-amd64-gal", "kvm-deb-yakkety-x86-gal",
908 by Daniel Bartholomew
Add Ubuntu 17.04 "zesty" VMs
930
                    "kvm-deb-zesty-amd64-gal", "kvm-deb-zesty-x86-gal",
647 by Daniel Bartholomew
automatic maria-master.cfg commit
931
                    #"kvm-deb-debian6-amd64-gal", "kvm-deb-debian6-x86-gal",
539 by Daniel Bartholomew
automatic maria-master.cfg commit
932
                    "kvm-deb-wheezy-amd64-gal", "kvm-deb-wheezy-x86-gal",
542 by Daniel Bartholomew
automatic maria-master.cfg commit
933
                    "kvm-deb-jessie-amd64-gal", "kvm-deb-jessie-x86-gal",
778 by Daniel Bartholomew
automatic maria-master.cfg commit
934
                    "kvm-deb-jessie-ppc64le-gal",
771 by Daniel Bartholomew
automatic maria-master.cfg commit
935
                    "kvm-deb-stretch-amd64-gal", "kvm-deb-stretch-x86-gal",
815 by Daniel Bartholomew
Add stretch-ppc64le builder
936
                    "kvm-deb-stretch-ppc64le-gal",
539 by Daniel Bartholomew
automatic maria-master.cfg commit
937
                    "kvm-deb-sid-amd64-gal", "kvm-deb-sid-x86-gal",
938
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
939
                    #"kvm-zyp-opensuse13-x86-gal", "kvm-zyp-opensuse13-amd64-gal",
820 by Daniel Bartholomew
Add opensuse42-amd64 builder
940
                    "kvm-zyp-opensuse42-amd64-gal",
539 by Daniel Bartholomew
automatic maria-master.cfg commit
941
                    "kvm-zyp-sles11-x86-gal", "kvm-zyp-sles11-amd64-gal",
632 by Daniel Bartholomew
automatic maria-master.cfg commit
942
                    "kvm-zyp-sles12-amd64-gal", "kvm-zyp-sles11sp1-amd64-gal",
542 by Daniel Bartholomew
automatic maria-master.cfg commit
943
625 by Daniel Bartholomew
automatic maria-master.cfg commit
944
                    # Power8
945
                    "p8-rhel6-rpm-gal", "p8-rhel7-rpm-gal",
946
                    "p8-rhel71-rpm-gal", "p8-trusty-deb-gal",
679 by Daniel Bartholomew
automatic maria-master.cfg commit
947
                    "p8-suse12-rpm-gal", "p8-xenial-deb-gal",
539 by Daniel Bartholomew
automatic maria-master.cfg commit
948
                   ]
949
373 by Daniel Bartholomew
automatic maria-master.cfg commit
950
951
c['schedulers'].append(AnyBranchScheduler(
535 by Daniel Bartholomew
automatic maria-master.cfg commit
952
    name="galera",
373 by Daniel Bartholomew
automatic maria-master.cfg commit
953
    treeStableTimer=60,
954
    change_filter=BranchFilter(on_github=
955
      {
535 by Daniel Bartholomew
automatic maria-master.cfg commit
956
        "https://github.com/MariaDB/galera":
957
        (
958
          "mariadb-3.x",
664 by Daniel Bartholomew
automatic maria-master.cfg commit
959
          "mariadb-3.x-*",
535 by Daniel Bartholomew
automatic maria-master.cfg commit
960
        )
373 by Daniel Bartholomew
automatic maria-master.cfg commit
961
      }),
539 by Daniel Bartholomew
automatic maria-master.cfg commit
962
    builderNames=myGaleraBuilders))
373 by Daniel Bartholomew
automatic maria-master.cfg commit
963
517 by Sergei Golubchik
new debpkg scheduler
964
#
965
# a scheduler for testing debian packaging: all deb builders, nothing else
966
#
227 by Kristian Nielsen
Add debpkg builder for Otto; when new stuff is pushed to the .deb buildscripts repo on github, it pulls the changes and tries a build.
967
517 by Sergei Golubchik
new debpkg scheduler
968
c['schedulers'].append(Triggerable(
969
        name="kvm-sched-debpkg-trees",
970
        builderNames=[
647 by Daniel Bartholomew
automatic maria-master.cfg commit
971
#                      "kvm-deb-debian6-amd64", "kvm-deb-debian6-x86",
517 by Sergei Golubchik
new debpkg scheduler
972
                      "kvm-deb-wheezy-amd64",  "kvm-deb-wheezy-x86",
973
                      "kvm-deb-precise-amd64", "kvm-deb-precise-x86",
974
                      "kvm-deb-trusty-amd64",  "kvm-deb-trusty-x86",
823 by Daniel Bartholomew
add kvm-deb-trusty-ppc64le builder
975
                      "kvm-deb-trusty-ppc64le",
584 by Daniel Bartholomew
Disable Ubuntu 14.10 Utopic builders as it has been deprecated
976
#                      "kvm-deb-utopic-amd64",  "kvm-deb-utopic-x86",
771 by Daniel Bartholomew
automatic maria-master.cfg commit
977
                      "kvm-deb-stretch-amd64", "kvm-deb-stretch-x86",
815 by Daniel Bartholomew
Add stretch-ppc64le builder
978
                      "kvm-deb-stretch-ppc64le",
517 by Sergei Golubchik
new debpkg scheduler
979
                      "kvm-deb-sid-amd64",     "kvm-deb-sid-x86",
980
                      "kvm-deb-jessie-amd64",  "kvm-deb-jessie-x86",
778 by Daniel Bartholomew
automatic maria-master.cfg commit
981
                      "kvm-deb-jessie-ppc64le",
710 by Daniel Bartholomew
automatic maria-master.cfg commit
982
#                      "kvm-deb-vivid-amd64",   "kvm-deb-vivid-x86",
983
#                      "kvm-deb-wily-amd64",   "kvm-deb-wily-x86",
660 by Daniel Bartholomew
automatic maria-master.cfg commit
984
                      "kvm-deb-xenial-amd64",   "kvm-deb-xenial-x86",
777 by Daniel Bartholomew
automatic maria-master.cfg commit
985
                      "kvm-deb-xenial-ppc64le",
754 by Daniel Bartholomew
automatic maria-master.cfg commit
986
                      "kvm-deb-yakkety-amd64",   "kvm-deb-yakkety-x86",
908 by Daniel Bartholomew
Add Ubuntu 17.04 "zesty" VMs
987
                      "kvm-deb-zesty-amd64",   "kvm-deb-zesty-x86",
517 by Sergei Golubchik
new debpkg scheduler
988
                      ]))
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
989
545 by Daniel Bartholomew
automatic maria-master.cfg commit
990
c['schedulers'].append(Triggerable(
991
        name="kvm-sched-systemd-trees",
992
        builderNames=[
993
                      "kvm-deb-wheezy-amd64",
994
#                      "kvm-deb-sid-amd64",     "kvm-deb-sid-x86",
771 by Daniel Bartholomew
automatic maria-master.cfg commit
995
                      "kvm-deb-stretch-amd64", "kvm-deb-stretch-x86",
815 by Daniel Bartholomew
Add stretch-ppc64le builder
996
                      "kvm-deb-stretch-ppc64le",
545 by Daniel Bartholomew
automatic maria-master.cfg commit
997
                      "kvm-deb-jessie-amd64",  "kvm-deb-jessie-x86",
778 by Daniel Bartholomew
automatic maria-master.cfg commit
998
                      "kvm-deb-jessie-ppc64le",
647 by Daniel Bartholomew
automatic maria-master.cfg commit
999
#                      "kvm-deb-vivid-amd64",   "kvm-deb-vivid-x86",
710 by Daniel Bartholomew
automatic maria-master.cfg commit
1000
#                      "kvm-deb-wily-amd64",   "kvm-deb-wily-x86",
660 by Daniel Bartholomew
automatic maria-master.cfg commit
1001
                      "kvm-deb-xenial-amd64",   "kvm-deb-xenial-x86",
777 by Daniel Bartholomew
automatic maria-master.cfg commit
1002
                      "kvm-deb-xenial-ppc64le",
754 by Daniel Bartholomew
automatic maria-master.cfg commit
1003
                      "kvm-deb-yakkety-amd64",   "kvm-deb-yakkety-x86",
908 by Daniel Bartholomew
Add Ubuntu 17.04 "zesty" VMs
1004
                      "kvm-deb-zesty-amd64",   "kvm-deb-zesty-x86",
545 by Daniel Bartholomew
automatic maria-master.cfg commit
1005
                      "kvm-rpm-centos6-x86",
1006
                      "kvm-rpm-centos7-amd64", 
888 by Daniel Bartholomew
automatic maria-master.cfg commit
1007
                      "kvm-rpm-centos73-amd64", 
890 by Daniel Bartholomew
Add kvm-rpm-centos73-ppc64 and kvm-rpm-centos73-ppc64le builders
1008
                      "kvm-rpm-centos73-ppc64", 
1009
                      "kvm-rpm-centos73-ppc64le", 
585 by Daniel Bartholomew
disable Fedora20 builds
1010
#                      "kvm-rpm-fedora20-amd64", "kvm-rpm-fedora20-x86",
617 by Daniel Bartholomew
automatic maria-master.cfg commit
1011
#                      "kvm-rpm-fedora21-amd64", "kvm-rpm-fedora21-x86",
720 by Daniel Bartholomew
automatic maria-master.cfg commit
1012
#                      "kvm-rpm-fedora22-amd64", "kvm-rpm-fedora22-x86",
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
1013
#                      "kvm-rpm-fedora23-amd64", "kvm-rpm-fedora23-x86",
702 by Daniel Bartholomew
add Fedora24
1014
                      "kvm-rpm-fedora24-amd64", "kvm-rpm-fedora24-x86",
811 by Daniel Bartholomew
Add Fedora 25 builder
1015
                      "kvm-rpm-fedora25-amd64", "kvm-rpm-fedora25-x86",
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
1016
#                      "kvm-zyp-opensuse13-amd64", "kvm-zyp-opensuse13-x86",
820 by Daniel Bartholomew
Add opensuse42-amd64 builder
1017
                      "kvm-zyp-opensuse42-amd64"
545 by Daniel Bartholomew
automatic maria-master.cfg commit
1018
                      ]))
1019
1020
650 by Daniel Bartholomew
automatic maria-master.cfg commit
1021
c['schedulers'].append(Triggerable(
654 by Daniel Bartholomew
automatic maria-master.cfg commit
1022
        name="kvm-sched-rpm-test-trees",
650 by Daniel Bartholomew
automatic maria-master.cfg commit
1023
        builderNames=[
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
1024
#                      "kvm-rpm-centos5-amd64",
1025
#                      "kvm-rpm-centos5-x86",
650 by Daniel Bartholomew
automatic maria-master.cfg commit
1026
                      "kvm-rpm-centos6-amd64",
1027
                      "kvm-rpm-centos6-x86",
1028
                      "kvm-rpm-centos7-amd64", 
888 by Daniel Bartholomew
automatic maria-master.cfg commit
1029
                      "kvm-rpm-centos73-amd64", 
890 by Daniel Bartholomew
Add kvm-rpm-centos73-ppc64 and kvm-rpm-centos73-ppc64le builders
1030
                      "kvm-rpm-centos73-ppc64", 
1031
                      "kvm-rpm-centos73-ppc64le", 
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
1032
#                      "kvm-rpm-fedora22-amd64",
1033
#                      "kvm-rpm-fedora22-x86",
1034
#                      "kvm-rpm-fedora23-amd64", 
1035
#                      "kvm-rpm-fedora23-x86",
702 by Daniel Bartholomew
add Fedora24
1036
                      "kvm-rpm-fedora24-amd64", 
1037
                      "kvm-rpm-fedora24-x86",
811 by Daniel Bartholomew
Add Fedora 25 builder
1038
                      "kvm-rpm-fedora25-amd64", 
1039
                      "kvm-rpm-fedora25-x86",
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
1040
#                      "kvm-rpm-rhel5-amd64",
1041
#                      "kvm-rpm-rhel5-x86",
1042
#                      "kvm-zyp-opensuse13-amd64",
1043
#                      "kvm-zyp-opensuse13-x86",
820 by Daniel Bartholomew
Add opensuse42-amd64 builder
1044
                      "kvm-zyp-opensuse42-amd64",
807 by Daniel Bartholomew
automatic maria-master.cfg commit
1045
                      "kvm-zyp-sles11-amd64",
1046
                      "kvm-zyp-sles11-x86",
800 by Daniel Bartholomew
automatic maria-master.cfg commit
1047
#                      "kvm-zyp-sles11sp1-amd64",
650 by Daniel Bartholomew
automatic maria-master.cfg commit
1048
                      "kvm-zyp-sles12-amd64"
1049
                      ]))
1050
1051
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1052
# setup the force scheduler (added for buildbot 0.8.8)
1053
from buildbot.schedulers.forcesched import ForceScheduler
1054
1055
c['schedulers'].append(ForceScheduler(
1056
                        name="force",
1057
                        builderNames=[
1058
                          "bld-dan-debug"
1059
                          ,"bld-dan-release"
660 by Daniel Bartholomew
automatic maria-master.cfg commit
1060
#                          ,"bsd9-64"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1061
                          ,"compile-connectors"
1062
                          ,"gcov"
1063
                          ,"kvm-bintar-centos5-amd64"
1064
                          ,"kvm-bintar-centos5-x86"
1065
                          ,"kvm-bintar-quantal-amd64"
1066
                          ,"kvm-bintar-quantal-x86"
822 by Daniel Bartholomew
automatic maria-master.cfg commit
1067
                          ,"kvm-bintar-trusty-amd64"
1068
                          ,"kvm-bintar-trusty-x86"
853 by Daniel Bartholomew
Added FreeBSD MariaDB build factory, and freebsd11-amd64/i386 builders
1069
                          ,"kvm-freebsd11-amd64"
1070
                          ,"kvm-freebsd11-x86"
647 by Daniel Bartholomew
automatic maria-master.cfg commit
1071
#                          ,"kvm-deb-debian6-amd64"
1072
#                          ,"kvm-deb-debian6-amd64-gal"
1073
#                          ,"kvm-deb-debian6-x86"
1074
#                          ,"kvm-deb-debian6-x86-gal"
489 by Daniel Bartholomew
Deactivate Ubuntu 10.04 LTS "Lucid" builders
1075
#                          ,"kvm-deb-lucid-amd64"
1076
#                          ,"kvm-deb-lucid-amd64-gal"
1077
#                          ,"kvm-deb-lucid-x86"
1078
#                          ,"kvm-deb-lucid-x86-gal"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1079
                          ,"kvm-deb-precise-amd64"
1080
                          ,"kvm-deb-precise-amd64-gal"
1081
                          ,"kvm-deb-precise-x86"
1082
                          ,"kvm-deb-precise-x86-gal"
1083
                          ,"kvm-deb-sid-amd64"
1084
                          ,"kvm-deb-sid-amd64-gal"
1085
                          ,"kvm-deb-sid-x86"
1086
                          ,"kvm-deb-sid-x86-gal"
771 by Daniel Bartholomew
automatic maria-master.cfg commit
1087
                          ,"kvm-deb-stretch-amd64"
1088
                          ,"kvm-deb-stretch-amd64-gal"
1089
                          ,"kvm-deb-stretch-x86"
1090
                          ,"kvm-deb-stretch-x86-gal"
815 by Daniel Bartholomew
Add stretch-ppc64le builder
1091
                          ,"kvm-deb-stretch-ppc64le"
1092
                          ,"kvm-deb-stretch-ppc64le-gal"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1093
                          ,"kvm-deb-trusty-amd64"
1094
                          ,"kvm-deb-trusty-amd64-gal"
1095
                          ,"kvm-deb-trusty-x86"
1096
                          ,"kvm-deb-trusty-x86-gal"
823 by Daniel Bartholomew
add kvm-deb-trusty-ppc64le builder
1097
                          ,"kvm-deb-trusty-ppc64le"
1098
                          ,"kvm-deb-trusty-ppc64le-gal"
584 by Daniel Bartholomew
Disable Ubuntu 14.10 Utopic builders as it has been deprecated
1099
#                          ,"kvm-deb-utopic-amd64"
1100
#                          ,"kvm-deb-utopic-amd64-gal"
1101
#                          ,"kvm-deb-utopic-x86"
1102
#                          ,"kvm-deb-utopic-x86-gal"
647 by Daniel Bartholomew
automatic maria-master.cfg commit
1103
#                          ,"kvm-deb-vivid-amd64"
1104
#                          ,"kvm-deb-vivid-amd64-gal"
1105
#                          ,"kvm-deb-vivid-x86"
1106
#                          ,"kvm-deb-vivid-x86-gal"
710 by Daniel Bartholomew
automatic maria-master.cfg commit
1107
#                          ,"kvm-deb-wily-amd64"
1108
#                          ,"kvm-deb-wily-amd64-gal"
1109
#                          ,"kvm-deb-wily-x86"
1110
#                          ,"kvm-deb-wily-x86-gal"
660 by Daniel Bartholomew
automatic maria-master.cfg commit
1111
                          ,"kvm-deb-xenial-amd64"
1112
                          ,"kvm-deb-xenial-amd64-gal"
1113
                          ,"kvm-deb-xenial-x86"
1114
                          ,"kvm-deb-xenial-x86-gal"
777 by Daniel Bartholomew
automatic maria-master.cfg commit
1115
                          ,"kvm-deb-xenial-ppc64le"
1116
                          ,"kvm-deb-xenial-ppc64le-gal"
754 by Daniel Bartholomew
automatic maria-master.cfg commit
1117
                          ,"kvm-deb-yakkety-amd64"
1118
                          ,"kvm-deb-yakkety-amd64-gal"
1119
                          ,"kvm-deb-yakkety-x86"
1120
                          ,"kvm-deb-yakkety-x86-gal"
908 by Daniel Bartholomew
Add Ubuntu 17.04 "zesty" VMs
1121
                          ,"kvm-deb-zesty-amd64"
1122
                          ,"kvm-deb-zesty-amd64-gal"
1123
                          ,"kvm-deb-zesty-x86"
1124
                          ,"kvm-deb-zesty-x86-gal"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1125
                          ,"kvm-deb-wheezy-amd64"
1126
                          ,"kvm-deb-wheezy-amd64-gal"
1127
                          ,"kvm-deb-wheezy-x86"
1128
                          ,"kvm-deb-wheezy-x86-gal"
468 by Daniel Bartholomew
Activate Debian Jessie and Ubuntu Vivid builders
1129
                          ,"kvm-deb-jessie-amd64"
542 by Daniel Bartholomew
automatic maria-master.cfg commit
1130
                          ,"kvm-deb-jessie-amd64-gal"
468 by Daniel Bartholomew
Activate Debian Jessie and Ubuntu Vivid builders
1131
                          ,"kvm-deb-jessie-x86"
542 by Daniel Bartholomew
automatic maria-master.cfg commit
1132
                          ,"kvm-deb-jessie-x86-gal"
778 by Daniel Bartholomew
automatic maria-master.cfg commit
1133
                          ,"kvm-deb-jessie-ppc64le"
1134
                          ,"kvm-deb-jessie-ppc64le-gal"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1135
                          ,"kvm-dgcov-jaunty-i386"
1136
                          ,"kvm-fulltest"
744 by Daniel Bartholomew
automatic maria-master.cfg commit
1137
                          ,"kvm-fulltest-big"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1138
                          ,"kvm-fulltest2"
744 by Daniel Bartholomew
automatic maria-master.cfg commit
1139
                          ,"kvm-fulltest2-big"
793 by Daniel Bartholomew
automatic maria-master.cfg commit
1140
#                          ,"kvm-qa-linux"
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
1141
#                          ,"kvm-rpm-centos5-amd64"
1142
#                          ,"kvm-rpm-centos5-amd64-gal"
1143
#                          ,"kvm-rpm-centos5-x86"
1144
#                          ,"kvm-rpm-centos5-x86-gal"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1145
                          ,"kvm-rpm-centos6-amd64"
1146
                          ,"kvm-rpm-centos6-amd64-gal"
1147
                          ,"kvm-rpm-centos6-x86"
1148
                          ,"kvm-rpm-centos6-x86-gal"
1149
                          ,"kvm-rpm-centos7-amd64"
1150
                          ,"kvm-rpm-centos7-amd64-gal"
888 by Daniel Bartholomew
automatic maria-master.cfg commit
1151
                          ,"kvm-rpm-centos73-amd64"
1152
                          ,"kvm-rpm-centos73-amd64-gal"
890 by Daniel Bartholomew
Add kvm-rpm-centos73-ppc64 and kvm-rpm-centos73-ppc64le builders
1153
                          ,"kvm-rpm-centos73-ppc64"
1154
                          ,"kvm-rpm-centos73-ppc64-gal"
1155
                          ,"kvm-rpm-centos73-ppc64le"
1156
                          ,"kvm-rpm-centos73-ppc64le-gal"
490 by Daniel Bartholomew
Deactivate Fedora19 rpm builders
1157
#                          ,"kvm-rpm-fedora19-amd64"
1158
#                          ,"kvm-rpm-fedora19-amd64-gal"
1159
#                          ,"kvm-rpm-fedora19-x86"
1160
#                          ,"kvm-rpm-fedora19-x86-gal"
585 by Daniel Bartholomew
disable Fedora20 builds
1161
#                          ,"kvm-rpm-fedora20-amd64"
1162
#                          ,"kvm-rpm-fedora20-amd64-gal"
1163
#                          ,"kvm-rpm-fedora20-x86"
1164
#                          ,"kvm-rpm-fedora20-x86-gal"
617 by Daniel Bartholomew
automatic maria-master.cfg commit
1165
#                          ,"kvm-rpm-fedora21-amd64"
1166
#                          ,"kvm-rpm-fedora21-amd64-gal"
1167
#                          ,"kvm-rpm-fedora21-x86"
1168
#                          ,"kvm-rpm-fedora21-x86-gal"
720 by Daniel Bartholomew
automatic maria-master.cfg commit
1169
#                          ,"kvm-rpm-fedora22-amd64"
1170
#                          ,"kvm-rpm-fedora22-amd64-gal"
1171
#                          ,"kvm-rpm-fedora22-x86"
1172
#                          ,"kvm-rpm-fedora22-x86-gal"
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
1173
#                          ,"kvm-rpm-fedora23-amd64"
1174
#                          ,"kvm-rpm-fedora23-amd64-gal"
1175
#                          ,"kvm-rpm-fedora23-x86"
1176
#                          ,"kvm-rpm-fedora23-x86-gal"
702 by Daniel Bartholomew
add Fedora24
1177
                          ,"kvm-rpm-fedora24-amd64"
1178
                          ,"kvm-rpm-fedora24-amd64-gal"
1179
                          ,"kvm-rpm-fedora24-x86"
1180
                          ,"kvm-rpm-fedora24-x86-gal"
811 by Daniel Bartholomew
Add Fedora 25 builder
1181
                          ,"kvm-rpm-fedora25-amd64"
1182
                          ,"kvm-rpm-fedora25-amd64-gal"
1183
                          ,"kvm-rpm-fedora25-x86"
1184
                          ,"kvm-rpm-fedora25-x86-gal"
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
1185
#                          ,"kvm-rpm-rhel5-amd64"
618 by Daniel Bartholomew
automatic maria-master.cfg commit
1186
#                          ,"kvm-rpm-rhel5-amd64-gal"
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
1187
#                          ,"kvm-rpm-rhel5-x86"
618 by Daniel Bartholomew
automatic maria-master.cfg commit
1188
#                          ,"kvm-rpm-rhel5-x86-gal"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1189
                          ,"kvm-tarbake-jaunty-x86"
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
1190
#                          ,"kvm-zyp-opensuse13-amd64"
1191
#                          ,"kvm-zyp-opensuse13-amd64-gal"
1192
#                          ,"kvm-zyp-opensuse13-x86"
1193
#                          ,"kvm-zyp-opensuse13-x86-gal"
820 by Daniel Bartholomew
Add opensuse42-amd64 builder
1194
                          ,"kvm-zyp-opensuse42-amd64"
1195
                          ,"kvm-zyp-opensuse42-amd64-gal"
800 by Daniel Bartholomew
automatic maria-master.cfg commit
1196
# As of 2017-01-12, we've decided to stop building SLES11 packages
1197
# but let's keep it for the "force" scheduler
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1198
                          ,"kvm-zyp-sles11-amd64"
602 by Daniel Bartholomew
automatic maria-master.cfg commit
1199
                          ,"kvm-zyp-sles11sp1-amd64"
539 by Daniel Bartholomew
automatic maria-master.cfg commit
1200
                          ,"kvm-zyp-sles11-amd64-gal"
632 by Daniel Bartholomew
automatic maria-master.cfg commit
1201
                          ,"kvm-zyp-sles11sp1-amd64-gal"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1202
                          ,"kvm-zyp-sles11-x86"
539 by Daniel Bartholomew
automatic maria-master.cfg commit
1203
                          ,"kvm-zyp-sles11-x86-gal"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1204
                          ,"kvm-zyp-sles12-amd64"
539 by Daniel Bartholomew
automatic maria-master.cfg commit
1205
                          ,"kvm-zyp-sles12-amd64-gal"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1206
                          ,"labrador"
753 by Daniel Bartholomew
automatic maria-master.cfg commit
1207
                          ,"mac-1012-bintar"
633 by Daniel Bartholomew
automatic maria-master.cfg commit
1208
                          ,"freebsd_x64-connector_c"
850 by Daniel Bartholomew
Added FreeBSD 11 builders for Connector/C
1209
                          ,"freebsd11_x64-connector_c"
1210
                          ,"freebsd11_x86-connector_c"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1211
                          ,"linux_x64-connector_c"
1212
                          ,"linux_x86-connector_c"
501 by Daniel Bartholomew
automatic maria-master.cfg commit
1213
                          ,"centos6_i386-connector_c"
782 by Daniel Bartholomew
automatic maria-master.cfg commit
1214
                          ,"linux_x64-connector-odbc"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1215
                          ,"linux_x86-connector-odbc"
902 by Daniel Bartholomew
automatic maria-master.cfg commit
1216
                          ,"centos7_x86-connector-odbc"
570 by Daniel Bartholomew
automatic maria-master.cfg commit
1217
                          ,"centos7_x64-connector-odbc"
572 by Daniel Bartholomew
automatic maria-master.cfg commit
1218
                          ,"jessie_x86-connector-odbc"
1219
                          ,"jessie_x64-connector-odbc"
576 by Daniel Bartholomew
Various updates to bld_linux_connector_oddbc builder
1220
                          ,"generic_x86-connector-odbc"
1221
                          ,"generic_x64-connector-odbc"
782 by Daniel Bartholomew
automatic maria-master.cfg commit
1222
                          ,"linux_x64-connector-odbc-new"
1223
                          ,"linux_x86-connector-odbc-new"
902 by Daniel Bartholomew
automatic maria-master.cfg commit
1224
                          ,"centos7_x86-connector-odbc-new"
782 by Daniel Bartholomew
automatic maria-master.cfg commit
1225
                          ,"centos7_x64-connector-odbc-new"
1226
                          ,"jessie_x86-connector-odbc-new"
1227
                          ,"jessie_x64-connector-odbc-new"
1228
                          ,"generic_x86-connector-odbc-new"
1229
                          ,"generic_x64-connector-odbc-new"
902 by Daniel Bartholomew
automatic maria-master.cfg commit
1230
#                          ,"opensolaris-511-bintar"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1231
                          ,"p8-rhel6-bintar"
1232
                          ,"p8-rhel6-bintar-debug"
1233
                          ,"p8-rhel6-rpm"
625 by Daniel Bartholomew
automatic maria-master.cfg commit
1234
                          ,"p8-rhel6-rpm-gal"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1235
                          ,"p8-rhel71-bintar"
1236
                          ,"p8-rhel71-bintar-debug"
1237
                          ,"p8-rhel71-rpm"
539 by Daniel Bartholomew
automatic maria-master.cfg commit
1238
                          ,"p8-rhel71-rpm-gal"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1239
                          ,"p8-rhel7-bintar"
1240
                          ,"p8-rhel7-bintar-debug"
1241
                          ,"p8-rhel7-rpm"
625 by Daniel Bartholomew
automatic maria-master.cfg commit
1242
                          ,"p8-rhel7-rpm-gal"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1243
                          ,"p8-suse12-rpm"
625 by Daniel Bartholomew
automatic maria-master.cfg commit
1244
                          ,"p8-suse12-rpm-gal"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1245
                          ,"p8-trusty-bintar"
1246
                          ,"p8-trusty-bintar-debug"
1247
                          ,"p8-trusty-deb"
625 by Daniel Bartholomew
automatic maria-master.cfg commit
1248
                          ,"p8-trusty-deb-gal"
679 by Daniel Bartholomew
automatic maria-master.cfg commit
1249
                          ,"p8-xenial-bintar"
1250
                          ,"p8-xenial-bintar-debug"
1251
                          ,"p8-xenial-deb"
1252
                          ,"p8-xenial-deb-gal"
900 by Sergei Golubchik
disable builders and buildslaves that are offline anyway
1253
#                         ,"ibmz-rhel6-bintar"
1254
#                         ,"ibmz-rhel6-rpm"
1255
#                         ,"ibmz-sles11-bintar"
1256
#                          ,"ibmz-sles11-rpm"
550 by Daniel Bartholomew
Remove power01 builder
1257
#                          ,"power01"
900 by Sergei Golubchik
disable builders and buildslaves that are offline anyway
1258
#                          ,"raspberrypi"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1259
                          ,"rqg-perpush-mariaengine"
1260
                          ,"rqg-perpush-optimizer"
1261
                          ,"rqg-perpush-replication"
1262
                          ,"rqg-perpush-replication-checksum"
1263
                          ,"sol10-64"
900 by Sergei Golubchik
disable builders and buildslaves that are offline anyway
1264
#                          ,"sol10-sparc"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1265
                          ,"test-customer-data"
1266
                          ,"test-handlersocket"
665 by Daniel Bartholomew
automatic maria-master.cfg commit
1267
                          ,"win32-debug"
1268
                          ,"winx64-debug"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1269
                          ,"win32-packages"
665 by Daniel Bartholomew
automatic maria-master.cfg commit
1270
                          ,"winx64-packages"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1271
                          ,"win-connector_c"
566 by Daniel Bartholomew
automatic maria-master.cfg commit
1272
                          ,"win-connector_c_3"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1273
                          ,"win_connector_odbc"
799 by Daniel Bartholomew
automatic maria-master.cfg commit
1274
                          ,"win_connector_odbc_new"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1275
                          ,"win-jdbc"
1276
                          ,"win-rqg-se"
1277
                          ,"work-amd64-valgrind"
755 by Daniel Bartholomew
automatic maria-master.cfg commit
1278
                          ,"xenial-amd64-valgrind"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
1279
                          ]))
1280
1281
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
1282
# Prioritize the builders that trigger other builds.
1283
# This avoids getting into a situation where we have free slave resources
1284
# waiting for a triggering build to finish.
1285
# We don't do much else, as we want to avoid starving some builders;
1286
# it is usually more important to prioritize by branch than by builder.
1287
# Note that this relies on Python sort being a stable sort, so default
1288
# order from Buildbot is kept. This is guaranteed from Python 2.2.
1289
235 by Sergei Golubchik
new elenst function to prioritize builders:
1290
from twisted.python import log
1291
1292
def oldprioritizeBuilders(buildmaster, builders):
238 by Sergei Golubchik
kntest
1293
#    log.msg("Starting prioritizeBuilders")
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
1294
    def builder_prio_sort_key(b):
1295
        n= b.name
168.1.7 by Kristian Nielsen
Clean up some old builders and stuff that is nolonger used.
1296
        if n == "kvm-tarbake-jaunty-x86":
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
1297
            return 0
1298
        else:
1299
            return 1
1300
    builders.sort(key=builder_prio_sort_key)
235 by Sergei Golubchik
new elenst function to prioritize builders:
1301
#    log.msg(builders)
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
1302
    return builders
235 by Sergei Golubchik
new elenst function to prioritize builders:
1303
1304
from twisted.internet import defer
1305
@defer.inlineCallbacks
1306
def prioritizeBuilders(buildmaster, builders):
1307
#    log.msg("Starting prioritizeBuilders")
1308
1309
    # For tarbake priority is 0, which will be the highest.
1310
    # For the rest priority is the oldest request time, 
1311
    # the earlier time, the higher priority.
1312
    # Builders which don't have requests will return None
1313
    # which will go last
1314
    def builder_prio_sort_key(b):
1315
        if b.name == "kvm-tarbake-jaunty-x86":
1316
            return 0
1317
        else:
1318
            return b.getOldestRequestTime()
1319
1320
    def xform(bldr):
1321
        d = defer.maybeDeferred(lambda: builder_prio_sort_key(bldr))
1322
	d.addCallback(lambda prio: (prio, bldr))
1323
        return d
1324
1325
    xformed = yield defer.gatherResults(
1326
       [xform(bldr) for bldr in builders])
1327
1328
    # The value is 0 if it is a tarbake, we put it first.
1329
    # None goes last, as it does in the default sorter.
1330
    # Real values are compared
1331
    def tweakedcmp(a, b):
1332
        if a[0] == 0 or b[0] is None:
1333
            return -1
1334
        if b[0] == 0 or a[0] is None:
1335
            return 1
1336
        return cmp(a, b)
1337
    xformed.sort(cmp=tweakedcmp)
1338
1339
    rv = [xf[1] for xf in xformed]
1340
    log.msg("Prioritized builders", rv)
1341
    defer.returnValue(rv)
1342
1343
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
1344
c['prioritizeBuilders'] = prioritizeBuilders
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1345
1346
####### BUILDERS
1347
1348
# the 'builders' list defines the Builders. Each one is configured with a
1349
# dictionary, using the following keys:
1350
#  name (required): the name used to describe this bilder
1351
#  slavename (required): which slave to use, must appear in c['bots']
1352
#  builddir (required): which subdirectory to run the builder in
1353
#  factory (required): a BuildFactory to define how the build is run
1354
#  periodicBuildTime (optional): if set, force a build every N seconds
1355
1356
# buildbot/process/factory.py provides several BuildFactory classes you can
1357
# start with, which implement build processes for common targets (GNU
1358
# autoconf projects, CPAN perl modules, etc). The factory.BuildFactory is the
1359
# base class, and is configured with a series of BuildSteps. When the build
1360
# is run, the appropriate buildslave is told to execute each Step in turn.
1361
148 by Kristian Nielsen
Some Buildbot fixes for 5.5
1362
import re
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1363
from buildbot.process import factory
1364
from buildbot.steps.source import Bzr
251 by Sergei Golubchik
github support #3: checkout from github
1365
from buildbot.steps.source import Git
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
1366
#from buildbot.steps.shell import ShellCommand, Compile, Test, SetProperty
1367
from buildbot.steps.shell import ShellCommand, Compile, Test, SetPropertyFromCommand
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1368
from buildbot.process.mtrlogobserver import MTR, MtrLogObserver, EqConnectionPool
1369
from buildbot.steps.transfer import FileUpload, FileDownload, DirectoryUpload
251 by Sergei Golubchik
github support #3: checkout from github
1370
from buildbot.process.properties import WithProperties, Property
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1371
from buildbot.steps.trigger import Trigger
1372
688 by Daniel Bartholomew
automatic maria-master.cfg commit
1373
gccWarningPattern= "^(.*?):([0-9]+):(?:[0-9]+:)? [Ww]arning: (.*)$"
99 by Kristian Nielsen
RQG changes.
1374
vsWarningPattern= "^(?:\s*>[0-9]+)?\s*([^)]*?)\\(([0-9]+)\\)\s*:\s*warning\s*[-_a-zA-Z0-9]+\s*:\s*(.*)$"
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1375
1376
def getCompileStep(cmd, subdir="", **kwargs):
1377
    return Compile(command=cmd,
1378
                   warningPattern=gccWarningPattern,
1379
                   warningExtractor=Compile.warnExtractFromRegexpGroups,
1380
                   suppressionFile=WithProperties(subdir + "support-files/compiler_warnings.supp"),
1381
                   **kwargs
1382
                   )
1383
1384
# The private config file instantiates an instance of EqConnectionPool("MySQLdb", ...)
1385
# with the correct database account password etc.
1386
connection_pool = configDict["cfg"]["connectionPool"]
1387
1388
def getMTR(**kwargs):
1389
    return MTR(
1390
        dbpool=connection_pool,
824 by Daniel Bartholomew
automatic maria-master.cfg commit
1391
        warningPattern="MTR's internal check of the test case '.*' failed|Failing test\(s\):.*|\*\*\*Warnings generated in error logs.*|Pre-MTR warning:.*",
1392
#        warningPattern="MTR's internal check of the test case '.*' failed",
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1393
        **kwargs)
1394
251 by Sergei Golubchik
github support #3: checkout from github
1395
def on_github(step):
262 by Daniel Bartholomew
Fixes to get ssh git branches working.
1396
  return re.match('(https://|git@)github.com', step.getProperty('repository'))
251 by Sergei Golubchik
github support #3: checkout from github
1397
1398
def not_on_github(step):
1399
  return not on_github(step)
1400
1401
maybe_git_checkout = Git(repourl=Property('repository'),
1402
                         mode="copy",
1403
                         retry=(10,3),
1404
                         doStepIf=on_github,
1405
                         )
1406
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1407
# Have a nice fat checkout timeout.
1408
# Bzr branching can be _really_ slow, especially on modest 'net connections.
251 by Sergei Golubchik
github support #3: checkout from github
1409
maybe_bzr_checkout = Bzr(repourl=WithProperties('lp:%(repository)s'),
1410
                         mode="clobber",
1411
                         forceSharedRepo=True,
1412
                         timeout = 6*3600,
1413
                         doStepIf=not_on_github,
1414
                         )
198 by Daniel Bartholomew
Various additions and modifications to add new trees, fix issues, and so on.
1415
780 by Sergei Golubchik
disable strict aliasing in buildbot valgrind builds
1416
valgf = factory.BuildFactory()
1417
valgf.addStep(maybe_bzr_checkout)
1418
valgf.addStep(maybe_git_checkout)
810 by Daniel Bartholomew
automatic maria-master.cfg commit
1419
valgf.addStep(ShellCommand(
1420
        description=["cleanup"],
1421
        descriptionDone=["cleanup"],
1422
        command=["sh", "-c", WithProperties("""
1423
rm -rf /dev/shm/var_auto_*
824 by Daniel Bartholomew
automatic maria-master.cfg commit
1424
#rm -rf valgrind-3.12.0
1425
#wget http://valgrind.org/downloads/valgrind-3.12.0.tar.bz2
1426
#bunzip2 valgrind-3.12.0.tar.bz2
1427
#tar xvf valgrind-3.12.0.tar
1428
#rm valgrind-3.12.0.tar
1429
#cd valgrind-3.12.0
1430
#make clean
1431
#./configure --prefix=/mnt/data/buildot/valgrind-3.12
1432
#make -j5
1433
#make install
1434
#cd ..
1435
#rm -rf valgrind-3.12.0
1436
PATH=/mnt/data/buildot/valgrind-3.12/bin:$PATH
1437
valgrind --version
810 by Daniel Bartholomew
automatic maria-master.cfg commit
1438
""")]))
1439
754 by Daniel Bartholomew
automatic maria-master.cfg commit
1440
# Removed -DWITH_SSL=bundled from the line below to allow 10.2 to build
810 by Daniel Bartholomew
automatic maria-master.cfg commit
1441
valgf.addStep(getCompileStep(["sh", "-c", "cmake . -DCMAKE_BUILD_TYPE=Debug -DWITH_VALGRIND=1 &&  make -j5"],
780 by Sergei Golubchik
disable strict aliasing in buildbot valgrind builds
1442
                          env={"EXTRA_FLAGS": "-O3 -fno-omit-frame-pointer -Wno-uninitialized -fno-strict-aliasing",
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
1443
                               "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}))
755 by Daniel Bartholomew
automatic maria-master.cfg commit
1444
1445
# To keep execution time reasonable, only run all default suites for the main trees.
1446
# For development trees, let's run only main now (can add something else later)
1447
780 by Sergei Golubchik
disable strict aliasing in buildbot valgrind builds
1448
valgf.addStep(getMTR(
755 by Daniel Bartholomew
automatic maria-master.cfg commit
1449
        doStepIf=isMainTree,
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1450
        test_type="nm",
755 by Daniel Bartholomew
automatic maria-master.cfg commit
1451
        test_info="Valgrind run, no --ps-protocol, default suites",
99 by Kristian Nielsen
RQG changes.
1452
        timeout=9600,  # Longer than mtr timeout, which defaults to 9000 for Valgrind.
143 by Kristian Nielsen
Slave naming.
1453
        env={"MTR_FEEDBACK_PLUGIN": "1"},
824 by Daniel Bartholomew
automatic maria-master.cfg commit
1454
#        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl --skip-test=binlog_encryption\. --verbose-restart --mem --parallel=4 --valgrind --valgrind-option=--show-reachable=yes --valgrind-option=--gen-suppressions=all --force --retry=3  --max-test-fail=100 --max-save-core=0 --max-save-datadir=1"],
1455
        command=["sh", "-c", WithProperties("""
1456
export PATH=/mnt/data/buildot/valgrind-3.12/bin:$PATH
1457
cd mysql-test
859 by Daniel Bartholomew
automatic maria-master.cfg commit
1458
# --skip-test=binlog_encryption\.
1459
perl mysql-test-run.pl --verbose-restart --mem --parallel=4 --valgrind --valgrind-option=--show-reachable=yes --valgrind-option=--gen-suppressions=all --force --max-test-fail=100 --max-save-core=0 --max-save-datadir=1
824 by Daniel Bartholomew
automatic maria-master.cfg commit
1460
""")],
719 by Daniel Bartholomew
automatic maria-master.cfg commit
1461
        parallel=4))
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1462
755 by Daniel Bartholomew
automatic maria-master.cfg commit
1463
250 by Sergei Golubchik
comment out unsed builder configs
1464
#bld_valgrind = {'name': "hardy-amd64-valgrind",
1465
#                'slavename': "valgrind",
1466
#                'builddir': "valgrind",
780 by Sergei Golubchik
disable strict aliasing in buildbot valgrind builds
1467
#                'factory': valgf,
250 by Sergei Golubchik
comment out unsed builder configs
1468
#                "nextBuild": myNextBuild,
1469
#                "category": "main",
1470
#                }
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1471
1472
bld_work_valgrind = {'name': "work-amd64-valgrind",
1473
                'slavename': "work-opensuse-amd64",
1474
                'builddir': "work-opensuse-amd64",
780 by Sergei Golubchik
disable strict aliasing in buildbot valgrind builds
1475
                'factory': valgf,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
1476
                "nextBuild": myNextBuild,
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1477
                "category": "main",
1478
                }
1479
250 by Sergei Golubchik
comment out unsed builder configs
1480
#compile_dbg_64 = getCompileStep(["BUILD/compile-pentium64-debug-max"])
1481
#test_2 = getMTR(
1482
#    test_type="nm",
1483
#    test_info="Normal run, no --ps-protocol",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
1484
#    command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --parallel=2 --force --retry=3  --max-save-core=0 --max-save-datadir=1"])
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1485
1486
# Try if a longer timeout avoids problem in innodb_xtradb_bug317074 test.
250 by Sergei Golubchik
comment out unsed builder configs
1487
#test_longtimeout = getMTR(
1488
#    test_type="nm",
1489
#    test_info="Normal run, no --ps-protocol",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
1490
#    command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3  --testcase-timeout=45 --mysqld=--skip-safemalloc --max-save-core=0 --max-save-datadir=1"],
250 by Sergei Golubchik
comment out unsed builder configs
1491
#    timeout=2700)
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1492
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1493
# f_dbg_2_64 = factory.BuildFactory()
1494
# f_dbg_2_64.addStep(bzr_checkout)
1495
# f_dbg_2_64.addStep(compile_dbg_64)
1496
# f_dbg_2_64.addStep(test_longtimeout)
1497
1498
# f_dbg_2_64_mkshr = factory.BuildFactory()
249 by Sergei Golubchik
combine three different ways to instantiate a Bzr class into one
1499
# f_dbg_2_64_mkshr.addStep(bzr_checkout)
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1500
# f_dbg_2_64_mkshr.addStep(compile_dbg_64)
1501
# f_dbg_2_64_mkshr.addStep(test_2)
1502
1503
# f_rel_1_32 = factory.BuildFactory()
1504
# f_rel_1_32.addStep(bzr_checkout)
1505
# f_rel_1_32.addStep(getCompileStep(["BUILD/compile-pentium-max"],
1506
#                                   env={"AM_MAKEFLAGS": "-j1", "EXTRA_FLAGS": "-DFORCE_INIT_OF_VARS"}))
1507
# # --testcase-timeout as this host is really slow at some tests.
1508
# f_rel_1_32.addStep(getMTR(
1509
#         test_type="nm",
1510
#         test_info="Normal run, no --ps-protocol",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
1511
#         command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3  --testcase-timeout=45 --suite-timeout=600 --mysqld=--skip-safemalloc"],
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1512
#         timeout=2700))
1513
1514
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
1515
# mac mini 2GB, 10.5
1516
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
1517
test_mac = getMTR(
1518
    test_type="nm",
1519
    test_info="Normal run, no --ps-protocol",
1520
    env={"MTR_FEEDBACK_PLUGIN": "1"},
316 by Daniel Bartholomew
automatic maria-master.cfg commit
1521
    command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3  --max-save-core=0 --max-save-datadir=1"],
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
1522
    doStepIf=branch_is_5_5_or_later)
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
1523
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
1524
# f_dbg_macintosh = factory.BuildFactory()
249 by Sergei Golubchik
combine three different ways to instantiate a Bzr class into one
1525
# f_dbg_macintosh.addStep(bzr_checkout)
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
1526
# f_dbg_macintosh.addStep(getCompileStep(["sh", "-c", "cmake . && make"],
1527
#                                        env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
1528
#                                             "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}))
1529
# f_dbg_macintosh.addStep(test_mac)
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
1530
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
1531
# bld_macintosh = {"name": "macintosh",
1532
#                  "slavename": "macintosh",
1533
#                  "builddir": "macintosh",
1534
#                  "factory": f_dbg_macintosh,
1535
#                  "nextBuild": myNextBuild,
1536
#                  "category": "main",
1537
#                  }
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
1538
231 by Kristian Nielsen
Misc. changes to buildbot config.
1539
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
1540
# raspberrypi
1541
1542
test_raspberrypi = getMTR(
1543
    test_type="nm",
1544
    test_info="Normal run, no --ps-protocol",
1545
    env={"MTR_FEEDBACK_PLUGIN": "1"},
316 by Daniel Bartholomew
automatic maria-master.cfg commit
1546
    command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3  --max-save-core=0 --max-save-datadir=1"])
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
1547
1548
f_dbg_raspberrypi = factory.BuildFactory()
251 by Sergei Golubchik
github support #3: checkout from github
1549
f_dbg_raspberrypi.addStep(maybe_bzr_checkout)
1550
f_dbg_raspberrypi.addStep(maybe_git_checkout)
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
1551
f_dbg_raspberrypi.addStep(
1552
     getCompileStep(["sh", "-c", "cmake . -DBUILD_CONFIG=mysql_release -DWITH_SSL=system && make"],
1553
     env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
1554
          "CXX": "g++",
1555
          "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"},
1556
     doStepIf=branch_is_5_5_or_later)
1557
)
1558
f_dbg_raspberrypi.addStep(test_raspberrypi)
1559
1560
bld_raspberrypi = {"name": "raspberrypi",
1561
                 "slavename": "raspberrypi",
1562
                 "builddir": "raspberrypi",
1563
                 "factory": f_dbg_raspberrypi,
1564
                 "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
1565
                 "category": "experimental",
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
1566
                 }
1567
550 by Daniel Bartholomew
Remove power01 builder
1568
## power01 (IBM Power7 Red Hat 6 Buildslave)
1569
#
1570
#test_power01 = getMTR(
1571
#    test_type="nm",
1572
#    test_info="Normal run, no --ps-protocol",
1573
#    env={"MTR_FEEDBACK_PLUGIN": "1"},
1574
#    command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3  --max-save-core=0 --max-save-datadir=1"],
1575
#    doStepIf=branch_is_5_5_or_later)
1576
#
1577
#f_dbg_power01 = factory.BuildFactory()
1578
#f_dbg_power01.addStep(maybe_bzr_checkout)
1579
#f_dbg_power01.addStep(maybe_git_checkout)
1580
#f_dbg_power01.addStep(
1581
#     getCompileStep(["sh", "-c", "export PATH=/opt/at7.0/bin:$PATH && cmake . -DBUILD_CONFIG=mysql_release -DWITH_SSL=system && make"],
1582
#     env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
1583
##          "CXX": "g++ -mminimal-toc",
1584
#          "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"},
1585
#     doStepIf=branch_is_5_5_or_later)
1586
#)
1587
#f_dbg_power01.addStep(test_power01)
1588
#
1589
#bld_power01 = {"name": "power01",
1590
#                 "slavename": "power01",
1591
#                 "builddir": "power01",
1592
#                 "factory": f_dbg_power01,
1593
#                 "nextBuild": myNextBuild,
1594
#                 "category": "experimental",
1595
#                 }
233 by Sergei Golubchik
power01 (IBM Power7 Red Hat 6 Buildslave)
1596
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
1597
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
1598
##
1599
##
1600
250 by Sergei Golubchik
comment out unsed builder configs
1601
#test_1 = getMTR(
1602
#    test_type="nm",
1603
#    test_info="Normal run, no --ps-protocol",
1604
#    env={"MTR_FEEDBACK_PLUGIN": "1"},
316 by Daniel Bartholomew
automatic maria-master.cfg commit
1605
#    command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3  --max-save-core=0 --max-save-datadir=1"])
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1606
250 by Sergei Golubchik
comment out unsed builder configs
1607
#f_dbg_sol_64 = factory.BuildFactory()
1608
#f_dbg_sol_64.addStep(bzr_checkout)
1609
#f_dbg_sol_64.addStep(getCompileStep(["BUILD/compile-solaris-amd64-debug"],
1610
#                                    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
1611
#                                         "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}))
1612
#f_dbg_sol_64.addStep(test_1)
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1613
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1614
# bld_toby_amd64 = {'name': "sol10-amd64-dbg",
1615
#                      'slavename': "toby-sol10",
1616
#                      'builddir': "toby-sol10",
1617
#                      'factory': f_dbg_sol_64,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
1618
#                      "nextBuild": myNextBuild,
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1619
#                      "category": "experimental",
1620
#                      }
1621
1622
# f_dbg_sol_sparc32 = factory.BuildFactory()
249 by Sergei Golubchik
combine three different ways to instantiate a Bzr class into one
1623
# f_dbg_sol_sparc32.addStep(bzr_checkout)
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1624
# f_dbg_sol_sparc32.addStep(getCompileStep(["BUILD/compile-solaris-sparc-forte-32"]))
1625
# f_dbg_sol_sparc32.addStep(test_1)
1626
1627
# bld_toby_sparc32 = {'name': "sol10-sparc32-forte",
1628
#                     'slavename': "toby-sol10-sparc",
1629
#                     'builddir': "toby-sol10-sparc32",
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
1630
#                     "nextBuild": myNextBuild,
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1631
#                     'factory': f_dbg_sol_sparc32,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
1632
#                     "category": "experimental",
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1633
#                     }
1634
1635
# f_dbg_sol_sparc64 = factory.BuildFactory()
249 by Sergei Golubchik
combine three different ways to instantiate a Bzr class into one
1636
# f_dbg_sol_sparc64.addStep(bzr_checkout)
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1637
# f_dbg_sol_sparc64.addStep(getCompileStep(["BUILD/compile-solaris-sparc-forte"]))
1638
# f_dbg_sol_sparc64.addStep(test_1)
1639
1640
# bld_toby_sparc64 = {'name': "sol10-sparc64-forte",
1641
#                     'slavename': "toby-sol10-sparc",
1642
#                     'builddir': "toby-sol10-sparc64",
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
1643
#                     "nextBuild": myNextBuild,
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1644
#                     'factory': f_dbg_sol_sparc64,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
1645
#                     "category": "experimental",
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1646
#                     }
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1647
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
1648
# f_sol_sparc_32 = factory.BuildFactory()
249 by Sergei Golubchik
combine three different ways to instantiate a Bzr class into one
1649
# f_sol_sparc_32.addStep(bzr_checkout)
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
1650
# f_sol_sparc_32.addStep(getCompileStep(["BUILD/compile-solaris-sparc"],
1651
#                                       env={"EXTRA_FLAGS": "-DFORCE_INIT_OF_VARS",
1652
#                                            "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}))
1653
# f_sol_sparc_32.addStep(test_1)
4.1.1 by Kristian Nielsen
New trees and host.
1654
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
1655
# bld_sol_sparc_32 = {"name": "sol-sparc-32",
1656
#                     "slavename": "adutko-ultrasparc3",
1657
#                     "builddir": "adutko-ultrasparc3",
1658
#                     "factory": f_sol_sparc_32,
1659
#                     "nextBuild": myNextBuild,
1660
#                     "category": "main",
1661
#                     }
4.1.1 by Kristian Nielsen
New trees and host.
1662
249 by Sergei Golubchik
combine three different ways to instantiate a Bzr class into one
1663
#f_dbg_alpha = factory.BuildFactory()
1664
#f_dbg_alpha.addStep(bzr_checkout)
1665
#f_dbg_alpha.addStep(getCompileStep(["BUILD/compile-alpha"]))
1666
#f_dbg_alpha.addStep(test_1)
1667
#bld_adutko_alpha = {'name': "adutko-alpha",
1668
#                     'slavename': "adutko-alpha",
1669
#                     'builddir': "adutko-alpha",
1670
#                     'factory': f_dbg_alpha,
1671
#                    "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
1672
#                    "category": "experimental",
249 by Sergei Golubchik
combine three different ways to instantiate a Bzr class into one
1673
#                     }
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1674
250 by Sergei Golubchik
comment out unsed builder configs
1675
#def test_nm(extra=""):
1676
#    return getMTR(
1677
#        test_type="nm",
1678
#        test_info="Normal run, mixed-mode replication, no --ps-protocol",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
1679
#        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3  --max-save-core=0 --max-save-datadir=1 --mysqld=--binlog-format=mixed %s" % extra])
250 by Sergei Golubchik
comment out unsed builder configs
1680
1681
#def test_pr(extra=""):
1682
#    return getMTR(
1683
#        test_type="pr",
1684
#        test_info="prepared statement protocol, row-based replication",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
1685
#        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3  --max-save-core=0 --max-save-datadir=1 --mysqld=--binlog-format=row --ps-protocol %s" % extra])
250 by Sergei Golubchik
comment out unsed builder configs
1686
1687
#def test_pbxt(extra=""):
1688
#    return getMTR(
1689
#        test_type="pbxt",
1690
#        test_info="PBXT suite tests",
1691
#        timeout=1800,
1692
#        doStepIf=branch_is_5_123,
316 by Daniel Bartholomew
automatic maria-master.cfg commit
1693
#        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3  --max-save-core=0 --max-save-datadir=1 --mysqld=--default-storage-engine=pbxt --suite=pbxt %s" % extra])
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1694
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1695
# f_rel_amd64 = factory.BuildFactory()
1696
# f_rel_amd64.addStep(bzr_checkout)
1697
# f_rel_amd64.addStep(getCompileStep(["BUILD/compile-pentium64-max"],
1698
#                                    env={"EXTRA_FLAGS": "-DFORCE_INIT_OF_VARS"}))
1699
# f_rel_amd64.addStep(test_nm())
1700
# f_rel_amd64.addStep(test_pr())
1701
# f_rel_amd64.addStep(test_pbxt())
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1702
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1703
# bld_rel_amd64 = {'name': "jaunty-amd64-rel",
1704
#                  'slavename': "psergey-pylon-amd64",
1705
#                  'builddir': "psergey-pylon-amd64",
1706
#                  'factory': f_rel_amd64,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
1707
#                  "nextBuild": myNextBuild,
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1708
#                  "category": "experimental",
1709
#                  }
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1710
1711
# Full safemalloc is really hard on slow hosts, so use
1712
# --mysqld=--skip-safemalloc here.
250 by Sergei Golubchik
comment out unsed builder configs
1713
#f_dbg_x86 = factory.BuildFactory()
1714
#f_dbg_x86.addStep(bzr_checkout)
1715
#f_dbg_x86.addStep(getCompileStep(["BUILD/compile-pentium-debug-max"],
1716
#                                 env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
1717
#                                      "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}))
1718
#f_dbg_x86.addStep(test_nm("--mysqld=--skip-safemalloc"))
1719
#f_dbg_x86.addStep(test_pr("--mysqld=--skip-safemalloc"))
1720
#f_dbg_x86.addStep(test_pbxt("--mysqld=--skip-safemalloc"))
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1721
250 by Sergei Golubchik
comment out unsed builder configs
1722
#bld_dbg_x86 = {'name': "gentoo-x86-dbg",
1723
#               'slavename': "psergey-foxhole-x86",
1724
#               'builddir': "psergey-foxhole-x86",
1725
#               'factory': f_dbg_x86,
1726
#               "nextBuild": myNextBuild,
1727
#               "category": "experimental",
1728
#                 }
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1729
1730
# bld_dbg2_x86 = {'name': "ubuntu-x86-dbg",
1731
#                'slavename': "psergey-pslp2-x86",
1732
#                'builddir': "psergey-pslp2-x86",
1733
#                'factory': f_dbg_x86,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
1734
#                "nextBuild": myNextBuild,
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1735
#                "category": "experimental",
1736
#                  }
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1737
1738
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1739
# f_sanja_gentoo_amd64= factory.BuildFactory()
1740
# f_sanja_gentoo_amd64.addStep(bzr_checkout)
1741
# f_sanja_gentoo_amd64.addStep(getCompileStep(["BUILD/compile-amd64-valgrind-max"]))
1742
# f_sanja_gentoo_amd64.addStep(getMTR(
1743
#         test_type="pm",
1744
#         test_info="Valgrind, with --ps-protocol",
212 by Kristian Nielsen
Misc. changes to buildbot config.
1745
#         command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --parallel=4 --force --retry=3 --valgrind --ps-protocol --max-test-fail=100"],
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1746
#         timeout = 3600))
1747
# f_sanja_gentoo_amd64.addStep(getMTR(
1748
#         test_type="nm",
1749
#         test_info="Valgrind in pbxt suite",
212 by Kristian Nielsen
Misc. changes to buildbot config.
1750
#         command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --parallel=4 --force --retry=3 --valgrind --suite=pbxt --mysqld=--default-storage-engine=pbxt --max-test-fail=100"],
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1751
#         timeout = 3600))
1752
1753
1754
# bld_sanja_gentoo_amd64 = {'name': "gentoo-amd64-sanja",
1755
#                'slavename': "sanja-gentoo-x86_64",
1756
#                'builddir': "sanja-gentoo-x86_64",
1757
#                'factory': f_sanja_gentoo_amd64,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
1758
#                "nextBuild": myNextBuild,
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
1759
#                 "category": "experimental",
1760
#               }
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1761
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
1762
# The trees for which we save binary packages.
762 by Daniel Bartholomew
automatic maria-master.cfg commit
1763
savedPackageBranches= ["5.1", "5.2", "5.3", "5.5", "10.0", "10.1", "10.2", "10.3",
808 by Daniel Bartholomew
automatic maria-master.cfg commit
1764
                       "connector_c_2.3", "connector_c_3.0",
807 by Daniel Bartholomew
automatic maria-master.cfg commit
1765
                       "connector_c_2.2", "odbc-2.0", "odbc-3.0", "2.1", "master",
664 by Daniel Bartholomew
automatic maria-master.cfg commit
1766
                       "10.0-galera", "5.5-galera", "ok-*", "jessie", "jessie-*",
557 by Daniel Bartholomew
automatic maria-master.cfg commit
1767
                       "10.1e", "10.0e", "5.5e", "10.0e-galera", "5.5e-galera",
718 by Daniel Bartholomew
automatic maria-master.cfg commit
1768
                       "hf-*", "bb-10.1-serg", "bb-10.2-compatibility",
875 by Daniel Bartholomew
automatic maria-master.cfg commit
1769
                       "bb-MDEV-10863", "bb-10.0-MDEV-10863",
860 by Daniel Bartholomew
automatic maria-master.cfg commit
1770
                       "bb-10.0-MDEV-10644", "bb-10.0-monty", "bb-10.2-mariarocks",
884 by Daniel Bartholomew
automatic maria-master.cfg commit
1771
                       "bb-10.1-xtrabackup", "10.3-sequence", "bb-10.3-sequence",
664 by Daniel Bartholomew
automatic maria-master.cfg commit
1772
                       # Nirbhay : Galera branches
1773
                       "mariadb-3.x", "mariadb-3.x-*",]
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
1774
430 by Sergei Golubchik
support for wildcards in savedPackageBranches
1775
def in_savedPackageBranches(step):
1776
    return fnmatch_any(step.getProperty("branch"), savedPackageBranches)
1777
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
1778
def do_step_always(step):
1779
    return True
1780
545 by Daniel Bartholomew
automatic maria-master.cfg commit
1781
def in_systemdBuilders(step):
549 by Daniel Bartholomew
automatic maria-master.cfg commit
1782
    return branch_is_10_1_or_later(step) and not fnmatch_any(step.getProperty("buildername"), myNonSystemdBuilders)
545 by Daniel Bartholomew
automatic maria-master.cfg commit
1783
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
1784
# Add build steps that will archive binary packages (or source tarball).
1785
# Relies on external cron job to periodically remove old files.
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
1786
# The packages are saved under the build number of the tarbake step, so it is
1787
# easy to locate all packages for a given release.
41 by Kristian Nielsen
New tree.
1788
#
1789
# The `sources' argument can contain multiple file names separated by spaces
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
1790
# (it is interpolated directly into a shell `mv' command); and WithProperties
41 by Kristian Nielsen
New tree.
1791
# expansion is performed.
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
1792
def addPackageArchiveStep(f, sources, tarbuildnum, do_step_if=do_step_always):
1793
    f.addStep(ShellCommand(
824 by Daniel Bartholomew
automatic maria-master.cfg commit
1794
        name="archive",
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
1795
        description=["archiving"],
1796
        descriptionDone=["archive"],
430 by Sergei Golubchik
support for wildcards in savedPackageBranches
1797
        doStepIf=(lambda(step): in_savedPackageBranches(step) and do_step_if(step)),
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
1798
        command=["sh", "-c", WithProperties("""
1799
set -ex
1800
rm -Rf "./%(buildername)s"
1801
mkdir -p "%(buildername)s"
1802
""" + 'cp -rp ' + sources + ' "%(buildername)s/"\n' + """
1803
cd "%(buildername)s"
1804
find . -type f \! -name md5sums.txt|xargs md5sum > md5sums.txt
1805
""")]))
1806
    f.addStep(DirectoryUpload(
430 by Sergei Golubchik
support for wildcards in savedPackageBranches
1807
        doStepIf=(lambda(step): in_savedPackageBranches(step) and do_step_if(step)),
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
1808
        slavesrc=WithProperties("%(buildername)s"),
677 by Daniel Bartholomew
automatic maria-master.cfg commit
1809
#       masterdest=WithProperties("/media/backup/archive/pack/%(branch)s/build-" +
1810
        masterdest=WithProperties("/ds413/archive/pack/%(branch)s/build-" +
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
1811
          tarbuildnum + "/%(buildername)s"),
385 by Kristian Nielsen
Increase upload block size in an attempt to get better transfer speed.
1812
        blocksize=524288,
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
1813
        compress="gz"))
1814
270 by Daniel Bartholomew
Added function so power8 builder can upload to hasky. Other changes to the p8
1815
# A similar funtion to addPackageArchiveStep, but for use with uploading builds
1816
# from builders that are not building from tarbake tarballs
1817
# Places builds under /ds413/archive/builds/
1818
def addPackageUploadStep(f, sources, do_step_if=do_step_always):
1819
    f.addStep(ShellCommand(
1820
        description=["archiving"],
1821
        descriptionDone=["archive"],
430 by Sergei Golubchik
support for wildcards in savedPackageBranches
1822
        doStepIf=(lambda(step): in_savedPackageBranches(step) and do_step_if(step)),
270 by Daniel Bartholomew
Added function so power8 builder can upload to hasky. Other changes to the p8
1823
        command=["sh", "-c", WithProperties("""
1824
set -ex
1825
rm -Rf "./%(revision)s"
347 by Daniel Bartholomew
automatic maria-master.cfg commit
1826
mkdir -vp "%(revision)s"
1827
chmod -v 755 "%(revision)s"
1828
""" + 'cp -rvp ' + sources + ' "%(revision)s/"\n' + """
270 by Daniel Bartholomew
Added function so power8 builder can upload to hasky. Other changes to the p8
1829
cd "%(revision)s"
721 by Daniel Bartholomew
automatic maria-master.cfg commit
1830
if [ -e "`which md5sum`" ];then find . -type f \! -name md5sums.txt|xargs md5sum > md5sums.txt;fi
270 by Daniel Bartholomew
Added function so power8 builder can upload to hasky. Other changes to the p8
1831
find . -type f|xargs chmod 644
1832
""")]))
1833
    f.addStep(DirectoryUpload(
430 by Sergei Golubchik
support for wildcards in savedPackageBranches
1834
        doStepIf=(lambda(step): in_savedPackageBranches(step) and do_step_if(step)),
270 by Daniel Bartholomew
Added function so power8 builder can upload to hasky. Other changes to the p8
1835
        slavesrc=WithProperties("%(revision)s"),
1836
        masterdest=WithProperties("/ds413/archive/builds/%(branch)s/%(revision)s/%(buildername)s"),
385 by Kristian Nielsen
Increase upload block size in an attempt to get better transfer speed.
1837
        blocksize=524288,
270 by Daniel Bartholomew
Added function so power8 builder can upload to hasky. Other changes to the p8
1838
        compress="gz"))
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
1839
541 by Daniel Bartholomew
automatic maria-master.cfg commit
1840
def addPackageUploadStepWin(f, sources, do_step_if=do_step_always):
1841
    f.addStep(DirectoryUpload(
1842
        doStepIf=(lambda(step): in_savedPackageBranches(step) and do_step_if(step)),
1843
        slavesrc=WithProperties("%(revision)s"),
1844
        masterdest=WithProperties("/ds413/archive/builds/%(branch)s/%(revision)s/%(buildername)s"),
1845
        blocksize=524288,
1846
        compress="gz"))
1847
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
1848
# scp options to work-around ssh warnings as we ssh into many different
1849
# VMs with different host keys.
1850
kvm_scpopt = "-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
1851
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1852
f_kvm_tarbake_jaunty_x86= factory.BuildFactory()
756 by Daniel Bartholomew
automatic maria-master.cfg commit
1853
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1854
f_kvm_tarbake_jaunty_x86.addStep(Compile(
1855
        description=["making", "dist"],
1856
        descriptionDone=["make", "dist"],
1857
        timeout = 3600,
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
1858
        logfiles={"kernel": "kernel_2223.log"},
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
1859
        env={"TERM": "vt102"},
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
1860
        command=["runvm", "--port=2223", "--user=buildbot", "-cpu=qemu64", "--smp=4", "--logfile=kernel_2223.log", "/kvm/vms/vm-lucid-amd64-tarbake.qcow2",
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1861
        WithProperties("""
1862
set -ex
248 by Sergei Golubchik
github support #2: tarbake
1863
rm -fv distdirname.txt bakery.txt mariadb-*.tar.gz bakery-*.tar.gz
1864
mkdir -p bzr git
1865
cd bzr
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1866
rm -Rf build
148 by Kristian Nielsen
Some Buildbot fixes for 5.5
1867
case "%(branch)s" in
154 by Kristian Nielsen
educe parallelism on overloaded host.
1868
*5\\.[123]*)
148 by Kristian Nielsen
Some Buildbot fixes for 5.5
1869
  bzr co "%(bakebranch:-lp:~maria-captains/ourdelta/ourdelta-montyprogram-fixes)s" build
1870
  cd build
1871
  bakery/preheat.sh
1872
  echo bakery-[0-9]* > bakery.txt
1873
  tar zcf $(cat bakery.txt).tar.gz $(cat bakery.txt)/
1874
  cd $(cat bakery.txt)/
1875
  bzr branch --no-tree "lp:~maria-captains/maria/%(branch)s" local-branch
1876
  bakery/tarbake51.sh %(revision)s local-branch
248 by Sergei Golubchik
github support #2: tarbake
1877
  cd ..
1878
  mv -v bakery.txt bakery-*.tar.gz ~/
148 by Kristian Nielsen
Some Buildbot fixes for 5.5
1879
  ;;
1880
*)
248 by Sergei Golubchik
github support #2: tarbake
1881
  URL="%(repository)s"
1882
  case "$URL" in
262 by Daniel Bartholomew
Fixes to get ssh git branches working.
1883
  https://github.com/* | git@github.com* )
248 by Sergei Golubchik
github support #2: tarbake
1884
    cd ~/git
748 by Daniel Bartholomew
automatic maria-master.cfg commit
1885
    REMOTE=`git remote -v|grep "$URL.*fetch"|head -n 1|cut -f1`
248 by Sergei Golubchik
github support #2: tarbake
1886
    if [ -z "$REMOTE" ]; then
262 by Daniel Bartholomew
Fixes to get ssh git branches working.
1887
      REPO=${URL#*github.com[:/]}
248 by Sergei Golubchik
github support #2: tarbake
1888
      REMOTE=${REPO/\//-}
1889
      git remote add $REMOTE $URL
1890
    fi
1891
    git fetch --prune $REMOTE
1892
    git checkout --force "%(revision)s"
755 by Daniel Bartholomew
automatic maria-master.cfg commit
1893
    echo "Another attempt to solve the problem with the polluted submodule"
756 by Daniel Bartholomew
automatic maria-master.cfg commit
1894
    ls -la libmariadb/ || true
755 by Daniel Bartholomew
automatic maria-master.cfg commit
1895
    git submodule deinit -f .
756 by Daniel Bartholomew
automatic maria-master.cfg commit
1896
    ls -la libmariadb/ || true
755 by Daniel Bartholomew
automatic maria-master.cfg commit
1897
    echo "... and since git on our tarbake machine is so old, it might not have deinit, so removing contents manually"
1898
    rm -rf libmariadb
1899
    mkdir libmariadb
724 by Daniel Bartholomew
automatic maria-master.cfg commit
1900
    git clean -d -f -f -q -x 
248 by Sergei Golubchik
github support #2: tarbake
1901
    git reset --hard
756 by Daniel Bartholomew
automatic maria-master.cfg commit
1902
    ls -la libmariadb/ || true
248 by Sergei Golubchik
github support #2: tarbake
1903
    ;;
1904
  *)
1905
    time bzr co "-r%(revision)s" "lp:$URL" build
1906
    cd build
1907
    ;;
1908
  esac
148 by Kristian Nielsen
Some Buildbot fixes for 5.5
1909
  mkdir mkdist
1910
  cd mkdist
1911
  cmake ..
1912
  make dist
248 by Sergei Golubchik
github support #2: tarbake
1913
  touch ~/bakery.txt ~/bakery-dummy.tar.gz
148 by Kristian Nielsen
Some Buildbot fixes for 5.5
1914
  ;;
1915
esac
248 by Sergei Golubchik
github support #2: tarbake
1916
basename mariadb-*.tar.gz .tar.gz > ~/distdirname.txt
1917
mv -v "$(cat ~/distdirname.txt).tar.gz" ~/
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
1918
"""),
759 by Daniel Bartholomew
automatic maria-master.cfg commit
1919
        "= scp -v -P 2223 buildbot@localhost:distdirname.txt .",
1920
        "= scp -v -P 2223 buildbot@localhost:bakery.txt .",
1921
        "= scp -v -P 2223 'buildbot@localhost:mariadb-*.tar.gz' .",
1922
        "= scp -v -P 2223 'buildbot@localhost:bakery-*.tar.gz' .",
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1923
        ],
1924
        ))
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
1925
f_kvm_tarbake_jaunty_x86.addStep(SetPropertyFromCommand(
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
1926
        property="distdirname",
1927
        command=["cat", "distdirname.txt"],
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1928
        ))
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
1929
f_kvm_tarbake_jaunty_x86.addStep(SetPropertyFromCommand(
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1930
        property="bakery",
1931
        command=["cat", "bakery.txt"],
1932
        ))
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
1933
addPackageArchiveStep(f_kvm_tarbake_jaunty_x86, '"%(distdirname)s.tar.gz"', "%(buildnumber)s")
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
1934
f_kvm_tarbake_jaunty_x86.addStep(FileUpload(slavesrc=WithProperties("%(distdirname)s.tar.gz"),
361 by Daniel Bartholomew
automatic maria-master.cfg commit
1935
                              masterdest=WithProperties("/var/lib/buildbot/OQ-tarballs/%(buildnumber)s:%(distdirname)s.tar.gz"),
385 by Kristian Nielsen
Increase upload block size in an attempt to get better transfer speed.
1936
                              blocksize=524288,
361 by Daniel Bartholomew
automatic maria-master.cfg commit
1937
                              ))
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1938
f_kvm_tarbake_jaunty_x86.addStep(FileUpload(slavesrc=WithProperties("%(bakery)s.tar.gz"),
148 by Kristian Nielsen
Some Buildbot fixes for 5.5
1939
                              masterdest=WithProperties("/var/lib/buildbot/OQ-bakeries/%(buildnumber)s:%(bakery)s.tar.gz"),
385 by Kristian Nielsen
Increase upload block size in an attempt to get better transfer speed.
1940
                              blocksize=524288,
148 by Kristian Nielsen
Some Buildbot fixes for 5.5
1941
                              doStepIf=branch_is_5_123))
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
1942
myTriggerProperties= {
1943
    "tarballpath": WithProperties("/var/lib/buildbot/OQ-tarballs/%(buildnumber)s:%(distdirname)s.tar.gz"),
1944
    "bakerypath": WithProperties("/var/lib/buildbot/OQ-bakeries/%(buildnumber)s:%(bakery)s.tar.gz"),
1945
    "distname": WithProperties("%(distdirname)s.tar.gz"),
1946
    "tarbuildnum": WithProperties("%(buildnumber)s"),
1947
    }
824 by Daniel Bartholomew
automatic maria-master.cfg commit
1948
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1949
f_kvm_tarbake_jaunty_x86.addStep(Trigger(
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
1950
        schedulerNames=["kvm-sched-mainonly"],
1951
        doStepIf=isMainTree,
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
1952
        waitForFinish=False,
1953
        updateSourceStamp=True,
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
1954
        set_properties=myTriggerProperties,
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
1955
        copy_properties=[ "distdirname", "bakery" ]))
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
1956
f_kvm_tarbake_jaunty_x86.addStep(Trigger(
824 by Daniel Bartholomew
automatic maria-master.cfg commit
1957
        schedulerNames=["kvm-sched-enterprise-only"],
1958
        doStepIf=(lambda(step): branch_is_enterprise(step)),
1959
        waitForFinish=False,
1960
        updateSourceStamp=True,
1961
        set_properties=myTriggerProperties,
1962
        copy_properties=[ "distdirname", "bakery" ]))
1963
f_kvm_tarbake_jaunty_x86.addStep(Trigger(
767 by Daniel Bartholomew
automatic maria-master.cfg commit
1964
        schedulerNames=["kvm-sched-mainonly-5.5-10.1"],
810 by Daniel Bartholomew
automatic maria-master.cfg commit
1965
# Changed on 2017-01-22 by Elena 
1966
# If we don't build main 10.2+ on precise,
1967
# there is no point trying it on development trees 
1968
# (and x86_64 doesn't build anyway, and it goes EOL in April 2017)
1969
# Note: isMainTree technically is not necessarily "5.5 or later", but we don't need to worry about 5.1-5.3
1970
#        doStepIf=(lambda(step): branch_is_5_5_or_later(step) and not isMainTree10_2Plus(step)),
1971
	doStepIf=(lambda(step): isMainTree(step) and not branch_is_10_2_or_later(step)),
767 by Daniel Bartholomew
automatic maria-master.cfg commit
1972
        waitForFinish=False,
1973
        updateSourceStamp=True,
1974
        set_properties=myTriggerProperties,
1975
        copy_properties=[ "distdirname", "bakery" ]))
1976
f_kvm_tarbake_jaunty_x86.addStep(Trigger(
703 by Daniel Bartholomew
automatic maria-master.cfg commit
1977
        schedulerNames=["kvm-sched-mainonly-10.1+"],
1978
        doStepIf=isMainTree10_1Plus,
1979
        waitForFinish=False,
1980
        updateSourceStamp=True,
1981
        set_properties=myTriggerProperties,
1982
        copy_properties=[ "distdirname", "bakery" ]))
1983
f_kvm_tarbake_jaunty_x86.addStep(Trigger(
333 by Daniel Bartholomew
automatic maria-master.cfg commit
1984
        schedulerNames=["kvm-sched-mainonly-10.0+"],
1985
        doStepIf=isMainTree10_0Plus,
1986
        waitForFinish=False,
1987
        updateSourceStamp=True,
1988
        set_properties=myTriggerProperties,
1989
        copy_properties=[ "distdirname", "bakery" ]))
810 by Daniel Bartholomew
automatic maria-master.cfg commit
1990
# Added by Elena on 2017-01-22, see comments in scheduler definition
1991
f_kvm_tarbake_jaunty_x86.addStep(Trigger(
1992
        schedulerNames=["kvm-sched-devtrees-10.0+"],
1993
        doStepIf=(lambda(step): branch_is_10_x(step) and not isMainTree(step)),
1994
        waitForFinish=False,
1995
        updateSourceStamp=True,
1996
        set_properties=myTriggerProperties,
1997
        copy_properties=[ "distdirname", "bakery" ]))
1998
# Added by Elena on 2017-01-22, see comments in scheduler definition
1999
f_kvm_tarbake_jaunty_x86.addStep(Trigger(
2000
        schedulerNames=["kvm-sched-devtrees-5.5"],
2001
        doStepIf=(lambda(step): branch_is_5_5_or_later(step) and not branch_is_10_x(step) and not isMainTree(step)),
2002
        waitForFinish=False,
2003
        updateSourceStamp=True,
2004
        set_properties=myTriggerProperties,
2005
        copy_properties=[ "distdirname", "bakery" ]))
333 by Daniel Bartholomew
automatic maria-master.cfg commit
2006
f_kvm_tarbake_jaunty_x86.addStep(Trigger(
236 by Sergei Golubchik
kvm-fulltest2 - moved from 'alltrees' to a separate scheduler for 5.5+,
2007
        schedulerNames=["kvm-sched-fulltest2"],
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2008
        doStepIf=(lambda(step): branch_is_5_5_or_later(step) and not debpkg_branch(step) and not rpm_test_branch(step)),
236 by Sergei Golubchik
kvm-fulltest2 - moved from 'alltrees' to a separate scheduler for 5.5+,
2009
        waitForFinish=False,
2010
        updateSourceStamp=True,
2011
        set_properties=myTriggerProperties,
2012
        copy_properties=[ "distdirname", "bakery" ]))
2013
f_kvm_tarbake_jaunty_x86.addStep(Trigger(
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
2014
        schedulerNames=["kvm-sched-alltrees"],
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2015
        doStepIf=(lambda(step): not debpkg_branch(step) and not rpm_test_branch(step)),
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
2016
        waitForFinish=False,
2017
        updateSourceStamp=True,
2018
        set_properties=myTriggerProperties,
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
2019
        copy_properties=[ "distdirname", "bakery" ]))
517 by Sergei Golubchik
new debpkg scheduler
2020
f_kvm_tarbake_jaunty_x86.addStep(Trigger(
2021
        schedulerNames=["kvm-sched-debpkg-trees"],
2022
        doStepIf=debpkg_branch,
2023
        waitForFinish=False,
2024
        updateSourceStamp=True,
518 by Sergei Golubchik
fix for debpkg builders
2025
        set_properties=myTriggerProperties,
2026
        copy_properties=[ "distdirname", "bakery" ]))
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
2027
545 by Daniel Bartholomew
automatic maria-master.cfg commit
2028
f_kvm_tarbake_jaunty_x86.addStep(Trigger(
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2029
        schedulerNames=["kvm-sched-rpm-test-trees"],
2030
        doStepIf=rpm_test_branch,
545 by Daniel Bartholomew
automatic maria-master.cfg commit
2031
        waitForFinish=False,
2032
        updateSourceStamp=True,
2033
        set_properties=myTriggerProperties,
2034
        copy_properties=[ "distdirname", "bakery" ]))
2035
793 by Daniel Bartholomew
automatic maria-master.cfg commit
2036
# kvm-sched-qa-trees and isTargetQA are defined in qa_schedulers.py
2037
f_kvm_tarbake_jaunty_x86.addStep(Trigger(
2038
        schedulerNames=["kvm-sched-qa-trees"],
2039
        doStepIf=isTargetQA,
2040
        waitForFinish=False,
2041
        updateSourceStamp=True,
2042
        set_properties=myTriggerProperties,
2043
        copy_properties=[ "distdirname", "bakery" ]))
2044
650 by Daniel Bartholomew
automatic maria-master.cfg commit
2045
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
2046
bld_kvm_tarbake_jaunty_x86 = {"name": "kvm-tarbake-jaunty-x86",
332 by Daniel Bartholomew
automatic maria-master.cfg commit
2047
                              "slavenames": kvm11_slaves,
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
2048
                              "builddir": "kvm-tarbake-jaunty-x86",
2049
                              "factory": f_kvm_tarbake_jaunty_x86,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
2050
                              "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
2051
                              "category": "main",
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
2052
                             }
2053
362 by Daniel Bartholomew
automatic maria-master.cfg commit
2054
def DownloadSourceTarball():
2055
    return ShellCommand(
824 by Daniel Bartholomew
automatic maria-master.cfg commit
2056
             name="rsync_src",    
362 by Daniel Bartholomew
automatic maria-master.cfg commit
2057
             description=["rsyncing source tarball"],
2058
             descriptionDone=["rsynced source tarball"],
2059
             haltOnFailure=True,
2060
             command=["sh", "-xc", WithProperties("""
2061
  d=/tmp/buildcache
2062
  f="%(tarbuildnum)s:%(distname)s"
2063
  mkdir -p $d
2064
  find $d -type f -mtime +2 | xargs -r rm -v
2065
  flock "$d/$f" rsync -v -c --stats "hasky.askmonty.org::OQ-tarballs/$f" "$d/$f"
2066
""")])
2067
2068
def ScpSourceIntoVM(port):
2069
  return WithProperties("= scp -P " + port + " " + kvm_scpopt + 
2070
                        " /tmp/buildcache/%(tarbuildnum)s:%(distname)s buildbot@localhost:buildbot/%(distname)s")
2071
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2072
# kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch come from the caller as is
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2073
# action: install | upgrade | update
2074
# upgrade_from: text description of the "old" installation. 
2075
#               For MariaDB, Galera, Percona, and (Oracle) MySQL it should take the form "MySQL X.Y".
2076
#               For packages provided by the distro it can be anything, as long as it understandable 
2077
#               ( it will show in the test description)
2078
# old_packages: space-separated list of packages from the "old" version to be explicitly installed
2079
# new_packages: space-separated list of packages under test to be installed or upgraded
2080
755 by Daniel Bartholomew
automatic maria-master.cfg commit
2081
2082
# The builder requires DownloadSourceTarball, so we have to put it here
2083
# rather than with another valgrind bulder
2084
# Attention! xenial valgrind builder uses port=2331
2085
execfile("/etc/buildbot/builders/bld_xenial_valgrind.py");
2086
2087
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2088
from buildbot.status.builder import SKIPPED
2089
2090
def getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2091
                    action, upgrade_from, old_packages, new_packages,
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2092
                    extra_opts="", force_upgrade=0, manual_restart=0, **kwargs):
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2093
2094
    test_name = action
2095
2096
    if action == "install":
2097
        test_name = test_name + " over " + upgrade_from
2098
    else:
2099
        test_name = test_name + " from " + upgrade_from
2100
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2101
    if extra_opts != "":
2102
        test_name = test_name + " with " + extra_opts
2103
2104
    # On sles11sp1 createrepo is not available, cannot run the test
2105
    # on sles12, some problem with disk while installing createrepo, cannot run the test
2106
    if distro == "sles11sp1" or distro == "sles12":
2107
        return Test(
2108
            description=["testing", test_name],
2109
            descriptionDone=["test", test_name],
2110
            logfiles={"kernel": "kernel_"+port+".log"},
2111
            env={"TERM": "vt102"},
2112
            command=["echo", "\"Test won't be run\""],
2113
            doStepIf=False,
2114
            hideStepIf=True
2115
        )
2116
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2117
    pm_extra_options_old = " -y"
2118
    pm_extra_options_new = extra_opts
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2119
    pm = "yum"
2120
    pm_clean = "clean all"
2121
    pm_nogpg = "--nogpgcheck"
2122
    pm_repo_location = "yum.repos.d"
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2123
    # repo is the contents of the repo file we'll create to install the "old" version
2124
    # (unless it's installed from a default distribution repo)
2125
    repo = ""
2126
    # old_mysql_ver_num is an numeric representation of the version, e.g. 57 etc., 
2127
    # to make sure the comparison to higher versions works OK.
2128
    # It will be used in the shell part for MySQL and Percona password tricks
2129
    old_mysql_ver_num = "0"
2130
    # If we use some workarounds during the test, we'll print warnings about it
2131
    print_warnings = ""
2132
2133
    if action == "install" or action == "upgrade" or action == "update":
2134
        pm_extra_options_new = pm_extra_options_new + " -y"
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2135
2136
    if dist_name == "fedora":
2137
        mysql_repo_subdir = "fc"
2138
        if int(dist_num) >= 22:
2139
            pm = "dnf"
2140
    elif dist_name == "rhel" or dist_name == "centos":
2141
        mysql_repo_subdir = "el"
2142
    elif dist_name == "sles" or dist_name == "opensuse":
2143
        mysql_repo_subdir = "sles"
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2144
        pm = "zypper --non-interactive"
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2145
        pm_clean = "clean --all"
2146
        pm_nogpg = "--no-gpg-checks"
2147
        pm_repo_location = "zypp/repos.d"
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2148
        # Workaround for MDEV-9796 (MariaDB not being installable on SUSE)
2149
        # When it's fixed, this setting should happen under condition
2150
        # if new_packages == "":
2151
        if new_packages == "" or action == "install":
2152
            pm_extra_options_new = pm_extra_options_new + " --from local"
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2153
            print_warnings = print_warnings + "\necho \"warning: --from <repo> workaround for MDEV-9796 was used while installing new packages\n\""
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2154
    else:
2155
        # Nothing good will come out of it
2156
        mysql_repo_subdir = ""
2157
2158
    m = re.search("(MySQL|Percona|MariaDB) ([0-9]+)\.([0-9]+)",upgrade_from)
2159
    if m:
2160
        old_name = m.group(1)
2161
        old_ver_major = m.group(2)
2162
        old_ver_minor = m.group(3)
2163
        old_ver = old_ver_major + "." + old_ver_minor
2164
2165
        if old_name == "MariaDB" or old_name == "Galera":
2166
            repo = "[mariadb]\n" \
2167
                "name=MariaDB\n" \
2168
                "baseurl=http://yum.mariadb.org/" + old_ver + "/" + dist_arch + "\n"\
2169
                "gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB\n" \
2170
                "enabled=1\n" \
2171
                "gpgcheck=0"
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2172
            if dist_name == "sles" or dist_name == "opensuse":
2173
                # Workaround for MDEV-9796 (MariaDB not being installable on SUSE)
2174
                pm_extra_options_old = pm_extra_options_old + " --from mariadb"
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2175
                print_warnings = print_warnings + "\necho \"warning: --from <repo> workaround for MDEV-9796 was used while installing old packages\n\""
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2176
2177
        elif old_name == "MySQL":
2178
            repo = "[mysql-community]\n" \
2179
                "name=MySQL Community Server\n" \
2180
                "baseurl=http://repo.mysql.com/yum/mysql-" + old_ver + "-community/" + mysql_repo_subdir + "/" + dist_num + "/\$basearch/\n" \
2181
                "enabled=1\n" \
2182
                "gpgcheck=0"
2183
            old_mysql_ver_num = old_ver_major + old_ver_minor
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2184
            if dist_name == "sles" and int(dist_num) == 11:
2185
                # Workaround: some problem with wildcards on SLES11, maybe this will help
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2186
                # it's not a workaround for MariaDB bugs, so we don't print warnings here
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2187
                pm_extra_options_old = pm_extra_options_old + " --from mysql-community"
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2188
2189
        elif old_name == "Percona":
2190
            repo = "[percona-release]\n" \
2191
                "name=Percona repository\n" \
2192
                "baseurl=http://repo.percona.com/release/" + dist_num + "/RPMS/\$basearch/\n" \
2193
                "enabled=1\n" \
2194
                "gpgcheck=0"
2195
            old_mysql_ver_num = old_ver_major + old_ver_minor
2196
2197
        else:
2198
            repo = ""
2199
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2200
    if extra_opts:
2201
        print_warnings = print_warnings + "\necho \"warning: extra options were used: " + extra_opts + "\n\""
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2202
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2203
    if force_upgrade:
2204
        force_upgrade = " env FORCE_UPGRADE=" + str(force_upgrade) + " "
2205
        print_warnings = print_warnings + "\necho \"warning: FORCE_UPGRADE was used\n\""
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2206
    else:
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2207
        force_upgrade = ""
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2208
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2209
    # Workaround for MDEV-9797 (server does not get restarted after upgrade from Galera) and other similar issues,
2210
    # whenever the caller asks for explicit restart
2211
    restart_command = "\necho \"No server restart was requested, it is supposed to be restarted automatically\"\n"
2212
    if manual_restart:
2213
        print_warnings = print_warnings + "\necho \"warning: manual restart was requested, it is a workaround for some bug\"\n"
2214
        restart_command =  "\nsudo /etc/init.d/mysql restart\n"
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2215
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2216
    return Test(
2217
        description=["testing", test_name],
2218
        descriptionDone=["test", test_name],
2219
        logfiles={"kernel": "kernel_"+port+".log"},
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2220
        hideStepIf=(lambda results, s: results==SKIPPED),
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2221
        env={"TERM": "vt102"},
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2222
        command=["runvm", "--base-image=/kvm/vms/"+kvm_image+"-install.qcow2"] + args + ["vm-tmp-"+port+".qcow2",
2223
        "rm -Rf buildbot && mkdir buildbot",
2224
        "= scp -r -P "+port+" "+kvm_scpopt+" rpms buildbot@localhost:buildbot/",
2225
        WithProperties("""
2226
set -ex
2227
cd buildbot
2228
2229
echo "See if any MySQL, MariaDB, Galera or Percona has already been installed"
2230
rpm -qa | { grep -iE 'maria|mysql|galera|percona' || true; }
2231
2232
echo "Remove all unwanted repos in case there are any on the VM image"
2233
ls /etc/yum.repos.d/* | grep -iE '(maria|galera|mysql|percona)' | xargs -r sudo rm -f
2234
2235
echo "Create repo from which the old version will be installed (or empty repo for upgrades from distro)"
2236
sudo sh -c "echo '""" + repo + """' > /etc/""" + pm_repo_location + """/from.repo"
2237
sudo cat /etc/""" + pm_repo_location + """/from.repo
2238
sudo """ + pm + """ """ + pm_clean + """
2239
2240
echo "Install the old version"
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2241
sudo """ + pm + """ install """ + pm_extra_options_old + """ """ + old_packages + """ 
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2242
sudo rm -f /etc/""" + pm_repo_location + """/from.repo
2243
2244
echo "Check that we got some packages after installation of the old version"
2245
rpm -qa | grep -iE 'maria|mysql|galera|percona'
2246
2247
echo "See which init scripts or systemd services were installed with the old version"
2248
ls -l /etc/systemd/system/* /run/systemd/system/* /usr/lib/systemd/system/* /etc/init.d/* | grep -iE 'maria|mysql|galera|percona' || true
2249
2250
echo "Try to use systemd; if no service available, try to use init script"
2251
start_cmd=`ls /usr/lib/systemd/system/ | grep "service$" | grep -iE 'maria|mysql|galera|percona'` || true
2252
if [ -n "$start_cmd" ]; then
2253
    # In case there were more than one
2254
    start_cmd=`echo $start_cmd | awk '{ print $1 }'`
2255
    start_cmd="systemctl start $start_cmd"
2256
else 
2257
    start_cmd=`ls /etc/init.d/ | grep -iE 'maria|mysql|galera|percona'` || true
2258
    if [ -n "$start_cmd" ]; then
2259
        start_cmd=`echo $start_cmd | awk '{print $1}'`
2260
        start_cmd="/etc/init.d/$start_cmd start"
2261
    else
2262
        echo "ERROR: could not find a start script for the previous version, exiting"
2263
        exit 1
2264
    fi
2265
fi
2266
2267
sudo $start_cmd
2268
2269
echo "For MySQL|Percona 5.7 and higher, we need to do some extra steps to deal with passwords"
2270
2271
if [ """ + old_mysql_ver_num + """ -ge 57 ]; then 
2272
    pass=`sudo grep 'temporary password' /var/log/mysqld.log | sed -e "s/.* \\([^ ]*\\)$/\\1/"`
2273
    if [ -n "$pass" ]; then
2274
        pass_options_old="--connect-expired-password -p$pass"
2275
    fi
2276
    mysql -uroot $pass_options_old -e "alter user root@localhost identified by 'My-test1'"
2277
    pass_options_old="--connect-expired-password -pMy-test1"
2278
    pass_options_new="-pMy-test1"
2279
fi
2280
2281
mysql -uroot $pass_options_old -e "select @@version, @@version_comment"
2282
2283
echo "Install createrepo to make a proper local repository out of our RPMs"
2284
# Hack: patterns-openSUSE-minimal_base-conflicts does not allow createrepo to be installed on openSUSE 13
2285
packages_to_remove=`rpm -qa | grep "patterns-openSUSE-minimal_base-conflicts" | xargs`
2286
if [ -n "$packages_to_remove" ]
2287
then
2288
    sudo """ + pm + """ remove -y $packages_to_remove
2289
fi
2290
sudo """ + pm + """ install -y createrepo
2291
sudo rm -f /etc/""" + pm_repo_location + """/createrepo.repo
2292
2293
echo "Create the local repository"
2294
sudo createrepo .
2295
2296
echo "Add local repo"
2297
2298
sudo sh -c "echo '[local]
2299
name=MariaDB New Release
2300
baseurl=file:///home/buildbot/buildbot
2301
enabled=1
2302
gpgcheck=0' > /etc/""" + pm_repo_location + """/local.repo"
2303
sudo cat /etc/""" + pm_repo_location + """/local.repo
2304
2305
# Find out which version we are installing by parsing an RPM name. It should be more reliable
2306
# than using a branch name from the branch property
2307
2308
full_ver=`ls rpms/MariaDB-*-common.rpm | sed -e "s/rpms\/MariaDB-\\([0-9]*\.[0-9]*\.[0-9]*\\)-.*/\\1/"`
2309
major_ver=`echo $full_ver | sed -e "s/\.[0-9]*$//"`
2310
major_ver_num=`echo $major_ver | sed -e "s/\.//"`
2311
echo "New version is: Full version = $full_ver, major version = $major_ver, numeric representation = $major_ver_num"
2312
2313
if [ $major_ver_num -ge 101 ]; then
2314
    echo "For 10.1 and higher we need the galera library, add the galera repo"
2315
    sudo sh -c "echo '[galera]
2316
name=galera
2317
baseurl=http://yum.mariadb.org/galera/repo/rpm/""" + dist_arch + """
2318
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
2319
gpgcheck=1' > /etc/""" + pm_repo_location + """/galera.repo"
2320
    sudo cat /etc/""" + pm_repo_location + """/galera.repo
2321
fi
2322
2323
echo "Install the new version $full_ver"
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2324
sudo """ + force_upgrade + pm + """ """ + pm_nogpg + """ """ + action + """ """ + pm_extra_options_new + """ """ + new_packages + """
2325
2326
# We don't want next commands to fail because we want to see the full picture.
2327
# We'll make it fail later if it does not on its own.
2328
2329
echo "See which packages we have after upgrade"
2330
rpm -qa | grep -iE 'maria|mysql|galera|percona' || true
2331
2332
echo "See which init scripts or systemd services were installed with the new version"
2333
ls -l /etc/systemd/system/* /run/systemd/system/* /usr/lib/systemd/system/* /etc/init.d/* | grep -iE 'maria|mysql|galera|percona' || true
2334
 
2335
echo "See whether mysqld is running"
2336
ps -ef | grep mysqld | grep -v grep || true
2337
2338
echo "See which version of mysqld is running"
2339
mysql -uroot $pass_options_new -e "select @@version, @@version_comment" || true
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2340
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2341
# There are some workarounds which have to restart the server in order to proceed 
2342
""" + restart_command + """
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2343
2344
# Now if we reached this point, actual checks
2345
2346
echo "Check that at least some of packages are new"
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2347
rpm -qa | grep MariaDB | grep $full_ver
2348
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2349
echo "Check that mysqld is running now"
2350
ps -ef | grep mysqld | grep -v grep 
2351
2352
echo "Check that it can be connected to and see the version"
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2353
mysql -uroot $pass_options_new -e "select @@version, @@version_comment"
2354
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2355
echo "Check that the current version is running now"
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2356
echo "(which means that not only has the server been upgraded, but it has also been restarted)"
2357
mysql -uroot $pass_options_new --skip-column-names -e "select @@version" | grep $full_ver
2358
2359
echo "RPMs do not run mysql_upgrade automatically, so run it manually"
2360
sudo mysql_upgrade -uroot $pass_options_new | tee /tmp/upgrade.output
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2361
# If it didn't go well, it should have failed above, but just in case, check for OK:
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2362
grep "^OK" /tmp/upgrade.output
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2363
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2364
# Print warnings that we collected during test preparation
2365
""" + print_warnings + """
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2366
2367
""")],
2368
        **kwargs)
2369
362 by Daniel Bartholomew
automatic maria-master.cfg commit
2370
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
2371
def getRpmBuilder(name, kvm_image, port, cpu, arch, slaves=kvm_slaves, ramdisk=True, catg="main"):
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
2372
    distro = name.split('-')[2]
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2373
    m = re.search("^([A-Za-z]+)([0-9]*)",distro)
2374
    if m:
2375
        dist_name = m.group(1)
2376
        dist_num = m.group(2)
2377
811 by Daniel Bartholomew
Add Fedora 25 builder
2378
    if distro in ['fedora21', 'fedora22', 'fedora23', 'fedora24', 'fedora25']:
391 by Sergei Golubchik
on fedora21 compile with system dynamic jemalloc
2379
        jemalloc_option=' -DWITH_JEMALLOC=system'
2380
    else:
2381
        jemalloc_option=''
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
2382
    args = ["--port="+port, "--user=buildbot", "--smp=4", "--cpu="+cpu, "--startup-timeout=600", "--logfile=kernel_"+port+".log"]
2383
    if ramdisk:
2384
        args = args + ["--work-image=/dev/shm/vm-tmp-"+port+".qcow2"]
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
2385
    rpm_fact = factory.BuildFactory()
168.1.4 by Kristian Nielsen
Move RPM and bintar builders to the "cloud" approach, automatically rsync'ing
2386
    # Delete ../build/* rather than simply * just to be a little safer if we
2387
    # somehow end up running in wrong directory!
2388
    rpm_fact.addStep(ShellCommand(
2389
        description=["cleaning", "build", "dir"],
2390
        descriptionDone=["clean", "build", "dir"],
2391
        command=["sh", "-c", "rm -Rf ../build/*"]))
2392
    rpm_fact.addStep(ShellCommand(
2393
        description=["rsyncing", "VMs"],
2394
        descriptionDone=["rsync", "VMs"],
302 by Daniel Bartholomew
Change kvm rsync host from terrier.askmonty.org to bb01.mariadb.net
2395
        doStepIf=(lambda(step): step.getProperty("slavename") != "bb01"),
168.1.4 by Kristian Nielsen
Move RPM and bintar builders to the "cloud" approach, automatically rsync'ing
2396
        haltOnFailure=True,
471 by Daniel Bartholomew
automatic maria-master.cfg commit
2397
        command=["rsync", "-a", "-v", "-L",
302 by Daniel Bartholomew
Change kvm rsync host from terrier.askmonty.org to bb01.mariadb.net
2398
                 "bb01.mariadb.net::kvm/vms/"+kvm_image+"-build.qcow2",
2399
                 "bb01.mariadb.net::kvm/vms/"+kvm_image+"-install.qcow2",
168.1.4 by Kristian Nielsen
Move RPM and bintar builders to the "cloud" approach, automatically rsync'ing
2400
                 "/kvm/vms/"]))
362 by Daniel Bartholomew
automatic maria-master.cfg commit
2401
    rpm_fact.addStep(DownloadSourceTarball())
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
2402
    rpm_fact.addStep(FileDownload(
2403
        mastersrc=WithProperties("%(bakerypath)s"),
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
2404
        slavedest=WithProperties("%(bakery)s.tar.gz"),
385 by Kristian Nielsen
Increase upload block size in an attempt to get better transfer speed.
2405
        blocksize=524288,
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
2406
        doStepIf=branch_is_5_123))
168.1.4 by Kristian Nielsen
Move RPM and bintar builders to the "cloud" approach, automatically rsync'ing
2407
    rpm_fact.addStep(FileDownload(
677 by Daniel Bartholomew
automatic maria-master.cfg commit
2408
        mastersrc=WithProperties("/ds413/rpm/mariadb-shared-5.3-"+arch+".rpm"),
732 by Sergei Golubchik
for 10.2: upload MariaDB-shared-10.1 rpm into a VM
2409
        slavedest=WithProperties("MariaDB-shared-5.3."+name+".rpm"),
385 by Kristian Nielsen
Increase upload block size in an attempt to get better transfer speed.
2410
        blocksize=524288,
168.1.4 by Kristian Nielsen
Move RPM and bintar builders to the "cloud" approach, automatically rsync'ing
2411
        doStepIf=branch_is_5_5_or_later))
732 by Sergei Golubchik
for 10.2: upload MariaDB-shared-10.1 rpm into a VM
2412
    rpm_fact.addStep(FileDownload(
2413
        mastersrc=WithProperties("/ds413/rpm/mariadb-shared-10.1-"+name+".rpm"),
2414
        slavedest=WithProperties("MariaDB-shared-10.1."+name+".rpm"),
2415
        blocksize=524288,
2416
        doStepIf=branch_is_10_2_or_later))
192 by Daniel Bartholomew
misc updates to maria-master.cfg to add a new tree and tweak some rpm compile steps
2417
    rpm_fact.addStep(ShellCommand(
2418
        description=["getting", ".supp"],
2419
        descriptionDone=["get", ".supp"],
2420
        command=["sh", "-c", WithProperties("""
2421
rm -f compiler_warnings.supp
688 by Daniel Bartholomew
automatic maria-master.cfg commit
2422
#tar zxf "%(distname)s" --strip 2 "$(basename %(distname)s .tar.gz)/support-files/compiler_warnings.supp"
2423
tar zxf "/tmp/buildcache/%(tarbuildnum)s:%(distname)s" --strip 2 "$(basename %(distname)s .tar.gz)/support-files/compiler_warnings.supp"
192 by Daniel Bartholomew
misc updates to maria-master.cfg to add a new tree and tweak some rpm compile steps
2424
exit 0  # best-effort, not fatal if no suppression file
2425
""")]))
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
2426
    rpm_fact.addStep(Compile(
2427
        description=["making", "rpms"],
2428
        descriptionDone=["make", "rpms"],
2429
        timeout=7200,
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
2430
        logfiles={"kernel": "kernel_"+port+".log"},
192 by Daniel Bartholomew
misc updates to maria-master.cfg to add a new tree and tweak some rpm compile steps
2431
        warningPattern=gccWarningPattern,
2432
        warningExtractor=Compile.warnExtractFromRegexpGroups,
2433
        suppressionFile=WithProperties("compiler_warnings.supp"),
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
2434
        env={"TERM": "vt102"},
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
2435
        command=["runvm", "--base-image=/kvm/vms/"+kvm_image+"-build.qcow2"] + args + ["vm-tmp-"+port+".qcow2",
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
2436
        "rm -Rf buildbot && mkdir buildbot",
362 by Daniel Bartholomew
automatic maria-master.cfg commit
2437
        ScpSourceIntoVM(port),
732 by Sergei Golubchik
for 10.2: upload MariaDB-shared-10.1 rpm into a VM
2438
        WithProperties("= case '%(branch)s' in *5\\.[123]*) from=%(bakery)s.tar.gz ;; *) from=MariaDB-shared-*."+name+".rpm ;; esac;  scp -P "+port+" "+kvm_scpopt+" $from buildbot@localhost:buildbot/ "),
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
2439
        WithProperties("""
2440
set -ex
2441
cd buildbot
2442
mkdir build
2443
cd build
769 by Daniel Bartholomew
automatic maria-master.cfg commit
2444
# - - - - - - - - - -
2445
# MDEV-11258
2446
case "%(branch)s" in
2447
"10.1e"|"10.2e")
2448
  if [ -d $HOME/local/bin ] ; then
2449
    export PATH="$HOME/local/bin:$PATH"
2450
  fi
2451
  ;;
2452
esac
2453
# - - - - - - - - - -
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
2454
mkdir rpms srpms
2455
case "%(branch)s" in
2456
*5\\.[123]*)
2457
  tar zxf ../%(bakery)s.tar.gz
2458
  cd %(bakery)s
2459
  sudo RPM_SKIP_SIGN=1 bakery/autobake51-centos.sh ../../%(distname)s
2460
  sudo mv /usr/src/redhat/RPMS/*/*.rpm ../rpms/
2461
  sudo mv /usr/src/redhat/SRPMS/*.rpm ../srpms/
2462
  ;;
2463
*)
732 by Sergei Golubchik
for 10.2: upload MariaDB-shared-10.1 rpm into a VM
2464
  mv ../MariaDB-shared-*.rpm .
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
2465
  tar zxf "../%(distname)s"
2466
  cd "%(distdirname)s"
391 by Sergei Golubchik
on fedora21 compile with system dynamic jemalloc
2467
  cmake .  -DBUILD_CONFIG=mysql_release -DRPM=""" + distro + jemalloc_option + """
168.1.6 by Kristian Nielsen
dd 10.0 main tree.
2468
  umask 022
192 by Daniel Bartholomew
misc updates to maria-master.cfg to add a new tree and tweak some rpm compile steps
2469
  make package VERBOSE=1
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
2470
  mv *.rpm ../rpms/
2471
  ;;
2472
esac
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
2473
"""),
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
2474
        "= rm -Rf rpms srpms && mkdir rpms srpms",
168.1.4 by Kristian Nielsen
Move RPM and bintar builders to the "cloud" approach, automatically rsync'ing
2475
        "= scp -r -P "+port+" "+kvm_scpopt+" buildbot@localhost:buildbot/build/*rpms .",
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
2476
    ]))
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
2477
    addPackageArchiveStep(rpm_fact, "rpms srpms", "%(tarbuildnum)s")
231 by Kristian Nielsen
Misc. changes to buildbot config.
2478
    dist_arch= name.split('-')[2] + "-" + name.split('-')[3]
2479
545 by Daniel Bartholomew
automatic maria-master.cfg commit
2480
    rpm_fact.addStep(SetPropertyFromCommand(property="systemdCapability", command="echo no"))
2481
    rpm_fact.addStep(SetPropertyFromCommand(
2482
        doStepIf=(lambda(step): in_systemdBuilders(step)),
2483
        property="systemdCapability",
2484
        command="echo yes"))
2485
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
2486
    rpm_fact.addStep(Test(
824 by Daniel Bartholomew
automatic maria-master.cfg commit
2487
        name="install",
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
2488
        description=["testing", "install"],
2489
        descriptionDone=["test", "install"],
2490
        logfiles={"kernel": "kernel_"+port+".log"},
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
2491
        env={"TERM": "vt102"},
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
2492
        command=["runvm", "--base-image=/kvm/vms/"+kvm_image+"-install.qcow2"] + args + ["vm-tmp-"+port+".qcow2",
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
2493
        "rm -Rf buildbot && mkdir buildbot",
168.1.4 by Kristian Nielsen
Move RPM and bintar builders to the "cloud" approach, automatically rsync'ing
2494
        "= scp -r -P "+port+" "+kvm_scpopt+" rpms buildbot@localhost:buildbot/",
231 by Kristian Nielsen
Misc. changes to buildbot config.
2495
        "sudo rm -rf /tmp/VERSION",
556 by Daniel Bartholomew
automatic maria-master.cfg commit
2496
        WithProperties("sh -c \"echo '%(branch)s' | sed -e \\\"s/.*\\\\(5\\\\.[1-356]\\\\|10\\\\.[01]\\\\).*/\\\\1/\\\"\" > /tmp/VERSION"),
168.1.1 by Kristian Nielsen
New "labrador" mac slave.
2497
        WithProperties("""
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
2498
set -ex
2499
cd buildbot
704 by Daniel Bartholomew
automatic maria-master.cfg commit
2500
case "%(branch)s" in
2501
*mdev10416*)
2502
  sudo cat /etc/sysconfig/selinux | grep SELINUX || true
2503
  sudo sh -c \"PATH=$PATH:/usr/sbin getenforce || true\"
2504
  sudo sh -c \"PATH=$PATH:/usr/sbin setenforce Enforcing || true\"
2505
  sudo sh -c \"PATH=$PATH:/usr/sbin getenforce || true\"
2506
  ;;
2507
esac
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2508
rpm -qa | { grep -iE 'maria|mysql|galera' || true; }
612 by Daniel Bartholomew
automatic maria-master.cfg commit
2509
sudo yum makecache
650 by Daniel Bartholomew
automatic maria-master.cfg commit
2510
sudo yum search mysql | { grep "^mysql" || true; }
2511
sudo yum search maria | { grep "^maria" || true; }
2512
sudo yum search percona | { grep percona || true; }
168.1.1 by Kristian Nielsen
New "labrador" mac slave.
2513
case "%(branch)s" in
898 by Daniel Bartholomew
automatic maria-master.cfg commit
2514
*10.[1-9]*)
635 by Daniel Bartholomew
automatic maria-master.cfg commit
2515
  sudo sh -c "echo '[galera]
2516
name=galera
629 by Daniel Bartholomew
changed galera test repo for .rpm builders from the public MariaDB repo to a special galera-only repo
2517
baseurl=http://yum.mariadb.org/galera/repo/rpm/""" + dist_arch + """
364 by Sergei Golubchik
buildbot: unlike *galera* trees, 10.1 does not depend on galera.rpm
2518
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
635 by Daniel Bartholomew
automatic maria-master.cfg commit
2519
gpgcheck=1' > /etc/yum.repos.d/galera.repo"
2520
  sudo cat /etc/yum.repos.d/galera.repo
364 by Sergei Golubchik
buildbot: unlike *galera* trees, 10.1 does not depend on galera.rpm
2521
2522
  sudo yum -y --nogpgcheck install rpms/*.rpm
545 by Daniel Bartholomew
automatic maria-master.cfg commit
2523
  case "%(systemdCapability)s" in
2524
yes)
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2525
  # Service is installed
2526
  ls -l /usr/lib/systemd/system/mariadb.service
2527
  # RPMs do not start it automatically on clean install
2528
  sudo systemctl start mariadb
548 by Daniel Bartholomew
automatic maria-master.cfg commit
2529
2530
  echo "---- Check permissions - all of the following should fail ----"
2531
  ! systemctl --no-ask-password stop mariadb
2532
  ! systemctl --no-ask-password condrestart mariadb
2533
  ! systemctl --no-ask-password start mariadb
2534
  ! systemctl --no-ask-password enable mariadb
549 by Daniel Bartholomew
automatic maria-master.cfg commit
2535
  ! systemctl --no-ask-password set-environment MYSQLD_OPTS="--unknown-option"
2536
  ! systemctl --no-ask-password unset-environment MYSQLD_OPTS 
548 by Daniel Bartholomew
automatic maria-master.cfg commit
2537
  ! systemctl --no-ask-password restart mariadb
2538
2539
  echo "---- Now use proper permissions ---"
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2540
  # mariadb.service and its synonyms
704 by Daniel Bartholomew
automatic maria-master.cfg commit
2541
  systemctl status mariadb.service --no-pager
2542
  systemctl status mariadb.service --no-pager | grep Loaded | grep mariadb.service
2543
  systemctl status mariadb --no-pager
2544
  systemctl status mariadb --no-pager | grep Loaded | grep mariadb.service
2545
  systemctl status mysql --no-pager
2546
  systemctl status mysql --no-pager | grep Loaded | grep mariadb.service
2547
  systemctl status mysqld --no-pager
2548
  systemctl status mysqld --no-pager | grep Loaded | grep mariadb.service
548 by Daniel Bartholomew
automatic maria-master.cfg commit
2549
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2550
  sudo systemctl stop mariadb
2551
  !  ps -ef | grep mysqld | grep -v grep
553 by Daniel Bartholomew
automatic maria-master.cfg commit
2552
  sleep 5
2553
  ## condrestart part 1: does nothing when server is not running
2554
  #sudo systemctl condrestart mariadb
2555
  #!  ps -ef | grep mysqld | grep -v grep
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2556
  sudo systemctl start mariadb
2557
  ps -ef | grep mysqld | grep -v grep
2558
  # is-enabled, disable, enable
2559
  systemctl is-enabled mariadb
559 by Daniel Bartholomew
automatic maria-master.cfg commit
2560
  # MDEV-8956
2561
  #sudo systemctl disable mariadb
2562
  #! systemctl is-enabled mariadb
2563
  #sudo systemctl enable mariadb
2564
  #systemctl is-enabled mariadb
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2565
  # set-environment: add an unknown option
549 by Daniel Bartholomew
automatic maria-master.cfg commit
2566
  sudo systemctl set-environment MYSQLD_OPTS="--unknown-option"
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2567
  # condrestart part 2: attempts to restart when server is running
2568
  ! sudo systemctl condrestart mariadb
2569
  # unset-environment
549 by Daniel Bartholomew
automatic maria-master.cfg commit
2570
  sudo systemctl unset-environment MYSQLD_OPTS
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2571
  # Restart
2572
  sudo systemctl restart mariadb
549 by Daniel Bartholomew
automatic maria-master.cfg commit
2573
  sudo systemctl set-environment MYSQLD_OPTS="--unknown-option"
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2574
  ! sudo systemctl restart mariadb
549 by Daniel Bartholomew
automatic maria-master.cfg commit
2575
  sudo systemctl unset-environment MYSQLD_OPTS
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2576
  # Status shows proper text
704 by Daniel Bartholomew
automatic maria-master.cfg commit
2577
  systemctl status mariadb --no-pager | grep 'MariaDB server is down'
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2578
  sudo systemctl start mariadb
704 by Daniel Bartholomew
automatic maria-master.cfg commit
2579
  systemctl status mariadb --no-pager | grep 'Taking your SQL requests now'
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2580
  # See the journal
704 by Daniel Bartholomew
automatic maria-master.cfg commit
2581
  sudo systemctl -l status mariadb.service --no-pager
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2582
  ! journalctl -lxn 100 | grep mysqld
2583
  sudo journalctl -lxn 100 --no-pager | grep mysqld
2584
  # Init.d script
2585
  ls -l /etc/init.d/mysql
2586
  ls -l /etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf
2587
  # It does not do the same as systemctl now
2588
  # /etc/init.d/mysql status
545 by Daniel Bartholomew
automatic maria-master.cfg commit
2589
    ;;
2590
no)
2591
    echo "Steps related to systemd will be skipped"
2592
    sudo /etc/init.d/mysql restart
2593
    ;;
2594
*)
2595
    echo "It should never happen, check your configuration (systemdCapability property is not set or is set to a wrong value)"
2596
    ;;
2597
  esac
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2598
2599
case "%(branch)s" in
2600
*10.[12]e*)
2601
  sudo mysql -uroot -e 'drop database if exists test; create database test; use test; create table t(a int primary key) engine=innodb; insert into t values (1); select * from t; drop table t;'
2602
  ;;
2603
*)
650 by Daniel Bartholomew
automatic maria-master.cfg commit
2604
  mysql -uroot -e 'drop database if exists test; create database test; use test; create table t(a int primary key) engine=innodb; insert into t values (1); select * from t; drop table t;'
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2605
  ;;
2606
esac
2607
364 by Sergei Golubchik
buildbot: unlike *galera* trees, 10.1 does not depend on galera.rpm
2608
  sudo yum -y install galera
2609
  galera_path=`echo /usr/lib*/galera/libgalera_smm.so`
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2610
2611
case "%(branch)s" in
2612
*10.[12]e*)
2613
  sudo mysql -uroot -e 'set global wsrep_provider="'$galera_path'"; set global wsrep_cluster_address="gcomm://";show status like "wsrep%%"'
2614
  ;;
2615
*)
364 by Sergei Golubchik
buildbot: unlike *galera* trees, 10.1 does not depend on galera.rpm
2616
  mysql -uroot -e 'set global wsrep_provider="'$galera_path'"; set global wsrep_cluster_address="gcomm://";show status like "wsrep%%"'
2617
  ;;
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2618
esac
2619
2620
  ;;
364 by Sergei Golubchik
buildbot: unlike *galera* trees, 10.1 does not depend on galera.rpm
2621
*galera*)
635 by Daniel Bartholomew
automatic maria-master.cfg commit
2622
  sudo sh -c "echo '[galera]
2623
name=galera
2624
baseurl=http://yum.mariadb.org/galera/repo/rpm/""" + dist_arch + """
2625
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
2626
gpgcheck=1' > /etc/yum.repos.d/galera.repo"
2627
  sudo cat /etc/yum.repos.d/galera.repo
2628
231 by Kristian Nielsen
Misc. changes to buildbot config.
2629
  sudo sh -c "echo '[mariadb]
2630
name=MariaDB
635 by Daniel Bartholomew
automatic maria-master.cfg commit
2631
baseurl=http://yum.mariadb.org/$(cat /tmp/VERSION)/""" + dist_arch + """
231 by Kristian Nielsen
Misc. changes to buildbot config.
2632
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
2633
gpgcheck=1' > /etc/yum.repos.d/MariaDB.repo"
2634
  sudo cat /etc/yum.repos.d/MariaDB.repo
635 by Daniel Bartholomew
automatic maria-master.cfg commit
2635
324 by Daniel Bartholomew
automatic maria-master.cfg commit
2636
  sudo yum -y --nogpgcheck install rpms/*.rpm
168.1.1 by Kristian Nielsen
New "labrador" mac slave.
2637
  sudo /etc/init.d/mysql restart
2638
  galera_path=`echo /usr/lib*/galera/libgalera_smm.so`
2639
  mysql -uroot -e 'use test; create table t(a int primary key) engine=innodb; insert into t values (1); select * from t; drop table t;set global wsrep_provider="'$galera_path'"; set global wsrep_cluster_address="gcomm://";show status like "wsrep%%"'
2640
  ;;
2641
*)
2642
  sudo yum -C -y --nogpgcheck install rpms/*.rpm
2643
  sudo /etc/init.d/mysql restart
2644
  mysql -e "use test; create table t(a int primary key) engine=innodb; insert into t values (1); select * from t; drop table t"
2645
  ;;
2646
esac
745 by Daniel Bartholomew
automatic maria-master.cfg commit
2647
#case "%(systemdCapability)s" in
2648
#yes)
2649
#  echo "Server shutdown is not necessary with systemd"
2650
#  ;;
2651
#no)
2652
#  echo "Stopping the server because otherwise the VM might hang"
2653
#  sudo /etc/init.d/mysql stop
2654
#  ;;
2655
#esac
744 by Daniel Bartholomew
automatic maria-master.cfg commit
2656
echo "All done"
168.1.1 by Kristian Nielsen
New "labrador" mac slave.
2657
""")]))
231 by Kristian Nielsen
Misc. changes to buildbot config.
2658
#############################
2659
##### New step: minor upgrade
2660
2661
    rpm_fact.addStep(Test(
824 by Daniel Bartholomew
automatic maria-master.cfg commit
2662
        name="upgrade",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2663
        doStepIf=(lambda(step): branch_has_previous_minor_versions(step) and dist_name != "fedora" and branch_is_not_galera(step)),
231 by Kristian Nielsen
Misc. changes to buildbot config.
2664
        description=["testing", "minor upgrade"],
2665
        descriptionDone=["test", "minor upgrade"],
824 by Daniel Bartholomew
automatic maria-master.cfg commit
2666
        warningPattern=".*Upgrade warning:.*",
231 by Kristian Nielsen
Misc. changes to buildbot config.
2667
        logfiles={"kernel": "kernel_"+port+".log"},
2668
        env={"TERM": "vt102"},
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
2669
        command=["runvm", "--base-image=/kvm/vms/"+kvm_image+"-install.qcow2"] + args + ["vm-tmp-"+port+".qcow2",
231 by Kristian Nielsen
Misc. changes to buildbot config.
2670
        "rm -Rf buildbot && mkdir buildbot",
2671
        "= scp -r -P "+port+" "+kvm_scpopt+" rpms buildbot@localhost:buildbot/",
542 by Daniel Bartholomew
automatic maria-master.cfg commit
2672
        WithProperties("""
2673
set -ex
2674
cd buildbot
824 by Daniel Bartholomew
automatic maria-master.cfg commit
2675
2676
dist_arch=""" + dist_arch + """
2677
2678
# MariaDB version
2679
mariadb_version=`echo "%(branch)s" | sed -e "s/.*\(5\.[1-356]\|10\.[0-9]\).*/\\1/"`
2680
2681
# Check that there is a previous version to install
2682
if ! wget http://yum.mariadb.org/$mariadb_version/$dist_arch
2683
then
2684
  echo "Upgrade warning"": could not find a previous version in MariaDB repo, skipping the test"
2685
  exit
2686
fi
2687
704 by Daniel Bartholomew
automatic maria-master.cfg commit
2688
case "%(branch)s" in
2689
*mdev10416*)
2690
  sudo cat /etc/sysconfig/selinux | grep SELINUX || true
2691
  sudo sh -c \"PATH=$PATH:/usr/sbin getenforce || true\"
2692
  sudo sh -c \"PATH=$PATH:/usr/sbin setenforce Enforcing || true\"
2693
  sudo sh -c \"PATH=$PATH:/usr/sbin getenforce || true\"
2694
  ;;
2695
esac
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2696
rpm -qa | { grep -iE 'maria|mysql|galera' || true; }
542 by Daniel Bartholomew
automatic maria-master.cfg commit
2697
  ls /etc/yum.repos.d/* | grep -iE '(maria|galera)' | xargs -r sudo rm -f
704 by Daniel Bartholomew
automatic maria-master.cfg commit
2698
case "%(branch)s" in
2699
*mdev10416*)
2700
  sudo sh -c "echo '[mariadb]
2701
name=MariaDB
2702
baseurl=http://yum.mariadb.org/10.1.14/""" + dist_arch + """
2703
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
2704
gpgcheck=1' > /etc/yum.repos.d/MariaDB.repo"
2705
;;
2706
*)
542 by Daniel Bartholomew
automatic maria-master.cfg commit
2707
  sudo sh -c "echo '[mariadb]
2708
name=MariaDB
824 by Daniel Bartholomew
automatic maria-master.cfg commit
2709
baseurl=http://yum.mariadb.org/$mariadb_version/$dist_arch
542 by Daniel Bartholomew
automatic maria-master.cfg commit
2710
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
2711
gpgcheck=1' > /etc/yum.repos.d/MariaDB.repo"
704 by Daniel Bartholomew
automatic maria-master.cfg commit
2712
;;
2713
esac
542 by Daniel Bartholomew
automatic maria-master.cfg commit
2714
  sudo cat /etc/yum.repos.d/MariaDB.repo
2715
  sudo yum clean all
650 by Daniel Bartholomew
automatic maria-master.cfg commit
2716
  sudo yum -y --nogpgcheck install MariaDB-server MariaDB-client MariaDB-shared
542 by Daniel Bartholomew
automatic maria-master.cfg commit
2717
  sudo /etc/init.d/mysql start
650 by Daniel Bartholomew
automatic maria-master.cfg commit
2718
  mysql -uroot -e "select @@version, @@version_comment; drop database if exists test; create database test; use test; create table t(a int primary key) engine=innodb; insert into t values (1); select * from t;"
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2719
  mysql -uroot --skip-column-names -e "select @@version" | awk -F'-' '{ print $1 }' > /tmp/version.old
788 by Daniel Bartholomew
automatic maria-master.cfg commit
2720
  mysql -uroot -e "CREATE DATABASE autoinc; CREATE TABLE autoinc.t_autoinc(a SERIAL) ENGINE=InnoDB SELECT 42 a"
789 by Daniel Bartholomew
automatic maria-master.cfg commit
2721
  mysql -uroot -e "CREATE TABLE autoinc.t_autoinc2(a SERIAL) ENGINE=InnoDB; BEGIN; INSERT INTO autoinc.t_autoinc2 VALUES (NULL),(NULL); ROLLBACK; SHOW CREATE TABLE autoinc.t_autoinc2 \G"
542 by Daniel Bartholomew
automatic maria-master.cfg commit
2722
  sudo yum -y --nogpgcheck upgrade rpms/*.rpm
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2723
  mysql -uroot -e "select @@version, @@version_comment"
2724
  mysql -uroot --skip-column-names -e "select @@version" | awk -F'-' '{ print $1 }' > /tmp/version.new
788 by Daniel Bartholomew
automatic maria-master.cfg commit
2725
  mysql -uroot --skip-column-names -e "INSERT INTO autoinc.t_autoinc SET a=NULL;  SELECT COUNT(*) Expect_2 FROM autoinc.t_autoinc WHERE a>=42"
789 by Daniel Bartholomew
automatic maria-master.cfg commit
2726
  echo "Prior to MDEV-6076, the next SELECT would return 1. After MDEV-6076, it should be 3"
2727
  mysql -uroot --skip-column-names -e "INSERT INTO autoinc.t_autoinc2 VALUES (NULL); SELECT * FROM autoinc.t_autoinc2"
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2728
  # Version has changed after upgrade
2729
  ! diff -u  /tmp/version.old  /tmp/version.new
2730
  # RPMs do not run mysql_upgrade automatically
2731
  # cat /var/lib/mysql/mysql_upgrade_info | awk -F'-' '{ print $1 }' > /tmp/version.upgrade
2732
  # diff -u /tmp/version.new /tmp/version.upgrade
545 by Daniel Bartholomew
automatic maria-master.cfg commit
2733
case "%(systemdCapability)s" in
2734
yes)
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2735
  ls -l /usr/lib/systemd/system/mariadb.service
2736
  ls -l /etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf
2737
  ls -l /etc/init.d/mysql
704 by Daniel Bartholomew
automatic maria-master.cfg commit
2738
  systemctl status mariadb.service --no-pager
2739
  systemctl status mariadb --no-pager
2740
  systemctl status mysql --no-pager
2741
  systemctl status mysqld --no-pager
545 by Daniel Bartholomew
automatic maria-master.cfg commit
2742
  systemctl is-enabled mariadb
704 by Daniel Bartholomew
automatic maria-master.cfg commit
2743
  sudo systemctl restart mariadb 
2744
  systemctl status mariadb --no-pager
546 by Daniel Bartholomew
automatic maria-master.cfg commit
2745
  sudo journalctl -lxn 100 --no-pager | grep mysqld
2746
  # It does not do the same as systemctl now
2747
  # /etc/init.d/mysql status
545 by Daniel Bartholomew
automatic maria-master.cfg commit
2748
  ;;
2749
no)
2750
  echo "Steps related to systemd will be skipped"
2751
  ;;
2752
*)
2753
  echo "It should never happen, check your configuration (systemdCapability property is not set or is set to a wrong value)"
2754
  ;;
2755
esac
2756
  mysql -e "select @@version, @@version_comment; use test; insert into t values (2); select * from t; drop table t"
2757
745 by Daniel Bartholomew
automatic maria-master.cfg commit
2758
#case "%(systemdCapability)s" in
2759
#yes)
2760
#  echo "Server shutdown is not necessary with systemd"
2761
#  ;;
2762
#no)
2763
#  echo "Stopping the server because otherwise the VM might hang"
2764
#  sudo /etc/init.d/mysql stop
2765
#  ;;
2766
#esac
2767
echo "All done" 
545 by Daniel Bartholomew
automatic maria-master.cfg commit
2768
""")]))
2769
650 by Daniel Bartholomew
automatic maria-master.cfg commit
2770
##### End of minor upgrade step
2771
#############################
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2772
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2773
# Upgrade From 10.1
2774
2775
    rpm_fact.addStep(
2776
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2777
            action="upgrade", 
2778
            upgrade_from="MariaDB 10.1 (server, client)", 
2779
            old_packages="MariaDB-server MariaDB-client", 
2780
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2781
            doStepIf=rpm_test_branch
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2782
        )
2783
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2784
    # Not Fedora because Fedora wants additional options, see below
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2785
    rpm_fact.addStep(
2786
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2787
            action="install", 
2788
            upgrade_from="MariaDB 10.1 (server, client)", 
2789
            old_packages="MariaDB-server MariaDB-client", 
2790
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2791
            doStepIf=(lambda(step): dist_name != "fedora" and rpm_test_branch(step))
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2792
        )
2793
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2794
    # Fedora wants additional options, otherwise refuses to install
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2795
    rpm_fact.addStep(
2796
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2797
            action="install", 
2798
            upgrade_from="MariaDB 10.1 (server, client)", 
2799
            old_packages="MariaDB-server MariaDB-client", 
2800
            new_packages="MariaDB-server MariaDB-client",
2801
            extra_opts="--best --allowerasing",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2802
            doStepIf=(lambda(step): dist_name == "fedora" and rpm_test_branch(step))
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2803
        )
2804
    )
2805
    rpm_fact.addStep(
2806
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2807
            action="upgrade", 
2808
            upgrade_from="MariaDB 10.1 (all packages)", 
2809
            old_packages="MariaDB-*", 
2810
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2811
            doStepIf=rpm_test_branch
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2812
        )
2813
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2814
    # Not Fedora because Fedora wants additional options, see below
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2815
    rpm_fact.addStep(
2816
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2817
            action="install", 
2818
            upgrade_from="MariaDB 10.1 (all packages)", 
2819
            old_packages="MariaDB-*", 
2820
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2821
            doStepIf=(lambda(step): dist_name != "fedora" and rpm_test_branch(step))
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2822
        )
2823
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2824
    # Fedora wants additional options, otherwise refuses to install
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2825
    rpm_fact.addStep(
2826
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2827
            action="install", 
2828
            upgrade_from="MariaDB 10.1 (all packages)", 
2829
            old_packages="MariaDB-*", 
2830
            new_packages="MariaDB-*",
2831
            extra_opts="--best --allowerasing",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2832
            doStepIf=(lambda(step): dist_name == "fedora" and rpm_test_branch(step))
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2833
        )
2834
    )
2835
2836
# Upgrade From 10.0
2837
2838
    rpm_fact.addStep(
2839
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2840
            action="upgrade", 
2841
            upgrade_from="MariaDB 10.0 (server, client)", 
2842
            old_packages="MariaDB-server MariaDB-client", 
2843
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2844
            doStepIf=rpm_test_branch
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2845
        )
2846
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2847
    # Not Fedora because Fedora wants additional options, see below
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2848
    rpm_fact.addStep(
2849
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2850
            action="install", 
2851
            upgrade_from="MariaDB 10.0 (server, client)", 
2852
            old_packages="MariaDB-server MariaDB-client", 
2853
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2854
            doStepIf=(lambda(step): dist_name != "fedora" and rpm_test_branch(step))
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2855
        )
2856
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2857
    # Fedora wants additional options, otherwise refuses to install
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2858
    rpm_fact.addStep(
2859
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2860
            action="install", 
2861
            upgrade_from="MariaDB 10.0 (server, client)", 
2862
            old_packages="MariaDB-server MariaDB-client", 
2863
            new_packages="MariaDB-server MariaDB-client",
2864
            extra_opts="--best --allowerasing",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2865
            doStepIf=(lambda(step): dist_name == "fedora" and rpm_test_branch(step))
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2866
        )
2867
    )
2868
    rpm_fact.addStep(
2869
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2870
            action="upgrade", 
2871
            upgrade_from="MariaDB 10.0 (all packages)", 
2872
            old_packages="MariaDB-* -x MariaDB-Galera*", 
2873
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2874
            doStepIf=rpm_test_branch
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2875
        )
2876
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2877
    # Not Fedora because Fedora wants additional options, see below
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2878
    rpm_fact.addStep(
2879
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2880
            action="install", 
2881
            upgrade_from="MariaDB 10.0 (all packages)", 
2882
            old_packages="MariaDB-* -x MariaDB-Galera*", 
2883
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2884
            doStepIf=(lambda(step): dist_name != "fedora" and rpm_test_branch(step))
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2885
        )
2886
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2887
    # Fedora wants additional options, otherwise refuses to install
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2888
    rpm_fact.addStep(
2889
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2890
            action="install", 
2891
            upgrade_from="MariaDB 10.0 (all packages)", 
2892
            old_packages="MariaDB-* -x MariaDB-Galera*", 
2893
            new_packages="MariaDB-*",
2894
            extra_opts="--best --allowerasing",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2895
            doStepIf=(lambda(step): dist_name == "fedora" and rpm_test_branch(step))
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2896
        )
2897
    )
2898
2899
# Upgrade From 10.0 Galera
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2900
    # manual_restart is added everywhere due to MDEV-9797
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2901
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2902
    # On CentOS 7 manual restart does not help, see MDEV-9797 (comments)
2903
    # On Fedora, upgrade does not work, see MDEV-9807
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2904
    rpm_fact.addStep(
2905
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2906
            action="upgrade", 
2907
            upgrade_from="MariaDB 10.0 Galera", 
2908
            old_packages="MariaDB-Galera-server MariaDB-client", 
2909
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2910
            manual_restart=1,
2911
            doStepIf=rpm_test_branch
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2912
        )
2913
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2914
    # Not Fedora because Fedora wants additional options, see below
2915
    # On CentOS 7 manual restart does not help, MDEV-9797 (comments)
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2916
    rpm_fact.addStep(
2917
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2918
            action="install", 
2919
            upgrade_from="MariaDB 10.0 Galera", 
2920
            old_packages="MariaDB-Galera-server MariaDB-client", 
2921
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2922
            manual_restart=1,
2923
            doStepIf=(lambda(step): dist_name != "fedora" and rpm_test_branch(step))
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2924
        )
2925
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2926
    # Fedora wants additional options, otherwise refuses to install
2927
    # Manual restart does not work, MDEV-9797 (comments)
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2928
    rpm_fact.addStep(
2929
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2930
            action="install", 
2931
            upgrade_from="MariaDB 10.0 Galera", 
2932
            old_packages="MariaDB-Galera-server MariaDB-client", 
2933
            new_packages="MariaDB-server MariaDB-client",
2934
            extra_opts="--best --allowerasing",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2935
            manual_restart=1,
2936
            doStepIf=(lambda(step): dist_name == "fedora" and rpm_test_branch(step))
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2937
        )
2938
    )
2939
2940
# Upgrade From 5.5
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2941
    # Not Fedora because we don't build 5.5 for Fedora 
652 by Daniel Bartholomew
automatic maria-master.cfg commit
2942
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2943
    rpm_fact.addStep(
2944
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2945
            action="upgrade", 
2946
            upgrade_from="MariaDB 5.5 (server, client)", 
2947
            old_packages="MariaDB-server MariaDB-client", 
2948
            new_packages="MariaDB-server MariaDB-client",
2949
            doStepIf=(lambda(step): dist_name != "fedora" and rpm_test_branch(step))
2950
        )
2951
    )
2952
    rpm_fact.addStep(
2953
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2954
            action="install", 
2955
            upgrade_from="MariaDB 5.5 (server, client)", 
2956
            old_packages="MariaDB-server MariaDB-client", 
2957
            new_packages="MariaDB-server MariaDB-client",
2958
            doStepIf=(lambda(step): dist_name != "fedora" and rpm_test_branch(step))
2959
        )
2960
    )
2961
    rpm_fact.addStep(
2962
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2963
            action="upgrade", 
2964
            upgrade_from="MariaDB 5.5 (all packages)", 
2965
            old_packages="MariaDB-* -x MariaDB-Galera*", 
2966
            new_packages="MariaDB-*",
2967
            doStepIf=(lambda(step): dist_name != "fedora" and rpm_test_branch(step))
2968
        )
2969
    )
2970
    rpm_fact.addStep(
2971
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2972
            action="install", 
2973
            upgrade_from="MariaDB 5.5 (all packages)", 
2974
            old_packages="MariaDB-* -x MariaDB-Galera*", 
2975
            new_packages="MariaDB-*",
2976
            doStepIf=(lambda(step): dist_name != "fedora" and rpm_test_branch(step))
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2977
        )
2978
    )
2979
2980
# Upgrade From 5.5 Galera
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2981
    # Not Fedora because we don't build 5.5 for Fedora
2982
    # Manual restart is added everywhere due to MDEV-9797
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2983
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2984
    # On CentOS 7 manual restart does not help, MDEV-9797 (comments)
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2985
    rpm_fact.addStep(
2986
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2987
            action="upgrade", 
2988
            upgrade_from="MariaDB 5.5 Galera", 
2989
            old_packages="MariaDB-Galera-server MariaDB-client", 
2990
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2991
            manual_restart=1,
2992
            doStepIf=(lambda(step): dist_name != "fedora" and rpm_test_branch(step))
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2993
        )
2994
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
2995
    # On CentOS 7 manual restart does not help, MDEV-9797 (comments)
653 by Daniel Bartholomew
automatic maria-master.cfg commit
2996
    rpm_fact.addStep(
2997
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
2998
            action="install", 
2999
            upgrade_from="MariaDB 5.5 Galera", 
3000
            old_packages="MariaDB-Galera-server MariaDB-client", 
3001
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3002
            manual_restart=1,
3003
            doStepIf=(lambda(step): dist_name != "fedora" and rpm_test_branch(step))
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3004
        )
3005
    )
3006
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3007
# Upgrade from MySQL 5.7
3008
    # It's not installable on CentOS 6 (ERROR with rpm_check_debug vs depsolve).
3009
    # Possibly it's the same for RHEL 6, we don't have it in buildbot.
3010
    # So, we'll disable the tests for CentOS/RHEL 6. 
3011
3012
    # This step does not upgrade anything, since the packages don't match
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3013
    rpm_fact.addStep(
3014
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3015
            action="upgrade", 
3016
            upgrade_from="MySQL 5.7", 
3017
            old_packages="mysql-community-server mysql-community-client", 
3018
            new_packages="MariaDB-server MariaDB-client",
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3019
            doStepIf=False
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3020
#            doStepIf=(lambda(step): (not (dist_name == "centos" and int(dist_num) == 6)) and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3021
        )
3022
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3023
    # The step fails due to MDEV-9798
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3024
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3025
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3026
            action="install", 
3027
            upgrade_from="MySQL 5.7 (server, client)", 
3028
            old_packages="mysql-community-server mysql-community-client", 
3029
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3030
            doStepIf=(lambda(step): (not (dist_name == "centos" and int(dist_num) == 6)) and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3031
        )
3032
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3033
    # The step fails due to MDEV-9798 and MDEV-9799
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3034
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3035
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3036
            action="install", 
3037
            upgrade_from="MySQL 5.7 (all packages)", 
3038
            old_packages="mysql-community-*", 
3039
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3040
            doStepIf=(lambda(step): (not (dist_name == "centos" and int(dist_num) == 6)) and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3041
        )
3042
    )
3043
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3044
# Upgrade from MySQL 5.6
3045
    # It's not installable on CentOS 6 (ERROR with rpm_check_debug vs depsolve).
3046
    # Possibly it's the same for RHEL 6, we don't have it in buildbot.
3047
    # So, we'll disable the tests for CentOS 6. 
3048
3049
    # This step does not upgrade anything, since the packages don't match
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3050
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3051
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3052
            action="upgrade", 
3053
            upgrade_from="MySQL 5.6", 
3054
            old_packages="mysql-community-server mysql-community-client", 
3055
            new_packages="MariaDB-server MariaDB-client",
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3056
            doStepIf=False
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3057
#            doStepIf=(lambda(step): (not (dist_name == "centos" and int(dist_num) == 6)) and rpm_test_branch(step))
3058
       )
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3059
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3060
    # The step fails due to MDEV-9798
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3061
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3062
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3063
            action="install", 
3064
            upgrade_from="MySQL 5.6 (server, client)", 
3065
            old_packages="mysql-community-server mysql-community-client", 
3066
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3067
            doStepIf=(lambda(step): (not (dist_name == "centos" and int(dist_num) == 6)) and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3068
        )
3069
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3070
    # The step fails due to MDEV-9798 and MDEV-9799
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3071
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3072
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3073
            action="install", 
3074
            upgrade_from="MySQL 5.6 (all packages)", 
3075
            old_packages="mysql-community-*", 
3076
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3077
            doStepIf=(lambda(step): (not (dist_name == "centos" and int(dist_num) == 6)) and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3078
        )
3079
    )
3080
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3081
# Upgrade from MySQL 5.5
3082
    # MySQL 5.5 has packages for el 6,7 only (?)
3083
    # But it's not installable on CentOS 6 (ERROR with rpm_check_debug vs depsolve).
3084
    # Possibly it's the same for RHEL 6, we don't have it in buildbot.
3085
    # So, we'll disable the tests for CentOS/RHEL 6. 
3086
3087
    # This step does not upgrade anything, since the packages don't match
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3088
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3089
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3090
            action="upgrade", 
3091
            upgrade_from="MySQL 5.5", 
3092
            old_packages="mysql-community-server mysql-community-client", 
3093
            new_packages="MariaDB-server MariaDB-client",
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3094
            doStepIf=False
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3095
#            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and int(dist_num) >= 7 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3096
        )
3097
    )
3098
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3099
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3100
            action="install", 
3101
            upgrade_from="MySQL 5.5 (server, client)", 
3102
            old_packages="mysql-community-server mysql-community-client", 
3103
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3104
            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and int(dist_num) >= 7 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3105
        )
3106
    )
3107
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3108
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3109
            action="install", 
3110
            upgrade_from="MySQL 5.5 (all packages)", 
3111
            old_packages="mysql-community-*", 
3112
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3113
            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and int(dist_num) >= 7 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3114
        )
3115
    )
3116
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3117
# Upgrade from Percona 5.7
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3118
    # Percona 5.7 only has packages for el 6, 7
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3119
3120
    # This step does not upgrade anything, since the packages don't match
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3121
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3122
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3123
            action="upgrade", 
3124
            upgrade_from="Percona 5.7", 
3125
            old_packages="Percona-Server-server-57 Percona-Server-client-57", 
3126
            new_packages="MariaDB-server MariaDB-client",
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3127
            doStepIf=False
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3128
#            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and int(dist_num) >= 6 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3129
        )
3130
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3131
    # The step fails due to MDEV-9800
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3132
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3133
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3134
            action="install", 
3135
            upgrade_from="Percona 5.7 (server, client)", 
3136
            old_packages="Percona-Server-server-57 Percona-Server-client-57", 
3137
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3138
            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and int(dist_num) >= 6 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3139
        )
3140
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3141
    # The step fails due to MDEV-9800
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3142
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3143
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3144
            action="install", 
3145
            upgrade_from="Percona 5.7 (all packages)", 
3146
            old_packages="Percona-Server-*-57", 
3147
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3148
            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and int(dist_num) >= 6 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3149
        )
3150
    )
3151
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3152
# Upgrade from Percona 5.6
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3153
    # Percona 5.6 only has packages for el 5, 6, 7
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3154
3155
    # This step does not upgrade anything, since the packages don't match
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3156
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3157
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3158
            action="upgrade", 
3159
            upgrade_from="Percona 5.6", 
3160
            old_packages="Percona-Server-server-56 Percona-Server-client-56", 
3161
            new_packages="MariaDB-server MariaDB-client",
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3162
            doStepIf=False
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3163
#            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3164
        )
3165
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3166
    # The step fails due to MDEV-9800
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3167
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3168
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3169
            action="install", 
3170
            upgrade_from="Percona 5.6 (server, client)", 
3171
            old_packages="Percona-Server-server-56 Percona-Server-client-56", 
3172
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3173
            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3174
        )
3175
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3176
    # The step fails due to MDEV-9800
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3177
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3178
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3179
            action="install", 
3180
            upgrade_from="Percona 5.6 (all packages)", 
3181
            old_packages="Percona-Server-*-56", 
3182
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3183
            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3184
        )
3185
    )
3186
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3187
# Upgrade from Percona 5.5
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3188
    # Percona 5.5 only has packages for el 5, 6, 7
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3189
3190
    # This step does not upgrade anything, since the packages don't match
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3191
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3192
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3193
            action="upgrade", 
3194
            upgrade_from="Percona 5.5", 
3195
            old_packages="Percona-Server-server-55 Percona-Server-client-55", 
3196
            new_packages="MariaDB-server MariaDB-client",
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3197
            doStepIf=False
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3198
#            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3199
        )
3200
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3201
    # The step fails due to MDEV-9800
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3202
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3203
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3204
            action="install", 
3205
            upgrade_from="Percona 5.5 (server, client)", 
3206
            old_packages="Percona-Server-server-55 Percona-Server-client-55", 
3207
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3208
            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3209
        )
3210
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3211
    # The step fails due to MDEV-9800
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3212
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3213
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3214
            action="install", 
3215
            upgrade_from="Percona 5.5 (all packages)", 
3216
            old_packages="Percona-Server-*-55", 
3217
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3218
            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3219
        )
3220
    )
3221
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3222
# Upgrades from packages provided by distributions
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3223
3224
    # mysql-server and mysql: provided by RHEL 5 (probably 6 too), CentOS 5, CentOS 6
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3225
    # Install and upgrade suggest to use FORCE_UPGRADE
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3226
3227
    # The step fails on CentOS 5 due to MDEV-9803
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3228
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3229
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3230
            action="upgrade", 
3231
            upgrade_from="mysql-server", 
3232
            old_packages="mysql-server mysql", 
3233
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3234
            force_upgrade=1,
3235
            manual_restart=1,
3236
            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and int(dist_num) <= 6 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3237
        )
3238
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3239
    # The step fails on CentOS 5 due to MDEV-9803
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3240
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3241
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3242
            action="install", 
3243
            upgrade_from="mysql-server (server, client)", 
3244
            old_packages="mysql-server mysql", 
3245
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3246
            force_upgrade=1,
3247
            manual_restart=1,
3248
            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and int(dist_num) <= 6 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3249
        )
3250
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3251
    # Step fails because of MDEV-9812
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3252
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3253
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3254
            action="install", 
3255
            upgrade_from="mysql-server (all packages)", 
3256
            old_packages="mysql-server mysql mysql-bench mysql-devel mysql-test", 
3257
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3258
            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and int(dist_num) <= 6 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3259
        )
3260
    )
3261
3262
    # mysql51-mysql-server and mysql51-mysql: provided by RHEL 5, CentOS 5
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3263
3264
    # This test does not upgrade anything, since the packages don't match
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3265
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3266
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3267
            action="upgrade", 
3268
            upgrade_from="mysql51-mysql-server", 
3269
            old_packages="mysql51-mysql-server mysql51-mysql", 
3270
            new_packages="MariaDB-server MariaDB-client",
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3271
            doStepIf=False
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3272
#            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and int(dist_num) == 5 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3273
        )
3274
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3275
    # Step fails due to MDEV-9815
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3276
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3277
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3278
            action="install", 
3279
            upgrade_from="mysql51-mysql-server (server, client)", 
3280
            old_packages="mysql51-mysql-server mysql51-mysql", 
3281
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3282
            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and int(dist_num) == 5 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3283
        )
3284
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3285
    # Step fails due to MDEV-9815
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3286
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3287
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3288
            action="install", 
3289
            upgrade_from="mysql51 (all packages)", 
3290
            old_packages="mysql51*", 
3291
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3292
            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and int(dist_num) == 5 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3293
        )
3294
    )
3295
3296
    # mysql55-mysql-server and mysql55-mysql: provided by RHEL 5, CentOS 5
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3297
3298
    # This test does not upgrade anything, since the packages don't match
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3299
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3300
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3301
            action="upgrade", 
3302
            upgrade_from="mysql55-mysql-server", 
3303
            old_packages="mysql55-mysql-server mysql55-mysql", 
3304
            new_packages="MariaDB-server MariaDB-client",
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3305
            doStepIf=False
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3306
#            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and int(dist_num) == 5 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3307
        )
3308
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3309
    # Step fails due to MDEV-9815
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3310
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3311
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3312
            action="install", 
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3313
            upgrade_from="mysql55-mysql-server (server, client)", 
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3314
            old_packages="mysql55-mysql-server mysql55-mysql", 
3315
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3316
            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and int(dist_num) == 5 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3317
        )
3318
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3319
    # Step fails due to MDEV-9815
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3320
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3321
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3322
            action="install", 
3323
            upgrade_from="mysql55 (all packages)", 
3324
            old_packages="mysql55*", 
3325
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3326
            doStepIf=(lambda(step): (dist_name == "centos" or dist_name == "rhel") and int(dist_num) == 5 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3327
        )
3328
    )
3329
3330
    # mariadb-server and mariadb: provided by CentOS 7, Fedora 22, Fedora 23
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3331
3332
    # Manual restart is added due to MDEV-9805
3333
    # The step fails due to MDEV-9805 (CentOS), MDEV-9808 (Fedora)
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3334
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3335
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3336
            action="upgrade", 
3337
            upgrade_from="mariadb-server", 
3338
            old_packages="mariadb-server mariadb", 
3339
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3340
            manual_restart=1,
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3341
            # On some reason >=7 did not work
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3342
            doStepIf=(lambda(step): ((dist_name == "centos" and int(dist_num) != 5 and int(dist_num) != 6) or dist_name == "fedora") and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3343
        )
3344
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3345
    # Manual restart is added due to MDEV-9805
3346
    # The step fails due to MDEV-9805 (CentOS), MDEV-9809 (Fedora)
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3347
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3348
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3349
            action="install", 
3350
            upgrade_from="mariadb-server (server, client)", 
3351
            old_packages="mariadb-server mariadb", 
3352
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3353
            manual_restart=1,
3354
            doStepIf=(lambda(step): ((dist_name == "centos" and int(dist_num) != 5 and int(dist_num) != 6) or dist_name == "fedora") and rpm_test_branch(step))
3355
        )
3356
    )
3357
    # The step fails due to MDEV-9806 (CentOS)
3358
    rpm_fact.addStep(
3359
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
3360
            action="install", 
3361
            upgrade_from="mariadb-server (all packages)", 
3362
            old_packages="mariadb* -x mariadb-galera*", 
3363
            new_packages="MariaDB-*",
3364
            doStepIf=(lambda(step): dist_name == "centos" and int(dist_num) != 5 and int(dist_num) != 6 and rpm_test_branch(step))
3365
        )
3366
    )
3367
    # The step fails due to MDEV-9809 (Fedora), allowerasing does not help
3368
    rpm_fact.addStep(
3369
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
3370
            action="install", 
3371
            upgrade_from="mariadb-server (all packages)", 
3372
            old_packages="mariadb* -x mariadb-galera*", 
3373
            new_packages="MariaDB-*",
3374
            extra_opts="--allowerasing",
3375
            doStepIf=(lambda(step): dist_name == "fedora" and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3376
        )
3377
    )
3378
3379
    # mariadb-galera-server and mariadb: provided by Fedora 22, Fedora 23
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3380
3381
    # This test does not upgrade anything, since the packages don't match
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3382
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3383
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3384
            action="upgrade", 
3385
            upgrade_from="mariadb-galera-server", 
3386
            old_packages="mariadb-galera-server mariadb", 
3387
            new_packages="MariaDB-server MariaDB-client",
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3388
            doStepIf=False
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3389
#            doStepIf=(lambda(step): dist_name == "fedora" and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3390
        )
3391
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3392
    # Extra options are added because Fedora requests them
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3393
    rpm_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
3394
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3395
            action="install", 
3396
            upgrade_from="mariadb-galera-server", 
3397
            old_packages="mariadb-galera-server mariadb", 
3398
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3399
            extra_opts="--allowerasing",
3400
            # Step fails due to MDEV-9809, allowerasing does not help
3401
            doStepIf=(lambda(step): dist_name == "fedora" and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3402
        )
3403
    )
650 by Daniel Bartholomew
automatic maria-master.cfg commit
3404
143 by Kristian Nielsen
Slave naming.
3405
    return {'name': name, 'slavenames': slaves, 'builddir': name, 'factory': rpm_fact,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
3406
            "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
3407
            "category": catg}
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
3408
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
3409
#bld_kvm_rpm_centos5_x86 = getRpmBuilder("kvm-rpm-centos5-x86", "vm-centos5-i386",
3410
#                                        "2225", "qemu64", "i386", slaves= kvm_slaves, ramdisk=False)
3411
#bld_kvm_rpm_centos5_amd64 = getRpmBuilder("kvm-rpm-centos5-amd64", "vm-centos5-amd64",
3412
#                                        "2237", "qemu64", "x86_64", slaves= kvm_slaves, ramdisk=False)
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
3413
3414
bld_kvm_rpm_centos6_x86 = getRpmBuilder("kvm-rpm-centos6-x86", "vm-centos6-i386",
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
3415
                                        "2261", "qemu64", "i386", ramdisk=False)
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
3416
bld_kvm_rpm_centos6_amd64 = getRpmBuilder("kvm-rpm-centos6-amd64", "vm-centos6-amd64",
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
3417
                                        "2262", "qemu64", "x86_64", ramdisk=False)
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
3418
303 by Daniel Bartholomew
automatic maria-master.cfg commit
3419
#bld_kvm_rpm_centos7_0_x86 = getRpmBuilder("kvm-rpm-centos7_0-x86", "vm-centos7_0-x86",
3420
#                                        "2301", "qemu64", "i386")
387 by Daniel Bartholomew
automatic maria-master.cfg commit
3421
#bld_kvm_rpm_centos7_0_x86_64 = getRpmBuilder("kvm-rpm-centos7_0-x86_64", "vm-centos7_0-x86_64",
3422
#                                        "2302", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False, catg="experimental")
3423
3424
bld_kvm_rpm_centos7_amd64 = getRpmBuilder("kvm-rpm-centos7-amd64", "vm-centos7-amd64",
456 by Daniel Bartholomew
automatic maria-master.cfg commit
3425
                                        "2302", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False, catg="main")
303 by Daniel Bartholomew
automatic maria-master.cfg commit
3426
888 by Daniel Bartholomew
automatic maria-master.cfg commit
3427
bld_kvm_rpm_centos73_amd64 = getRpmBuilder("kvm-rpm-centos73-amd64", "vm-centos73-amd64",
3428
                                        "2347", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False, catg="main")
886 by Daniel Bartholomew
automatic maria-master.cfg commit
3429
890 by Daniel Bartholomew
Add kvm-rpm-centos73-ppc64 and kvm-rpm-centos73-ppc64le builders
3430
bld_kvm_rpm_centos73_ppc64 = getRpmBuilder("kvm-rpm-centos73-ppc64", "vm-centos73-ppc64",
3431
                                        "2348", "POWER8", "ppc64", slaves=["p801"], ramdisk=False, catg="experimental")
3432
3433
bld_kvm_rpm_centos73_ppc64le = getRpmBuilder("kvm-rpm-centos73-ppc64le", "vm-centos73-ppc64le",
3434
                                        "2349", "POWER8", "ppc64le", slaves=["p801"], ramdisk=False, catg="experimental")
3435
180 by Daniel Bartholomew
Remove Debian 5, Ubuntu Maverick, Ubuntu Natty, and Fedora 16 builds from buildbot
3436
#bld_kvm_rpm_fedora16_x86 = getRpmBuilder("kvm-rpm-fedora16-x86", "vm-fedora16-i386",
3437
#                                        "2263", "qemu64", "i386")
3438
#bld_kvm_rpm_fedora16_amd64 = getRpmBuilder("kvm-rpm-fedora16-amd64", "vm-fedora16-amd64",
3439
#                                        "2264", "qemu64", "x86_64")
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
3440
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
3441
#bld_kvm_rpm_fedora17_x86 = getRpmBuilder("kvm-rpm-fedora17-x86", "vm-fedora17-i386",
3442
#                                        "2265", "qemu64", "i386")
3443
#bld_kvm_rpm_fedora17_amd64 = getRpmBuilder("kvm-rpm-fedora17-amd64", "vm-fedora17-amd64",
3444
#                                        "2266", "qemu64", "x86_64")
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
3445
216 by Daniel Bartholomew
removed fedora18 builders as they are now deprecated
3446
#bld_kvm_rpm_fedora18_x86 = getRpmBuilder("kvm-rpm-fedora18-x86", "vm-fedora18-i386",
3447
#                                        "2277", "qemu64", "i386")
3448
#bld_kvm_rpm_fedora18_amd64 = getRpmBuilder("kvm-rpm-fedora18-amd64", "vm-fedora18-amd64",
3449
#                                        "2278", "qemu64", "x86_64")
174 by Daniel Bartholomew
Added Fedora 18
3450
490 by Daniel Bartholomew
Deactivate Fedora19 rpm builders
3451
#bld_kvm_rpm_fedora19_x86 = getRpmBuilder("kvm-rpm-fedora19-x86", "vm-fedora19-i386",
3452
#                                        "2289", "qemu64", "i386", ramdisk=False)
3453
#bld_kvm_rpm_fedora19_amd64 = getRpmBuilder("kvm-rpm-fedora19-amd64", "vm-fedora19-amd64",
3454
#                                        "2290", "qemu64", "x86_64", ramdisk=False)
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
3455
585 by Daniel Bartholomew
disable Fedora20 builds
3456
#bld_kvm_rpm_fedora20_x86 = getRpmBuilder("kvm-rpm-fedora20-x86", "vm-fedora20-i386",
3457
#                                        "2291", "qemu64", "i386", ramdisk=False)
3458
#bld_kvm_rpm_fedora20_amd64 = getRpmBuilder("kvm-rpm-fedora20-amd64", "vm-fedora20-amd64",
3459
#                                        "2292", "qemu64", "x86_64", ramdisk=False)
212 by Kristian Nielsen
Misc. changes to buildbot config.
3460
617 by Daniel Bartholomew
automatic maria-master.cfg commit
3461
#bld_kvm_rpm_fedora21_x86 = getRpmBuilder("kvm-rpm-fedora21-x86", "vm-fedora21-i386",
3462
#                                        "2310", "qemu64", "i386", ramdisk=False)
3463
#bld_kvm_rpm_fedora21_amd64 = getRpmBuilder("kvm-rpm-fedora21-amd64", "vm-fedora21-amd64",
3464
#                                        "2311", "qemu64", "x86_64", ramdisk=False)
371 by Daniel Bartholomew
add placeholders for Fedora21
3465
720 by Daniel Bartholomew
automatic maria-master.cfg commit
3466
#bld_kvm_rpm_fedora22_x86 = getRpmBuilder("kvm-rpm-fedora22-x86", "vm-fedora22-i386",
3467
#                                        "2317", "qemu64", "i386", ramdisk=False)
3468
#bld_kvm_rpm_fedora22_amd64 = getRpmBuilder("kvm-rpm-fedora22-amd64", "vm-fedora22-amd64",
3469
#                                        "2318", "qemu64", "x86_64", ramdisk=False)
212 by Kristian Nielsen
Misc. changes to buildbot config.
3470
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
3471
#bld_kvm_rpm_fedora23_x86 = getRpmBuilder("kvm-rpm-fedora23-x86", "vm-fedora23-i386",
3472
#                                        "2321", "qemu64", "i386", ramdisk=False)
3473
#bld_kvm_rpm_fedora23_amd64 = getRpmBuilder("kvm-rpm-fedora23-amd64", "vm-fedora23-amd64",
3474
#                                        "2322", "qemu64", "x86_64", ramdisk=False)
560 by Daniel Bartholomew
Added fedora 23
3475
702 by Daniel Bartholomew
add Fedora24
3476
bld_kvm_rpm_fedora24_x86 = getRpmBuilder("kvm-rpm-fedora24-x86", "vm-fedora24-i386",
3477
                                        "2325", "qemu64", "i386", ramdisk=False)
3478
bld_kvm_rpm_fedora24_amd64 = getRpmBuilder("kvm-rpm-fedora24-amd64", "vm-fedora24-amd64",
3479
                                        "2326", "qemu64", "x86_64", ramdisk=False)
3480
811 by Daniel Bartholomew
Add Fedora 25 builder
3481
bld_kvm_rpm_fedora25_x86 = getRpmBuilder("kvm-rpm-fedora25-x86", "vm-fedora25-i386",
3482
                                        "2337", "qemu64", "i386", ramdisk=False)
3483
bld_kvm_rpm_fedora25_amd64 = getRpmBuilder("kvm-rpm-fedora25-amd64", "vm-fedora25-amd64",
3484
                                        "2338", "qemu64", "x86_64", ramdisk=False)
809 by Daniel Bartholomew
automatic maria-master.cfg commit
3485
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
3486
#bld_kvm_rpm_opensuse12_x86 = getRpmBuilder("kvm-rpm-opensuse12-x86", "vm-opensuse12-i386",
3487
#                                        "2274", "qemu64", "i386")
3488
#bld_kvm_rpm_opensuse12_amd64 = getRpmBuilder("kvm-rpm-opensuse12-amd64", "vm-opensuse12-amd64",
3489
#                                        "2273", "qemu64", "x86_64")
3490
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
3491
# Some kvm images are missing for rhel8-x86
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
3492
#bld_kvm_rpm_rhel6_x86 = getRpmBuilder("kvm-rpm-rhel6-x86", "vm-rhel6-x86",
3493
#                                      "2251", "qemu64", "i386")
3494
#bld_kvm_rpm_rhel6_amd64 = getRpmBuilder("kvm-rpm-rhel6-amd64", "vm-rhel6-amd64",
3495
#                                        "2252", "qemu64", "x86_64")
143 by Kristian Nielsen
Slave naming.
3496
# KVM segfaults on rhel5 kernel sometimes on OpenSUSE 11.4 which is on terrier2,
3497
# so do not use that host.
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
3498
#bld_kvm_rpm_rhel5_x86 = getRpmBuilder("kvm-rpm-rhel5-x86", "vm-rhel5-x86",
3499
#                                        "2253", "qemu64", "i386", slaves=kvm_slaves, ramdisk=False)
3500
#bld_kvm_rpm_rhel5_amd64 = getRpmBuilder("kvm-rpm-rhel5-amd64", "vm-rhel5-amd64",
3501
#                                        "2254", "qemu64", "x86_64", slaves=kvm_slaves, ramdisk=False)
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
3502
346 by Daniel Bartholomew
automatic maria-master.cfg commit
3503
def getGalRpmBuilder(name, kvm_image, port, cpu, arch, slaves=kvm_slaves, ramdisk=True):
601 by Daniel Bartholomew
automatic maria-master.cfg commit
3504
3505
    kvm_build_image = getGaleraBuildImage(kvm_image)
3506
346 by Daniel Bartholomew
automatic maria-master.cfg commit
3507
    distro = name.split('-')[2]
3508
    args = ["--port="+port, "--user=buildbot", "--smp=4", "--cpu="+cpu, "--startup-timeout=600", "--logfile=kernel_"+port+".log"]
3509
    if ramdisk:
3510
        args = args + ["--work-image=/dev/shm/vm-tmp-"+port+".qcow2"]
3511
    rpm_fact = factory.BuildFactory()
3512
    # Delete ../build/* rather than simply * just to be a little safer if we
3513
    # somehow end up running in wrong directory!
3514
    rpm_fact.addStep(ShellCommand(
3515
        description=["cleaning", "build", "dir"],
3516
        descriptionDone=["clean", "build", "dir"],
3517
        command=["sh", "-c", "rm -Rf ../build/*"]))
3518
    rpm_fact.addStep(ShellCommand(
3519
        description=["rsyncing", "VMs"],
3520
        descriptionDone=["rsync", "VMs"],
3521
        doStepIf=(lambda(step): step.getProperty("slavename") != "bb01"),
3522
        haltOnFailure=True,
471 by Daniel Bartholomew
automatic maria-master.cfg commit
3523
        command=["rsync", "-a", "-v", "-L",
601 by Daniel Bartholomew
automatic maria-master.cfg commit
3524
                 "bb01.mariadb.net::kvm/vms/"+kvm_build_image+".qcow2",
346 by Daniel Bartholomew
automatic maria-master.cfg commit
3525
                 "bb01.mariadb.net::kvm/vms/"+kvm_image+"-install.qcow2",
3526
                 "/kvm/vms/"]))
3527
    rpm_fact.addStep(Compile(
3528
        description=["making", "rpms"],
3529
        descriptionDone=["make", "rpms"],
3530
        timeout=7200,
3531
        logfiles={"kernel": "kernel_"+port+".log"},
3532
        warningPattern=gccWarningPattern,
3533
        warningExtractor=Compile.warnExtractFromRegexpGroups,
3534
        suppressionFile=WithProperties("compiler_warnings.supp"),
3535
        env={"TERM": "vt102"},
601 by Daniel Bartholomew
automatic maria-master.cfg commit
3536
        command=["runvm", "--base-image=/kvm/vms/"+kvm_build_image+".qcow2"] + args + ["vm-tmp-"+port+".qcow2",
346 by Daniel Bartholomew
automatic maria-master.cfg commit
3537
        "rm -Rf buildbot && mkdir buildbot",
3538
        WithProperties("""
3539
set -ex
772 by Daniel Bartholomew
automatic maria-master.cfg commit
3540
# Nirbhay: Use system boost
3541
case `hostname` in centos6*) sudo rm -rf /usr/local/src/boost_1_49_0/ ;; esac
346 by Daniel Bartholomew
automatic maria-master.cfg commit
3542
cd buildbot
535 by Daniel Bartholomew
automatic maria-master.cfg commit
3543
mkdir rpms srpms
538 by Daniel Bartholomew
misc changes
3544
git clone -b %(branch)s "https://github.com/MariaDB/galera.git" build
346 by Daniel Bartholomew
automatic maria-master.cfg commit
3545
cd build
535 by Daniel Bartholomew
automatic maria-master.cfg commit
3546
./scripts/build.sh -p
537 by Daniel Bartholomew
automatic maria-master.cfg commit
3547
cp `find *.rpm -maxdepth 1 -type f` ../rpms
346 by Daniel Bartholomew
automatic maria-master.cfg commit
3548
"""),
3549
        "= rm -Rf rpms srpms && mkdir rpms srpms",
538 by Daniel Bartholomew
misc changes
3550
        "= scp -r -P "+port+" "+kvm_scpopt+" buildbot@localhost:buildbot/*rpms .",
346 by Daniel Bartholomew
automatic maria-master.cfg commit
3551
    ]))
539 by Daniel Bartholomew
automatic maria-master.cfg commit
3552
    addPackageUploadStep(rpm_fact, 'rpms')
346 by Daniel Bartholomew
automatic maria-master.cfg commit
3553
    rpm_fact.addStep(Test(
3554
        description=["testing", "install"],
3555
        descriptionDone=["test", "install"],
3556
        logfiles={"kernel": "kernel_"+port+".log"},
3557
        env={"TERM": "vt102"},
3558
        command=["runvm", "--base-image=/kvm/vms/"+kvm_image+"-install.qcow2"] + args + ["vm-tmp-"+port+".qcow2",
3559
        "rm -Rf buildbot && mkdir buildbot",
3560
        "= scp -r -P "+port+" "+kvm_scpopt+" rpms buildbot@localhost:buildbot/",
3561
        WithProperties("""
3562
set -ex
3563
cd buildbot
618 by Daniel Bartholomew
automatic maria-master.cfg commit
3564
sudo yum -y --nogpgcheck install rpms/*.rpm
346 by Daniel Bartholomew
automatic maria-master.cfg commit
3565
garbd --version
3566
""")]))
3567
3568
    return {'name': name, 'slavenames': slaves, 'builddir': name, 'factory': rpm_fact,
3569
            "nextBuild": myNextBuild,
581 by Daniel Bartholomew
automatic maria-master.cfg commit
3570
            "category": "galera"}
346 by Daniel Bartholomew
automatic maria-master.cfg commit
3571
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
3572
#gal_bld_kvm_rpm_centos5_x86 = getGalRpmBuilder("kvm-rpm-centos5-x86-gal", "vm-centos5-i386",
3573
#                                        "3000", "qemu64", "i386", slaves= kvm_slaves, ramdisk=False)
3574
#gal_bld_kvm_rpm_centos5_amd64 = getGalRpmBuilder("kvm-rpm-centos5-amd64-gal", "vm-centos5-amd64",
3575
#                                        "3001", "qemu64", "x86_64", slaves= kvm_slaves, ramdisk=False)
369 by Daniel Bartholomew
automatic maria-master.cfg commit
3576
3577
gal_bld_kvm_rpm_centos6_x86 = getGalRpmBuilder("kvm-rpm-centos6-x86-gal", "vm-centos6-i386",
3578
                                        "3002", "qemu64", "i386", ramdisk=False)
3579
gal_bld_kvm_rpm_centos6_amd64 = getGalRpmBuilder("kvm-rpm-centos6-amd64-gal", "vm-centos6-amd64",
3580
                                        "3003", "qemu64", "x86_64", ramdisk=False)
3581
387 by Daniel Bartholomew
automatic maria-master.cfg commit
3582
gal_bld_kvm_rpm_centos7_amd64 = getGalRpmBuilder("kvm-rpm-centos7-amd64-gal", "vm-centos7-amd64",
369 by Daniel Bartholomew
automatic maria-master.cfg commit
3583
                                        "3004", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False)
3584
888 by Daniel Bartholomew
automatic maria-master.cfg commit
3585
gal_bld_kvm_rpm_centos73_amd64 = getGalRpmBuilder("kvm-rpm-centos73-amd64-gal", "vm-centos73-amd64",
3586
                                        "3056", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False)
3587
890 by Daniel Bartholomew
Add kvm-rpm-centos73-ppc64 and kvm-rpm-centos73-ppc64le builders
3588
gal_bld_kvm_rpm_centos73_ppc64 = getGalRpmBuilder("kvm-rpm-centos73-ppc64-gal", "vm-centos73-ppc64",
3589
                                        "3057", "POWER8", "ppc64", slaves=["p801"], ramdisk=False)
3590
3591
gal_bld_kvm_rpm_centos73_ppc64le = getGalRpmBuilder("kvm-rpm-centos73-ppc64le-gal", "vm-centos73-ppc64le",
3592
                                        "3058", "POWER8", "ppc64le", slaves=["p801"], ramdisk=False)
3593
490 by Daniel Bartholomew
Deactivate Fedora19 rpm builders
3594
#gal_bld_kvm_rpm_fedora19_x86 = getGalRpmBuilder("kvm-rpm-fedora19-x86-gal", "vm-fedora19-i386",
3595
#                                        "3005", "qemu64", "i386", ramdisk=False)
3596
#gal_bld_kvm_rpm_fedora19_amd64 = getGalRpmBuilder("kvm-rpm-fedora19-amd64-gal", "vm-fedora19-amd64",
3597
#                                        "3006", "qemu64", "x86_64", ramdisk=False)
369 by Daniel Bartholomew
automatic maria-master.cfg commit
3598
585 by Daniel Bartholomew
disable Fedora20 builds
3599
#gal_bld_kvm_rpm_fedora20_x86 = getGalRpmBuilder("kvm-rpm-fedora20-x86-gal", "vm-fedora20-i386",
3600
#                                        "3007", "qemu64", "i386", ramdisk=False)
3601
#gal_bld_kvm_rpm_fedora20_amd64 = getGalRpmBuilder("kvm-rpm-fedora20-amd64-gal", "vm-fedora20-amd64",
3602
#                                        "3008", "qemu64", "x86_64", ramdisk=False)
369 by Daniel Bartholomew
automatic maria-master.cfg commit
3603
617 by Daniel Bartholomew
automatic maria-master.cfg commit
3604
#gal_bld_kvm_rpm_fedora21_x86 = getGalRpmBuilder("kvm-rpm-fedora21-x86-gal", "vm-fedora21-i386",
3605
#                                        "3011", "qemu64", "i386", ramdisk=False)
3606
#gal_bld_kvm_rpm_fedora21_amd64 = getGalRpmBuilder("kvm-rpm-fedora21-amd64-gal", "vm-fedora21-amd64",
3607
#                                        "3012", "qemu64", "x86_64", ramdisk=False)
371 by Daniel Bartholomew
add placeholders for Fedora21
3608
720 by Daniel Bartholomew
automatic maria-master.cfg commit
3609
#gal_bld_kvm_rpm_fedora22_x86 = getGalRpmBuilder("kvm-rpm-fedora22-x86-gal", "vm-fedora22-i386",
3610
#                                        "3017", "qemu64", "i386", ramdisk=False)
3611
#gal_bld_kvm_rpm_fedora22_amd64 = getGalRpmBuilder("kvm-rpm-fedora22-amd64-gal", "vm-fedora22-amd64",
3612
#                                        "3018", "qemu64", "x86_64", ramdisk=False)
544 by Daniel Bartholomew
Add Fedora 22
3613
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
3614
#gal_bld_kvm_rpm_fedora23_x86 = getGalRpmBuilder("kvm-rpm-fedora23-x86-gal", "vm-fedora23-i386",
3615
#                                        "3019", "qemu64", "i386", ramdisk=False)
3616
#gal_bld_kvm_rpm_fedora23_amd64 = getGalRpmBuilder("kvm-rpm-fedora23-amd64-gal", "vm-fedora23-amd64",
3617
#                                        "3020", "qemu64", "x86_64", ramdisk=False)
560 by Daniel Bartholomew
Added fedora 23
3618
702 by Daniel Bartholomew
add Fedora24
3619
gal_bld_kvm_rpm_fedora24_x86 = getGalRpmBuilder("kvm-rpm-fedora24-x86-gal", "vm-fedora24-i386",
3620
                                        "3043", "qemu64", "i386", ramdisk=False)
3621
gal_bld_kvm_rpm_fedora24_amd64 = getGalRpmBuilder("kvm-rpm-fedora24-amd64-gal", "vm-fedora24-amd64",
3622
                                        "3044", "qemu64", "x86_64", ramdisk=False)
3623
811 by Daniel Bartholomew
Add Fedora 25 builder
3624
gal_bld_kvm_rpm_fedora25_x86 = getGalRpmBuilder("kvm-rpm-fedora25-x86-gal", "vm-fedora25-i386",
3625
                                        "3051", "qemu64", "i386", ramdisk=False)
3626
gal_bld_kvm_rpm_fedora25_amd64 = getGalRpmBuilder("kvm-rpm-fedora25-amd64-gal", "vm-fedora25-amd64",
3627
                                        "3052", "qemu64", "x86_64", ramdisk=False)
3628
618 by Daniel Bartholomew
automatic maria-master.cfg commit
3629
#gal_bld_kvm_rpm_rhel5_x86 = getGalRpmBuilder("kvm-rpm-rhel5-x86-gal", "vm-rhel5-x86",
3630
#                                        "3009", "qemu64", "i386", slaves=kvm_slaves, ramdisk=False)
3631
#gal_bld_kvm_rpm_rhel5_amd64 = getGalRpmBuilder("kvm-rpm-rhel5-amd64-gal", "vm-rhel5-amd64",
3632
#                                        "3010", "qemu64", "x86_64", slaves=kvm_slaves, ramdisk=False)
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
3633
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3634
3635
#-------------------------------------------------------------------------------
3636
# SUSE and openSUSE package factory
3637
#-------------------------------------------------------------------------------
456 by Daniel Bartholomew
automatic maria-master.cfg commit
3638
def getZypBuilder(name, kvm_image, port, cpu, arch, slaves=kvm_slaves, ramdisk=True, catg="main"):
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3639
    distro = name.split('-')[2]
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3640
    m = re.search("^([A-Za-z]+)([0-9]*)",distro)
3641
    if m:
3642
        dist_name = m.group(1)
3643
        dist_num = m.group(2)
379 by Daniel Bartholomew
automatic maria-master.cfg commit
3644
384 by Daniel Bartholomew
automatic maria-master.cfg commit
3645
    # dbart: reverted Nirbhay's change below, -build-copy.qcow2 naming messes
3646
    #        up other parts, moved *-build-copy.qcow2 images to *-build.qcow2
379 by Daniel Bartholomew
automatic maria-master.cfg commit
3647
    # Nirbhay: Only kvm_image + "-build-copy.qcow2" images have the required toolchain.  
384 by Daniel Bartholomew
automatic maria-master.cfg commit
3648
    kvm_build_image = kvm_image + "-build.qcow2"
3649
    #if "opensuse" in name :
3650
    #    kvm_build_image = kvm_image + "-build.qcow2"
3651
    #else:
3652
    #    kvm_build_image = kvm_image + "-build-copy.qcow2"
3653
379 by Daniel Bartholomew
automatic maria-master.cfg commit
3654
    kvm_install_image = kvm_image + "-install.qcow2"
3655
 
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3656
    args = ["--port="+port, "--user=buildbot", "--smp=4", "--cpu="+cpu, "--startup-timeout=600", "--logfile=kernel_"+port+".log"]
3657
    if ramdisk:
3658
        args = args + ["--work-image=/dev/shm/vm-tmp-"+port+".qcow2"]
3659
    zyp_fact = factory.BuildFactory()
3660
    # Delete ../build/* rather than simply * just to be a little safer if we
3661
    # somehow end up running in wrong directory!
3662
    zyp_fact.addStep(ShellCommand(
3663
        description=["cleaning", "build", "dir"],
3664
        descriptionDone=["clean", "build", "dir"],
3665
        command=["sh", "-c", "rm -Rf ../build/*"]))
3666
    zyp_fact.addStep(ShellCommand(
3667
        description=["rsyncing", "VMs"],
3668
        descriptionDone=["rsync", "VMs"],
3669
        doStepIf=(lambda(step): step.getProperty("slavename") != "bb01"),
3670
        haltOnFailure=True,
471 by Daniel Bartholomew
automatic maria-master.cfg commit
3671
        command=["rsync", "-a", "-v", "-L",
379 by Daniel Bartholomew
automatic maria-master.cfg commit
3672
                 "bb01.mariadb.net::kvm/vms/"+kvm_build_image,
3673
                 "bb01.mariadb.net::kvm/vms/"+kvm_install_image,
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3674
                 "/kvm/vms/"]))
362 by Daniel Bartholomew
automatic maria-master.cfg commit
3675
    zyp_fact.addStep(DownloadSourceTarball())
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3676
    zyp_fact.addStep(FileDownload(
3677
        mastersrc=WithProperties("%(bakerypath)s"),
3678
        slavedest=WithProperties("%(bakery)s.tar.gz"),
385 by Kristian Nielsen
Increase upload block size in an attempt to get better transfer speed.
3679
        blocksize=524288,
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3680
        doStepIf=branch_is_5_123))
3681
    zyp_fact.addStep(ShellCommand(
3682
        description=["getting", ".supp"],
3683
        descriptionDone=["get", ".supp"],
3684
        command=["sh", "-c", WithProperties("""
3685
rm -f compiler_warnings.supp
688 by Daniel Bartholomew
automatic maria-master.cfg commit
3686
#tar zxf "%(distname)s" --strip 2 "$(basename %(distname)s .tar.gz)/support-files/compiler_warnings.supp"
3687
tar zxf "/tmp/buildcache/%(tarbuildnum)s:%(distname)s" --strip 2 "$(basename %(distname)s .tar.gz)/support-files/compiler_warnings.supp"
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3688
exit 0  # best-effort, not fatal if no suppression file
3689
""")]))
3690
    zyp_fact.addStep(Compile(
3691
        description=["making", "rpms"],
3692
        descriptionDone=["make", "rpms"],
3693
        timeout=7200,
3694
        logfiles={"kernel": "kernel_"+port+".log"},
3695
        warningPattern=gccWarningPattern,
3696
        warningExtractor=Compile.warnExtractFromRegexpGroups,
3697
        suppressionFile=WithProperties("compiler_warnings.supp"),
3698
        env={"TERM": "vt102"},
379 by Daniel Bartholomew
automatic maria-master.cfg commit
3699
        command=["runvm", "--base-image=/kvm/vms/"+kvm_build_image] + args + ["vm-tmp-"+port+".qcow2",
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3700
        "rm -Rf buildbot && mkdir buildbot",
362 by Daniel Bartholomew
automatic maria-master.cfg commit
3701
        ScpSourceIntoVM(port),
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3702
        #WithProperties("= case '%(branch)s' in *5\\.[123]*) scp -P "+port+" "+kvm_scpopt+" %(bakery)s.tar.gz buildbot@localhost:buildbot/ ;; esac"),
3703
        WithProperties("""
3704
set -ex
3705
cd buildbot
3706
mkdir build
3707
cd build
3708
mkdir rpms srpms
3709
case "%(branch)s" in
3710
*5\\.[123]*)
3711
  tar zxf ../%(bakery)s.tar.gz
3712
  cd %(bakery)s
3713
  sudo RPM_SKIP_SIGN=1 bakery/autobake51-centos.sh ../../%(distname)s
3714
  sudo mv /usr/src/redhat/RPMS/*/*.rpm ../rpms/
3715
  sudo mv /usr/src/redhat/SRPMS/*.rpm ../srpms/
3716
  ;;
3717
*)
3718
  tar zxf "../%(distname)s"
3719
  cd "%(distdirname)s"
3720
  cmake .  -DBUILD_CONFIG=mysql_release -DRPM=""" + distro + """
3721
  umask 022
3722
  make package VERBOSE=1
3723
  mv *.rpm ../rpms/
3724
  ;;
3725
esac
3726
"""),
3727
        "= rm -Rf rpms srpms && mkdir rpms srpms",
3728
        "= scp -r -P "+port+" "+kvm_scpopt+" buildbot@localhost:buildbot/build/*rpms .",
3729
    ]))
3730
    addPackageArchiveStep(zyp_fact, "rpms srpms", "%(tarbuildnum)s")
3731
    dist_arch= name.split('-')[2] + "-" + name.split('-')[3]
3732
545 by Daniel Bartholomew
automatic maria-master.cfg commit
3733
    zyp_fact.addStep(SetPropertyFromCommand(property="systemdCapability", command="echo no"))
3734
    zyp_fact.addStep(SetPropertyFromCommand(
3735
        doStepIf=(lambda(step): in_systemdBuilders(step)),
3736
        property="systemdCapability",
3737
        command="echo yes"))
3738
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3739
    zyp_fact.addStep(Test(
824 by Daniel Bartholomew
automatic maria-master.cfg commit
3740
        name="install",
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3741
        description=["testing", "install"],
3742
        descriptionDone=["test", "install"],
824 by Daniel Bartholomew
automatic maria-master.cfg commit
3743
        warningPattern=".*Install warning:.*",
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3744
        logfiles={"kernel": "kernel_"+port+".log"},
3745
        env={"TERM": "vt102"},
379 by Daniel Bartholomew
automatic maria-master.cfg commit
3746
        command=["runvm", "--base-image=/kvm/vms/"+kvm_install_image] + args + ["vm-tmp-"+port+".qcow2",
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3747
        "rm -Rf buildbot && mkdir buildbot",
3748
        "= scp -r -P "+port+" "+kvm_scpopt+" rpms buildbot@localhost:buildbot/",
3749
        "sudo rm -rf /tmp/VERSION",
556 by Daniel Bartholomew
automatic maria-master.cfg commit
3750
        WithProperties("sh -c \"echo '%(branch)s' | sed -e \\\"s/.*\\\\(5\\\\.[1-356]\\\\|10\\\\.[01]\\\\).*/\\\\1/\\\"\" > /tmp/VERSION"),
543 by Daniel Bartholomew
automatic maria-master.cfg commit
3751
        WithProperties("""
3752
set -ex
3753
cd buildbot
704 by Daniel Bartholomew
automatic maria-master.cfg commit
3754
case "%(branch)s" in
3755
*mdev10416*)
3756
  sudo cat /etc/sysconfig/selinux | grep SELINUX || true
3757
  sudo sh -c \"PATH=$PATH:/usr/sbin getenforce || true\"
3758
  sudo sh -c \"PATH=$PATH:/usr/sbin setenforce Enforcing || true\"
3759
  sudo sh -c \"PATH=$PATH:/usr/sbin getenforce || true\"
3760
  ;;
3761
esac
546 by Daniel Bartholomew
automatic maria-master.cfg commit
3762
rpm -qa | { grep -iE 'maria|mysql|galera' || true; }
543 by Daniel Bartholomew
automatic maria-master.cfg commit
3763
case "%(branch)s" in
898 by Daniel Bartholomew
automatic maria-master.cfg commit
3764
*10.[1-9]*)
635 by Daniel Bartholomew
automatic maria-master.cfg commit
3765
  sudo sh -c "echo '[galera]
3766
name=galera
3767
baseurl=http://yum.mariadb.org/galera/repo/rpm/""" + dist_arch + """
3768
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
3769
gpgcheck=1' > /etc/zypp/repos.d/galera.repo"
3770
  sudo cat /etc/zypp/repos.d/galera.repo
3771
3772
  sudo zypper --no-refresh --no-gpg-checks install -y rpms/*.rpm
3773
  sudo /etc/init.d/mysql restart
3774
  galera_path=`echo /usr/lib*/galera/libgalera_smm.so`
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3775
3776
case "%(branch)s" in
3777
*10.[12]e*)
3778
  sudo mysql -uroot -e 'create database test; use test; create table t(a int primary key) engine=innodb; insert into t values (1); select * from t; drop table t;set global wsrep_provider="'$galera_path'"; set global wsrep_cluster_address="gcomm://";show status like "wsrep%%"'
3779
  ;;
3780
*)
635 by Daniel Bartholomew
automatic maria-master.cfg commit
3781
  mysql -uroot -e 'use test; create table t(a int primary key) engine=innodb; insert into t values (1); select * from t; drop table t;set global wsrep_provider="'$galera_path'"; set global wsrep_cluster_address="gcomm://";show status like "wsrep%%"'
3782
  ;;
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3783
esac
3784
3785
  ;;
635 by Daniel Bartholomew
automatic maria-master.cfg commit
3786
*galera*)
3787
  sudo sh -c "echo '[galera]
3788
name=galera
3789
baseurl=http://yum.mariadb.org/galera/repo/rpm/""" + dist_arch + """
3790
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
3791
gpgcheck=1' > /etc/zypp/repos.d/galera.repo"
3792
  sudo cat /etc/zypp/repos.d/galera.repo
3793
543 by Daniel Bartholomew
automatic maria-master.cfg commit
3794
  sudo sh -c "echo '[mariadb]
3795
name=MariaDB
635 by Daniel Bartholomew
automatic maria-master.cfg commit
3796
baseurl=http://yum.mariadb.org/$(cat /tmp/VERSION)/""" + dist_arch + """
543 by Daniel Bartholomew
automatic maria-master.cfg commit
3797
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
3798
gpgcheck=1' > /etc/zypp/repos.d/MariaDB.repo"
3799
  sudo cat /etc/zypp/repos.d/MariaDB.repo
635 by Daniel Bartholomew
automatic maria-master.cfg commit
3800
543 by Daniel Bartholomew
automatic maria-master.cfg commit
3801
  sudo zypper --no-refresh --no-gpg-checks install -y rpms/*.rpm
3802
  sudo /etc/init.d/mysql restart
3803
  galera_path=`echo /usr/lib*/galera/libgalera_smm.so`
3804
  mysql -uroot -e 'use test; create table t(a int primary key) engine=innodb; insert into t values (1); select * from t; drop table t;set global wsrep_provider="'$galera_path'"; set global wsrep_cluster_address="gcomm://";show status like "wsrep%%"'
3805
  ;;
3806
*)
3807
  sudo zypper --no-refresh --no-gpg-checks install -y rpms/*.rpm
545 by Daniel Bartholomew
automatic maria-master.cfg commit
3808
  case "%(systemdCapability)s" in
3809
yes)
546 by Daniel Bartholomew
automatic maria-master.cfg commit
3810
  # Service is installed
3811
  ls -l /usr/lib/systemd/system/mariadb.service
3812
  # RPMs do not start server automatically on clean install
3813
  sudo systemctl start mariadb
548 by Daniel Bartholomew
automatic maria-master.cfg commit
3814
3815
  echo "---- Check permissions - all of the following should fail ----"
3816
  ! systemctl --no-ask-password stop mariadb
3817
  ! systemctl --no-ask-password condrestart mariadb
3818
  ! systemctl --no-ask-password start mariadb
3819
  ! systemctl --no-ask-password enable mariadb
549 by Daniel Bartholomew
automatic maria-master.cfg commit
3820
  ! systemctl --no-ask-password set-environment MYSQLD_OPTS="--unknown-option"
3821
  ! systemctl --no-ask-password unset-environment MYSQLD_OPTS
548 by Daniel Bartholomew
automatic maria-master.cfg commit
3822
  ! systemctl --no-ask-password restart mariadb
3823
3824
  echo "---- Now use proper permissions ---"
546 by Daniel Bartholomew
automatic maria-master.cfg commit
3825
  # mariadb.service and its synonyms
704 by Daniel Bartholomew
automatic maria-master.cfg commit
3826
  systemctl status mariadb.service --no-pager
3827
  systemctl status mariadb.service --no-pager | grep Loaded | grep mariadb.service
3828
  systemctl status mariadb --no-pager
3829
  systemctl status mariadb --no-pager | grep Loaded | grep mariadb.service
3830
  systemctl status mysql --no-pager
3831
  systemctl status mysql --no-pager | grep Loaded | grep mariadb.service
3832
  systemctl status mysqld --no-pager
3833
  systemctl status mysqld --no-pager | grep Loaded | grep mariadb.service
548 by Daniel Bartholomew
automatic maria-master.cfg commit
3834
546 by Daniel Bartholomew
automatic maria-master.cfg commit
3835
  sudo systemctl stop mariadb
3836
  !  ps -ef | grep mysqld | grep -v grep
553 by Daniel Bartholomew
automatic maria-master.cfg commit
3837
  sleep 5
546 by Daniel Bartholomew
automatic maria-master.cfg commit
3838
  # condrestart part 1: does nothing when server is not running
553 by Daniel Bartholomew
automatic maria-master.cfg commit
3839
  ##sudo systemctl condrestart mariadb
3840
  #!  ps -ef | grep mysqld | grep -v grep
546 by Daniel Bartholomew
automatic maria-master.cfg commit
3841
  # start works under root
3842
  sudo systemctl start mariadb
3843
  ps -ef | grep mysqld | grep -v grep
3844
  # is-enabled, disable, enable
3845
  systemctl is-enabled mariadb
559 by Daniel Bartholomew
automatic maria-master.cfg commit
3846
  # MDEV-8956
3847
  #sudo systemctl disable mariadb
3848
  #! systemctl is-enabled mariadb
3849
  #sudo systemctl enable mariadb
3850
  #systemctl is-enabled mariadb
546 by Daniel Bartholomew
automatic maria-master.cfg commit
3851
  # set-environment: add an unknown option
549 by Daniel Bartholomew
automatic maria-master.cfg commit
3852
  sudo systemctl set-environment MYSQLD_OPTS="--unknown-option"
546 by Daniel Bartholomew
automatic maria-master.cfg commit
3853
  # condrestart part 2: attempts to restart when server is running
3854
  ! sudo systemctl condrestart mariadb
3855
  # unset-environment
549 by Daniel Bartholomew
automatic maria-master.cfg commit
3856
  sudo systemctl unset-environment MYSQLD_OPTS
546 by Daniel Bartholomew
automatic maria-master.cfg commit
3857
  # Restart
3858
  sudo systemctl restart mariadb
549 by Daniel Bartholomew
automatic maria-master.cfg commit
3859
  sudo systemctl set-environment MYSQLD_OPTS="--unknown-option"
546 by Daniel Bartholomew
automatic maria-master.cfg commit
3860
  ! sudo systemctl restart mariadb
549 by Daniel Bartholomew
automatic maria-master.cfg commit
3861
  sudo systemctl unset-environment MYSQLD_OPTS
546 by Daniel Bartholomew
automatic maria-master.cfg commit
3862
  # Status shows proper text
704 by Daniel Bartholomew
automatic maria-master.cfg commit
3863
  systemctl status mariadb --no-pager | grep 'MariaDB server is down'
546 by Daniel Bartholomew
automatic maria-master.cfg commit
3864
  sudo systemctl start mariadb
704 by Daniel Bartholomew
automatic maria-master.cfg commit
3865
  systemctl status mariadb --no-pager | grep 'Taking your SQL requests now'
546 by Daniel Bartholomew
automatic maria-master.cfg commit
3866
  # See the journal
704 by Daniel Bartholomew
automatic maria-master.cfg commit
3867
  sudo systemctl -l status mariadb.service --no-pager
546 by Daniel Bartholomew
automatic maria-master.cfg commit
3868
  ! journalctl -lxn 100 | grep mysqld
3869
  sudo journalctl -lxn 100 --no-pager | grep mysqld
3870
  # Init.d script
3871
  ls -l /etc/init.d/mysql
3872
  ls -l /etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf
3873
  # It does not do the same as systemctl now
3874
  # /etc/init.d/mysql status
545 by Daniel Bartholomew
automatic maria-master.cfg commit
3875
    ;;
3876
no)
3877
    echo "Steps related to systemd will be skipped"
3878
    sudo service mysql restart
3879
    ;;
543 by Daniel Bartholomew
automatic maria-master.cfg commit
3880
*)
545 by Daniel Bartholomew
automatic maria-master.cfg commit
3881
    echo "It should never happen, check your configuration (systemdCapability property is not set or is set to a wrong value)"
3882
    ;;
3883
  esac
546 by Daniel Bartholomew
automatic maria-master.cfg commit
3884
  mysql -e "select @@version, @@version_comment"
543 by Daniel Bartholomew
automatic maria-master.cfg commit
3885
  mysql -e "use test; create table t(a int primary key) engine=innodb; insert into t values (1); select * from t; drop table t"
3886
  ;;
3887
esac
3888
""")]))
3889
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3890
#############################
3891
##### New step: minor upgrade
3892
3893
    zyp_fact.addStep(Test(
824 by Daniel Bartholomew
automatic maria-master.cfg commit
3894
        doStepIf=(lambda(step): branch_is_not_galera(step)),
3895
        name="upgrade",
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3896
        description=["testing", "minor upgrade"],
3897
        descriptionDone=["test", "minor upgrade"],
824 by Daniel Bartholomew
automatic maria-master.cfg commit
3898
        warningPattern=".*Upgrade warning:.*",
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3899
        logfiles={"kernel": "kernel_"+port+".log"},
3900
        env={"TERM": "vt102"},
379 by Daniel Bartholomew
automatic maria-master.cfg commit
3901
        command=["runvm", "--base-image=/kvm/vms/"+kvm_install_image] + args + ["vm-tmp-"+port+".qcow2",
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3902
        "rm -Rf buildbot && mkdir buildbot",
3903
        "= scp -r -P "+port+" "+kvm_scpopt+" rpms buildbot@localhost:buildbot/",
3904
        WithProperties("""
3905
set -ex
3906
cd buildbot
824 by Daniel Bartholomew
automatic maria-master.cfg commit
3907
3908
dist_arch=""" + dist_arch + """
3909
3910
# MariaDB version
3911
mariadb_version=`echo "%(branch)s" | sed -e "s/.*\(5\.[1-356]\|10\.[0-9]\).*/\\1/"`
3912
3913
# Check that there is a previous version to install
3914
if ! wget http://yum.mariadb.org/$mariadb_version/$dist_arch
3915
then
3916
  echo "Upgrade warning"": could not find a previous version in MariaDB repo, skipping the test"
3917
  exit
3918
fi
3919
704 by Daniel Bartholomew
automatic maria-master.cfg commit
3920
case "%(branch)s" in
3921
*mdev10416*)
3922
  sudo cat /etc/sysconfig/selinux | grep SELINUX || true
3923
  sudo sh -c \"PATH=$PATH:/usr/sbin getenforce || true\"
3924
  sudo sh -c \"PATH=$PATH:/usr/sbin setenforce Enforcing || true\"
3925
  sudo sh -c \"PATH=$PATH:/usr/sbin getenforce || true\"
3926
  ;;
3927
esac
546 by Daniel Bartholomew
automatic maria-master.cfg commit
3928
rpm -qa | { grep -iE 'maria|mysql|galera' || true; }
824 by Daniel Bartholomew
automatic maria-master.cfg commit
3929
ls /etc/zypp/repos.d/* | grep -iE '(maria|galera)' | xargs -r sudo rm -f
3930
 sudo sh -c "echo '[mariadb]
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3931
name=MariaDB
824 by Daniel Bartholomew
automatic maria-master.cfg commit
3932
baseurl=http://yum.mariadb.org/$mariadb_version/$dist_arch
325 by Daniel Bartholomew
Initial openSUSE package build factory.
3933
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
3934
gpgcheck=1' > /etc/zypp/repos.d/MariaDB.repo"
3935
  sudo cat /etc/zypp/repos.d/MariaDB.repo
3936
  sudo zypper clean --all
650 by Daniel Bartholomew
automatic maria-master.cfg commit
3937
  #sudo zypper -q --no-gpg-checks install -y  MariaDB-server MariaDB-client MariaDB-shared 
707 by Daniel Bartholomew
automatic maria-master.cfg commit
3938
  sudo zypper --no-gpg-checks install --from mariadb -y  MariaDB-server MariaDB-client
650 by Daniel Bartholomew
automatic maria-master.cfg commit
3939
  sudo service mysql start
3940
  mysql -uroot -e "select @@version, @@version_comment; use test; create table t(a int primary key) engine=innodb; insert into t values (1); select * from t;"
3941
  mysql -uroot --skip-column-names -e "select @@version" | awk -F'-' '{ print $1 }' > /tmp/version.old
3942
  sudo zypper --no-refresh --no-gpg-checks install -y rpms/*.rpm
3943
  mysql -uroot -e "select @@version, @@version_comment"
3944
  mysql -uroot --skip-column-names -e "select @@version" | awk -F'-' '{ print $1 }' > /tmp/version.new
3945
  # Version has changed after upgrade
3946
  ! diff -u  /tmp/version.old  /tmp/version.new
3947
  # RPMs do not run mysql_upgrade automatically
3948
  # cat /var/lib/mysql/mysql_upgrade_info | awk -F'-' '{ print $1 }' > /tmp/version.upgrade
3949
  # mysql_upgrade is run automatically in deb packages
3950
  # diff -u /tmp/version.new /tmp/version.upgrade
3951
case "%(systemdCapability)s" in
3952
yes)
3953
  ls -l /usr/lib/systemd/system/mariadb.service
3954
  ls -l /etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf
3955
  ls -l /etc/init.d/mysql
704 by Daniel Bartholomew
automatic maria-master.cfg commit
3956
  systemctl status mariadb.service --no-pager
3957
  systemctl status mariadb --no-pager
3958
  systemctl status mysql --no-pager
3959
  systemctl status mysqld --no-pager
650 by Daniel Bartholomew
automatic maria-master.cfg commit
3960
  systemctl is-enabled mariadb
3961
  sudo systemctl restart mariadb
704 by Daniel Bartholomew
automatic maria-master.cfg commit
3962
  systemctl status mariadb --no-pager
650 by Daniel Bartholomew
automatic maria-master.cfg commit
3963
  sudo journalctl -lxn 100 --no-pager | grep mysqld
3964
  # It does not do the same as systemctl now
3965
  # /etc/init.d/mysql status
3966
  ;;
3967
no)
3968
  echo "Steps related to systemd will be skipped"
3969
  ;;
3970
*)
3971
  echo "It should never happen, check your configuration (systemdCapability property is not set or is set to a wrong value)"
3972
  ;;
3973
esac
3974
  mysql -e "select @@version, @@version_comment; use test; insert into t values (2); select * from t; drop table t"
3975
""")]))
3976
##### End of minor upgrade step
3977
#############################
652 by Daniel Bartholomew
automatic maria-master.cfg commit
3978
654 by Daniel Bartholomew
automatic maria-master.cfg commit
3979
# Upgrade from MariaDB 10.1
3980
3981
    zyp_fact.addStep(
3982
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
3983
            action="update", 
3984
            upgrade_from="MariaDB 10.1 (server, client)", 
3985
            old_packages="MariaDB-server MariaDB-client", 
3986
            new_packages="MariaDB-server MariaDB-client",
3987
            doStepIf=rpm_test_branch
3988
        )
3989
    )
3990
    zyp_fact.addStep(
3991
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
3992
            action="install", 
3993
            upgrade_from="MariaDB 10.1 (server, client)", 
3994
            old_packages="MariaDB-server MariaDB-client", 
3995
            new_packages="MariaDB-server MariaDB-client",
3996
            doStepIf=rpm_test_branch
3997
        )
3998
    )
3999
    zyp_fact.addStep(
4000
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
4001
            action="update", 
4002
            upgrade_from="MariaDB 10.1 (all packages)", 
4003
            old_packages="MariaDB-*", 
4004
            new_packages="MariaDB-*",
4005
            doStepIf=rpm_test_branch
4006
        )
4007
    )
4008
    zyp_fact.addStep(
4009
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
4010
            action="install", 
4011
            upgrade_from="MariaDB 10.1 (all packages)", 
4012
            old_packages="MariaDB-*", 
4013
            new_packages="MariaDB-*",
4014
            doStepIf=rpm_test_branch
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4015
        )
4016
    )
4017
    zyp_fact.addStep(
4018
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4019
            action="dist-upgrade", 
4020
            upgrade_from="MariaDB 10.1", 
4021
            old_packages="MariaDB-*", 
4022
            new_packages="",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4023
            doStepIf=rpm_test_branch
4024
        )
4025
    )
4026
4027
# Upgrade from MariaDB 10.0
4028
4029
    zyp_fact.addStep(
4030
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
4031
            action="update", 
4032
            upgrade_from="MariaDB 10.0 (server, client)", 
4033
            old_packages="MariaDB-server MariaDB-client", 
4034
            new_packages="MariaDB-server MariaDB-client",
4035
            doStepIf=rpm_test_branch
4036
        )
4037
    )
4038
    zyp_fact.addStep(
4039
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
4040
            action="install", 
4041
            upgrade_from="MariaDB 10.0 (server, client)", 
4042
            old_packages="MariaDB-server MariaDB-client", 
4043
            new_packages="MariaDB-server MariaDB-client",
4044
            doStepIf=rpm_test_branch
4045
        )
4046
    )
4047
    zyp_fact.addStep(
4048
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
4049
            action="update", 
4050
            upgrade_from="MariaDB 10.0 (all packages)", 
4051
            old_packages="MariaDB-client MariaDB-common MariaDB-devel MariaDB-server MariaDB-shared MariaDB-test MariaDB-*-engine", 
4052
            new_packages="MariaDB-*",
4053
            doStepIf=rpm_test_branch
4054
        )
4055
    )
4056
    # This step fails on opensuse 13 x86_64 and SLES11 x86)64 due to MDEV-9850
4057
    zyp_fact.addStep(
4058
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
4059
            action="install", 
4060
            upgrade_from="MariaDB 10.0 (all packages)", 
4061
            old_packages="MariaDB-client MariaDB-common MariaDB-devel MariaDB-server MariaDB-shared MariaDB-test MariaDB-*-engine", 
4062
            new_packages="MariaDB-*",
4063
            doStepIf=rpm_test_branch
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4064
        )
4065
    )
4066
    zyp_fact.addStep(
4067
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4068
            action="dist-upgrade", 
4069
            upgrade_from="MariaDB 10.0", 
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4070
            old_packages="MariaDB-client MariaDB-common MariaDB-devel MariaDB-server MariaDB-shared MariaDB-test MariaDB-*-engine", 
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4071
            new_packages="",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4072
            doStepIf=rpm_test_branch
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4073
        )
4074
    )
4075
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4076
# Upgrade from Galera 10.0
4077
4078
    # This step doesn't work due to MDEV-9807
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4079
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4080
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4081
            action="update", 
4082
            upgrade_from="MariaDB 10.0 Galera", 
4083
            old_packages="MariaDB-Galera-server MariaDB-client", 
4084
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4085
            doStepIf=rpm_test_branch
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4086
        )
4087
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4088
    # Restart is needed because of MDEV-9797
4089
    # On openSUSE 13 manual restart does not work
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4090
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4091
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4092
            action="install", 
4093
            upgrade_from="MariaDB 10.0 Galera", 
4094
            old_packages="MariaDB-Galera-server MariaDB-client", 
4095
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4096
            manual_restart=1,
4097
            doStepIf=rpm_test_branch
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4098
        )
4099
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4100
    # Restart is needed because of MDEV-9797
4101
    # On openSUSE 13 manual restart does not work
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4102
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4103
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4104
            action="dist-upgrade", 
4105
            upgrade_from="MariaDB 10.0 Galera", 
4106
            old_packages="MariaDB-Galera-server MariaDB-client", 
4107
            new_packages="",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4108
            manual_restart=1,
4109
            doStepIf=rpm_test_branch
4110
        )
4111
    )
4112
4113
# Upgrade from MariaDB 5.5
4114
4115
    zyp_fact.addStep(
4116
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
4117
            action="update", 
4118
            upgrade_from="MariaDB 5.5 (server, client)", 
4119
            old_packages="MariaDB-server MariaDB-client", 
4120
            new_packages="MariaDB-server MariaDB-client",
4121
            doStepIf=rpm_test_branch
4122
        )
4123
    )
4124
    zyp_fact.addStep(
4125
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
4126
            action="install", 
4127
            upgrade_from="MariaDB 5.5 (server, client)", 
4128
            old_packages="MariaDB-server MariaDB-client", 
4129
            new_packages="MariaDB-server MariaDB-client",
4130
            doStepIf=rpm_test_branch
4131
        )
4132
    )
4133
    zyp_fact.addStep(
4134
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
4135
            action="update", 
4136
            upgrade_from="MariaDB 5.5 (all packages)", 
4137
            old_packages="MariaDB-client MariaDB-common MariaDB-devel MariaDB-server MariaDB-shared MariaDB-test", 
4138
            new_packages="MariaDB-*",
4139
            doStepIf=rpm_test_branch
4140
        )
4141
    )
4142
    zyp_fact.addStep(
4143
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
4144
            action="install", 
4145
            upgrade_from="MariaDB 5.5 (all packages)", 
4146
            old_packages="MariaDB-client MariaDB-common MariaDB-devel MariaDB-server MariaDB-shared MariaDB-test", 
4147
            new_packages="MariaDB-*",
4148
            doStepIf=rpm_test_branch
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4149
        )
4150
    )
4151
    zyp_fact.addStep(
4152
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4153
            action="dist-upgrade", 
4154
            upgrade_from="MariaDB 5.5", 
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4155
            old_packages="MariaDB-client MariaDB-common MariaDB-devel MariaDB-server MariaDB-shared MariaDB-test", 
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4156
            new_packages="",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4157
            doStepIf=rpm_test_branch
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4158
        )
4159
    )
4160
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4161
# Upgrade from Galera 5.5
4162
4163
    # This step does not work because of MDEV-9807
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4164
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4165
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4166
            action="update", 
4167
            upgrade_from="MariaDB 5.5 Galera", 
4168
            old_packages="MariaDB-Galera-server MariaDB-client", 
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4169
            new_packages="MariaDB-server MariaDB-client",
4170
            doStepIf=rpm_test_branch
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4171
        )
4172
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4173
    # Restart is needed because of MDEV-9797
4174
    # On openSUSE 13 manual restart does not work
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4175
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4176
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4177
            action="install", 
4178
            upgrade_from="MariaDB 5.5 Galera", 
4179
            old_packages="MariaDB-Galera-server MariaDB-client", 
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4180
            new_packages="MariaDB-server MariaDB-client",
4181
            manual_restart=1,
4182
            doStepIf=rpm_test_branch
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4183
        )
4184
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4185
    # Restart is needed because of MDEV-9797
4186
    # On openSUSE 13 manual restart does not work
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4187
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4188
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4189
            action="dist-upgrade", 
4190
            upgrade_from="MariaDB 5.5 Galera", 
4191
            old_packages="MariaDB-Galera-server MariaDB-client", 
4192
            new_packages="",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4193
            manual_restart=1,
4194
            doStepIf=rpm_test_branch
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4195
        )
4196
    )
4197
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4198
# Upgrade from MySQL 5.7
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4199
    # MySQL 5.7 has packages for sles 12 x86_64
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4200
4201
    # This test does not upgrade anything, since the packages don't match
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4202
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4203
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4204
            action="update", 
4205
            upgrade_from="MySQL 5.7", 
4206
            old_packages="mysql-community-server mysql-community-client", 
4207
            new_packages="MariaDB-server MariaDB-client",
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4208
            doStepIf=False
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4209
#            doStepIf=(lambda(step): int(dist_num) == 12 and arch == "x86_64" and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4210
        )
4211
    )
4212
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4213
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4214
            action="install", 
4215
            upgrade_from="MySQL 5.7 (server, client)", 
4216
            old_packages="mysql-community-server mysql-community-client", 
4217
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4218
            doStepIf=(lambda(step): int(dist_num) == 12 and arch == "x86_64" and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4219
        )
4220
    )
4221
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4222
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4223
            action="install", 
4224
            upgrade_from="MySQL 5.7 (all packages)", 
4225
            old_packages="mysql-community-*", 
4226
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4227
            doStepIf=(lambda(step): int(dist_num) == 12 and arch == "x86_64" and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4228
        )
4229
    )
4230
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4231
# Upgrade from MySQL 5.6
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4232
    # MySQL 5.6 has packages for sles 11, 12 x86)64
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4233
4234
    # This test does not upgrade anything, since the packages don't match
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4235
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4236
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4237
            action="update", 
4238
            upgrade_from="MySQL 5.6", 
4239
            old_packages="mysql-community-server mysql-community-client", 
4240
            new_packages="MariaDB-server MariaDB-client",
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4241
            doStepIf=False
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4242
#            doStepIf=(lambda(step): int(dist_num) < 13 and arch == "x86_64" and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4243
        )
4244
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4245
    # The step fails due to MDEV-9798
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4246
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4247
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4248
            action="install", 
4249
            upgrade_from="MySQL 5.6 (server, client)", 
4250
            old_packages="mysql-community-server mysql-community-client", 
4251
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4252
            doStepIf=(lambda(step): int(dist_num) < 13 and arch == "x86_64" and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4253
        )
4254
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4255
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4256
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4257
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4258
            action="install", 
4259
            upgrade_from="MySQL 5.6 (all packages)", 
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4260
            old_packages="mysql-community-bench mysql-community-client mysql-community-common mysql-community-devel mysql-community-embedded mysql-community-embedded-devel mysql-community-libs mysql-community-server mysql-community-test", 
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4261
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4262
            doStepIf=(lambda(step): int(dist_num) < 13 and arch == "x86_64" and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4263
        )
4264
    )
4265
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4266
# Upgrade from MySQL 5.5
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4267
    # MySQL 5.5 has packages for sles 11 x86_64
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4268
4269
    # This step does not upgrade anything, since the packages don't match
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4270
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4271
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4272
            action="update", 
4273
            upgrade_from="MySQL 5.5", 
4274
            old_packages="mysql-community-server mysql-community-client", 
4275
            new_packages="MariaDB-server MariaDB-client",
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4276
            doStepIf=False
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4277
#            doStepIf=(lambda(step): int(dist_num) == 11 and arch == "x86_64" and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4278
        )
4279
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4280
    # The step fails due to MDEV-9798
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4281
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4282
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4283
            action="install", 
4284
            upgrade_from="MySQL 5.5 (server, client)", 
4285
            old_packages="mysql-community-server mysql-community-client", 
4286
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4287
            doStepIf=(lambda(step): int(dist_num) == 11 and arch == "x86_64" and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4288
        )
4289
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4290
    # The step fails due to MDEV-9798
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4291
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4292
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4293
            action="install", 
4294
            upgrade_from="MySQL 5.5 (all packages)", 
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4295
            old_packages="mysql-community-bench mysql-community-client mysql-community-common mysql-community-devel mysql-community-embedded mysql-community-embedded-devel mysql-community-libs mysql-community-server mysql-community-test", 
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4296
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4297
            doStepIf=(lambda(step): int(dist_num) == 11 and arch == "x86_64" and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4298
        )
4299
    )
4300
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4301
# Upgrades from packages provided by distributions
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4302
4303
    # mysql and mysql-client: provided by SLES 11
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4304
4305
    # This test does not upgrade anything, since the packages don't match
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4306
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4307
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4308
            action="update", 
4309
            upgrade_from="mysql", 
4310
            old_packages="mysql mysql-client", 
4311
            new_packages="MariaDB-server MariaDB-client",
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4312
            doStepIf=False
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4313
#            doStepIf=(lambda(step): int(dist_num) == 11 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4314
        )
4315
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4316
    # Manual restart is added due to MDEV-9819
4317
    # but it does not help
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4318
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4319
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4320
            action="install", 
4321
            upgrade_from="mysql (server, client)", 
4322
            old_packages="mysql mysql-client", 
4323
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4324
            manual_restart=1,
4325
            doStepIf=(lambda(step): int(dist_num) == 11 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4326
        )
4327
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4328
    # Manual restart is added due to MDEV-9819
4329
    # but it does not help
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4330
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4331
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4332
            action="install", 
4333
            upgrade_from="mysql (all packages)", 
4334
            old_packages="mysql*", 
4335
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4336
            manual_restart=1,
4337
            doStepIf=(lambda(step): int(dist_num) == 11 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4338
        )
4339
    )
4340
4341
    # mariadb and mariadb-client: provided by SLES 12, 13
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4342
4343
    # This test does not upgrade anything, since the packages don't match
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4344
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4345
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4346
            action="update", 
4347
            upgrade_from="mariadb", 
4348
            old_packages="mariadb mariadb-client", 
4349
            new_packages="MariaDB-server MariaDB-client",
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4350
            doStepIf=False
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4351
            # doStepIf=(lambda(step): int(dist_num) > 11 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4352
        )
4353
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4354
    # This step fails due to MDEV-9796 (workaround does not help)
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4355
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4356
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4357
            action="install", 
4358
            upgrade_from="mariadb (server, client)", 
4359
            old_packages="mariadb mariadb-client", 
4360
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4361
            doStepIf=(lambda(step): int(dist_num) > 11 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4362
        )
4363
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4364
    # It's fine for SLES 12, but on openSUSE 13 there are server and server-debug versions,
4365
    # which can't be installed together; so, we have to split the test, see below
4366
    # This step fails due to MDEV-9796 (workaround does not help)
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4367
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4368
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4369
            action="install", 
4370
            upgrade_from="mariadb (all packages)", 
4371
            old_packages="mariadb*", 
4372
            new_packages="MariaDB-*",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4373
            doStepIf=(lambda(step): int(dist_num) == 12 and rpm_test_branch(step))
4374
        )
4375
    )
4376
    # Variation for newer openSUSE where mariadb-debug-version also exists
4377
    # This step fails due to MDEV-9796, workaround does not help
4378
    zyp_fact.addStep(
4379
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
4380
            action="install", 
4381
            upgrade_from="mariadb (all packages)", 
4382
            old_packages="mariadb mariadb-bench mariadb-client mariadb-errormessages mariadb-test mariadb-tools", 
4383
            new_packages="MariaDB-*",
4384
            doStepIf=(lambda(step): int(dist_num) > 12 and rpm_test_branch(step))
4385
        )
4386
    )
4387
    # And the same for debug version
4388
    # other packages require mariadb, so we are skipping them to see how it goes with the server only
4389
    # This step fails due to MDEV-9796, workaround does not help
4390
    zyp_fact.addStep(
4391
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
4392
            action="install", 
4393
            upgrade_from="mariadb-debug-version", 
4394
            old_packages="mariadb-debug-version", 
4395
            new_packages="MariaDB-*",
4396
            doStepIf=(lambda(step): int(dist_num) > 12 and rpm_test_branch(step))
4397
        )
4398
    )
4399
4400
    # mysql-community-server and mysql-community-client: provided by openSUSE 13
4401
4402
    # This test does not upgrade anything, since the packages don't match
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4403
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4404
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4405
            action="update", 
4406
            upgrade_from="mysql-community-server", 
4407
            old_packages="mysql-community-server mysql-community-server-client", 
4408
            new_packages="MariaDB-server MariaDB-client",
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4409
            doStepIf=False
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4410
#            doStepIf=(lambda(step): int(dist_num) > 12 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4411
        )
4412
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4413
    # This step does not work due to MDEV-9796 (workaround does not help)
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4414
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4415
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4416
            action="install", 
4417
            upgrade_from="mysql-community-server (server, client)", 
4418
            old_packages="mysql-community-server mysql-community-server-client", 
4419
            new_packages="MariaDB-server MariaDB-client",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4420
            doStepIf=(lambda(step): int(dist_num) > 12 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4421
        )
4422
    )
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4423
    # We need to exclude mysql-community-server-debug-version, and it seems there is no way to do it in zypper,
4424
    # so we have to list all packages explicitly
4425
    # This step does not work due to MDEV-9796 (workaround does not help)
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4426
    zyp_fact.addStep(
653 by Daniel Bartholomew
automatic maria-master.cfg commit
4427
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4428
            action="install", 
4429
            upgrade_from="mysql-community-server (all packages)", 
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4430
            old_packages="mysql-community-server mysql-community-server-bench mysql-community-server-client mysql-community-server-errormessages mysql-community-server-test mysql-community-server-tools", 
4431
            new_packages="MariaDB-*",
4432
            doStepIf=(lambda(step): int(dist_num) > 12 and rpm_test_branch(step))
4433
        )
4434
    )
4435
    # And now while we are at it, do the debug-version as well
4436
    # other packages require mysql-community-server, so we'll skip it to see how it goes with the server only
4437
    # This step does not work due to MDEV-9796 (workaround does not help)
4438
    zyp_fact.addStep(
4439
         getRpmUpgradeStep(kvm_image, args, kvm_scpopt, port, distro, dist_name, dist_num, dist_arch,
4440
            action="install", 
4441
            upgrade_from="mysql-community-server-debug-version", 
4442
            old_packages="mysql-community-server-debug-version", 
4443
            new_packages="MariaDB-*",
4444
            doStepIf=(lambda(step): int(dist_num) > 12 and rpm_test_branch(step))
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4445
        )
4446
    )
4447
325 by Daniel Bartholomew
Initial openSUSE package build factory.
4448
    return {'name': name, 'slavenames': slaves, 'builddir': name, 'factory': zyp_fact,
4449
            "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
4450
            "category": catg}
325 by Daniel Bartholomew
Initial openSUSE package build factory.
4451
4452
4453
#-------------------------------------------------------------------------------
4454
# SUSE and openSUSE builders
4455
#-------------------------------------------------------------------------------
387 by Daniel Bartholomew
automatic maria-master.cfg commit
4456
#bld_kvm_zyp_opensuse13_1_x86 = getZypBuilder("kvm-zyp-opensuse13_1-x86", "vm-opensuse13_1-x86",
4457
#                                        "2303", "qemu64", "i386", slaves=kvm11_slaves, ramdisk=False)
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
4458
#bld_kvm_zyp_opensuse13_x86 = getZypBuilder("kvm-zyp-opensuse13-x86", "vm-opensuse13-x86",
4459
#                                        "2303", "qemu64", "i386", slaves=kvm11_slaves, ramdisk=False)
387 by Daniel Bartholomew
automatic maria-master.cfg commit
4460
4461
#bld_kvm_zyp_opensuse13_1_x86_64 = getZypBuilder("kvm-zyp-opensuse13_1-x86_64", "vm-opensuse13_1-x86_64",
4462
#                                        "2304", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False)
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
4463
#bld_kvm_zyp_opensuse13_amd64 = getZypBuilder("kvm-zyp-opensuse13-amd64", "vm-opensuse13-amd64",
4464
#                                        "2304", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False)
387 by Daniel Bartholomew
automatic maria-master.cfg commit
4465
820 by Daniel Bartholomew
Add opensuse42-amd64 builder
4466
bld_kvm_zyp_opensuse42_amd64 = getZypBuilder("kvm-zyp-opensuse42-amd64", "vm-opensuse42-amd64",
4467
                                        "2340", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False)
4468
379 by Daniel Bartholomew
automatic maria-master.cfg commit
4469
bld_kvm_zyp_sles11_x86 = getZypBuilder("kvm-zyp-sles11-x86", "vm-sles11-x86",
4470
                                        "2307", "qemu64", "i386", slaves=kvm11_slaves, ramdisk=False)
387 by Daniel Bartholomew
automatic maria-master.cfg commit
4471
4472
#bld_kvm_zyp_sles11_x86_64 = getZypBuilder("kvm-zyp-sles11-x86_64", "vm-sles11-x86_64",
4473
#                                        "2308", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False)
4474
bld_kvm_zyp_sles11_amd64 = getZypBuilder("kvm-zyp-sles11-amd64", "vm-sles11-amd64",
379 by Daniel Bartholomew
automatic maria-master.cfg commit
4475
                                        "2308", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False)
387 by Daniel Bartholomew
automatic maria-master.cfg commit
4476
602 by Daniel Bartholomew
automatic maria-master.cfg commit
4477
bld_kvm_zyp_sles11sp1_amd64 = getZypBuilder("kvm-zyp-sles11sp1-amd64", "vm-sles11sp1-amd64",
4478
                                        "2312", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False)
600 by Daniel Bartholomew
automatic maria-master.cfg commit
4479
387 by Daniel Bartholomew
automatic maria-master.cfg commit
4480
#bld_kvm_zyp_sles12_x86_64 = getZypBuilder("kvm-zyp-sles12-x86_64", "vm-sles12-x86_64",
4481
#                                        "2309", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False)
4482
bld_kvm_zyp_sles12_amd64 = getZypBuilder("kvm-zyp-sles12-amd64", "vm-sles12-amd64",
382 by Daniel Bartholomew
automatic maria-master.cfg commit
4483
                                        "2309", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False)
325 by Daniel Bartholomew
Initial openSUSE package build factory.
4484
#-------------------------------------------------------------------------------
4485
539 by Daniel Bartholomew
automatic maria-master.cfg commit
4486
#-------------------------------------------------------------------------------
4487
# SUSE and openSUSE package factory for Galera
4488
#-------------------------------------------------------------------------------
581 by Daniel Bartholomew
automatic maria-master.cfg commit
4489
def getGalZypBuilder(name, kvm_image, port, cpu, arch, slaves=kvm_slaves, ramdisk=True, catg="galera"):
539 by Daniel Bartholomew
automatic maria-master.cfg commit
4490
    distro = name.split('-')[2]
4491
632 by Daniel Bartholomew
automatic maria-master.cfg commit
4492
    kvm_build_image = getGaleraBuildImage(kvm_image) + ".qcow2"
539 by Daniel Bartholomew
automatic maria-master.cfg commit
4493
    kvm_install_image = kvm_image + "-install.qcow2"
4494
 
4495
    args = ["--port="+port, "--user=buildbot", "--smp=4", "--cpu="+cpu, "--startup-timeout=600", "--logfile=kernel_"+port+".log"]
4496
    if ramdisk:
4497
        args = args + ["--work-image=/dev/shm/vm-tmp-"+port+".qcow2"]
4498
    zyp_fact = factory.BuildFactory()
4499
    # Delete ../build/* rather than simply * just to be a little safer if we
4500
    # somehow end up running in wrong directory!
4501
    zyp_fact.addStep(ShellCommand(
4502
        description=["cleaning", "build", "dir"],
4503
        descriptionDone=["clean", "build", "dir"],
4504
        command=["sh", "-c", "rm -Rf ../build/*"]))
4505
    zyp_fact.addStep(ShellCommand(
4506
        description=["rsyncing", "VMs"],
4507
        descriptionDone=["rsync", "VMs"],
4508
        doStepIf=(lambda(step): step.getProperty("slavename") != "bb01"),
4509
        haltOnFailure=True,
4510
        command=["rsync", "-a", "-v", "-L",
4511
                 "bb01.mariadb.net::kvm/vms/"+kvm_build_image,
4512
                 "bb01.mariadb.net::kvm/vms/"+kvm_install_image,
4513
                 "/kvm/vms/"]))
4514
    zyp_fact.addStep(Compile(
4515
        description=["making", "rpms"],
4516
        descriptionDone=["make", "rpms"],
4517
        timeout=7200,
4518
        logfiles={"kernel": "kernel_"+port+".log"},
4519
        warningPattern=gccWarningPattern,
4520
        warningExtractor=Compile.warnExtractFromRegexpGroups,
4521
        suppressionFile=WithProperties("compiler_warnings.supp"),
4522
        env={"TERM": "vt102"},
632 by Daniel Bartholomew
automatic maria-master.cfg commit
4523
        command=["runvm", "--base-image=/kvm/vms/"+kvm_build_image] + args + ["vm-tmp-"+port+".qcow2",
539 by Daniel Bartholomew
automatic maria-master.cfg commit
4524
        "rm -Rf buildbot && mkdir buildbot",
4525
        WithProperties("""
4526
set -ex
4527
cd buildbot
4528
mkdir rpms srpms
4529
git clone -b %(branch)s "https://github.com/MariaDB/galera.git" build
4530
cd build
4531
./scripts/build.sh -p
4532
cp `find *.rpm -maxdepth 1 -type f` ../rpms
4533
"""),
4534
        "= rm -Rf rpms srpms && mkdir rpms srpms",
4535
        "= scp -r -P "+port+" "+kvm_scpopt+" buildbot@localhost:buildbot/*rpms .",
4536
    ]))
4537
    addPackageUploadStep(zyp_fact, 'rpms')
4538
    zyp_fact.addStep(Test(
4539
        description=["testing", "install"],
4540
        descriptionDone=["test", "install"],
4541
        logfiles={"kernel": "kernel_"+port+".log"},
4542
        env={"TERM": "vt102"},
632 by Daniel Bartholomew
automatic maria-master.cfg commit
4543
        command=["runvm", "--base-image=/kvm/vms/"+kvm_install_image] + args + ["vm-tmp-"+port+".qcow2",
539 by Daniel Bartholomew
automatic maria-master.cfg commit
4544
        "rm -Rf buildbot && mkdir buildbot",
4545
        "= scp -r -P "+port+" "+kvm_scpopt+" rpms buildbot@localhost:buildbot/",
4546
        WithProperties("""
4547
set -ex
4548
cd buildbot
4549
sudo zypper --no-refresh --no-gpg-checks install -y rpms/*.rpm
4550
garbd --version
4551
""")]))
4552
    return {'name': name, 'slavenames': slaves, 'builddir': name, 'factory': zyp_fact,
4553
            "nextBuild": myNextBuild,
4554
            "category": catg}
4555
4556
#-------------------------------------------------------------------------------
4557
# SUSE and openSUSE builders for Galera
4558
#-------------------------------------------------------------------------------
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
4559
#gal_bld_kvm_zyp_opensuse13_x86   = getGalZypBuilder("kvm-zyp-opensuse13-x86-gal", "vm-opensuse13-x86",
4560
#                                     "3011", "qemu64", "i386", slaves=kvm11_slaves, ramdisk=False)
4561
#gal_bld_kvm_zyp_opensuse13_amd64 = getGalZypBuilder("kvm-zyp-opensuse13-amd64-gal", "vm-opensuse13-amd64",
4562
#                                     "3012", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False)
820 by Daniel Bartholomew
Add opensuse42-amd64 builder
4563
gal_bld_kvm_zyp_opensuse42_amd64 = getGalZypBuilder("kvm-zyp-opensuse42-amd64-gal", "vm-opensuse42-amd64",
4564
                                     "3054", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False)
539 by Daniel Bartholomew
automatic maria-master.cfg commit
4565
gal_bld_kvm_zyp_sles11_x86       = getGalZypBuilder("kvm-zyp-sles11-x86-gal", "vm-sles11-x86",
4566
                                     "3013", "qemu64", "i386", slaves=kvm11_slaves, ramdisk=False)
4567
gal_bld_kvm_zyp_sles11_amd64     = getGalZypBuilder("kvm-zyp-sles11-amd64-gal", "vm-sles11-amd64",
4568
                                     "3014", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False)
4569
gal_bld_kvm_zyp_sles12_amd64     = getGalZypBuilder("kvm-zyp-sles12-amd64-gal", "vm-sles12-amd64",
4570
                                     "3015", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False)
632 by Daniel Bartholomew
automatic maria-master.cfg commit
4571
gal_bld_kvm_zyp_sles11sp1_amd64  = getGalZypBuilder("kvm-zyp-sles11sp1-amd64-gal", "vm-sles11sp1-amd64",
4572
                                     "3016", "qemu64", "x86_64", slaves=kvm11_slaves, ramdisk=False)
4573
539 by Daniel Bartholomew
automatic maria-master.cfg commit
4574
#-------------------------------------------------------------------------------
4575
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4576
# The class Test seems to not have a direct way to completely disable
4577
# warning parsing in logs. So use this impossible-to-match regexp
4578
# instead.
545 by Daniel Bartholomew
automatic maria-master.cfg commit
4579
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4580
impossibleRe = r"\Z.\A"
4581
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4582
def getDebBuilder(name, kvm_image, port, cpu, dist_name, version_name, kvmargs=[], slavenames=kvm_slaves, ramdisk=True, catg="main"):
147 by Kristian Nielsen
Add package builders for 5.5 tree.
4583
    args= ["--port="+port, "--user=buildbot", "--smp=4", "--cpu="+cpu, "--startup-timeout=600"] + kvmargs
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
4584
    if ramdisk:
4585
        args= args + ["--work-image=/dev/shm/vm-tmp-"+port+".qcow2"]
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
4586
    # AIO detection in InnoDB/XraDB does not work on the old
4587
    # debian5 kernel. Let's disable aio here, in buildbot.
4588
    if "debian5" in name:
4589
        disable_aio_in_mtr="--mysqld=--loose-disable-innodb-use-native-aio"
4590
    else:
4591
        disable_aio_in_mtr=""
781 by Daniel Bartholomew
automatic maria-master.cfg commit
4592
    dist_arch= name.split('-')[2] + "-" + name.split('-')[3]
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4593
    deb_fact= factory.BuildFactory()
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
4594
    # Delete ../build/* rather than simply * just to be a little safer if we
4595
    # somehow end up running in wrong directory!
4596
    deb_fact.addStep(ShellCommand(
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4597
        name="cleanup",
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
4598
        description=["cleaning", "build", "dir"],
4599
        descriptionDone=["clean", "build", "dir"],
4600
        command=["sh", "-c", "rm -Rf ../build/*"]))
4601
    deb_fact.addStep(ShellCommand(
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4602
        name="rsync_vms",
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
4603
        description=["rsyncing", "VMs"],
4604
        descriptionDone=["rsync", "VMs"],
302 by Daniel Bartholomew
Change kvm rsync host from terrier.askmonty.org to bb01.mariadb.net
4605
        doStepIf=(lambda(step): step.getProperty("slavename") != "bb01"),
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
4606
        haltOnFailure=True,
471 by Daniel Bartholomew
automatic maria-master.cfg commit
4607
        command=["rsync", "-a", "-v", "-L",
302 by Daniel Bartholomew
Change kvm rsync host from terrier.askmonty.org to bb01.mariadb.net
4608
                 "bb01.mariadb.net::kvm/vms/"+kvm_image+"-build.qcow2",
4609
                 "bb01.mariadb.net::kvm/vms/"+kvm_image+"-install.qcow2",
4610
                 "bb01.mariadb.net::kvm/vms/"+kvm_image+"-upgrade.qcow2",
4611
                 "bb01.mariadb.net::kvm/vms/"+kvm_image+"-upgrade2.qcow2",
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
4612
                 "/kvm/vms/"]))
362 by Daniel Bartholomew
automatic maria-master.cfg commit
4613
    deb_fact.addStep(DownloadSourceTarball())
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4614
    deb_fact.addStep(FileDownload(
4615
        mastersrc=WithProperties("%(bakerypath)s"),
156 by Kristian Nielsen
New slave "aps82-204".
4616
        slavedest=WithProperties("%(bakery)s.tar.gz"),
385 by Kristian Nielsen
Increase upload block size in an attempt to get better transfer speed.
4617
        blocksize=524288,
156 by Kristian Nielsen
New slave "aps82-204".
4618
        doStepIf=branch_is_5_123))
4.2.3 by Kristian Nielsen
Add compiler warning suppressions to .deb builds.
4619
    # Extract the compiler warning suppressions file from the source tarball.
4620
    deb_fact.addStep(ShellCommand(
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4621
        name="get_supp",
4.2.3 by Kristian Nielsen
Add compiler warning suppressions to .deb builds.
4622
        description=["getting", ".supp"],
4623
        descriptionDone=["get", ".supp"],
4624
        command=["sh", "-c", WithProperties("""
4625
rm -f compiler_warnings.supp
688 by Daniel Bartholomew
automatic maria-master.cfg commit
4626
tar zxf "/tmp/buildcache/%(tarbuildnum)s:%(distname)s" --strip 2 "$(basename %(distname)s .tar.gz)/support-files/compiler_warnings.supp"
4627
#wget ftp.askmonty.org:/public/compiler_warnings.supp
4628
ls -l compiler_warnings.supp
4.2.3 by Kristian Nielsen
Add compiler warning suppressions to .deb builds.
4629
exit 0  # best-effort, not fatal if no suppression file
4630
""")]))
545 by Daniel Bartholomew
automatic maria-master.cfg commit
4631
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4632
    deb_fact.addStep(SetPropertyFromCommand(
4633
        name="nosystemd",
4634
        doStepIf=(lambda(step): not in_systemdBuilders(step)),
4635
        hideStepIf=(lambda results, s: results==SKIPPED),
4636
        property="systemdCapability",
4637
        command="echo no"))
4638
    deb_fact.addStep(SetPropertyFromCommand(
4639
        name="systemd",
545 by Daniel Bartholomew
automatic maria-master.cfg commit
4640
        doStepIf=(lambda(step): in_systemdBuilders(step)),
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4641
        hideStepIf=(lambda results, s: results==SKIPPED),
545 by Daniel Bartholomew
automatic maria-master.cfg commit
4642
        property="systemdCapability",
4643
        command="echo yes"))
4644
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4645
    deb_fact.addStep(Compile(
4646
        description=["making", "debs"],
4647
        descriptionDone=["make", "debs"],
4648
        logfiles={"kernel": "kernel_"+port+".log"},
4649
        warningPattern=gccWarningPattern,
4.2.3 by Kristian Nielsen
Add compiler warning suppressions to .deb builds.
4650
        warningExtractor=Compile.warnExtractFromRegexpGroups,
4651
        suppressionFile=WithProperties("compiler_warnings.supp"),
89 by Kristian Nielsen
Add Daniel's solaris slave.
4652
        timeout=3600,
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
4653
        env={"TERM": "vt102"},
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
4654
        command=["runvm", "--base-image=/kvm/vms/"+kvm_image+"-build.qcow2"] + args +["--logfile=kernel_"+port+".log", "vm-tmp-"+port+".qcow2",
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4655
        "rm -Rf buildbot && mkdir buildbot",
362 by Daniel Bartholomew
automatic maria-master.cfg commit
4656
        ScpSourceIntoVM(port),
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
4657
        WithProperties("= case '%(branch)s' in *5\\.[123]*) scp -P "+port+" "+ kvm_scpopt +" %(bakery)s.tar.gz buildbot@localhost:buildbot/ ;; esac"),
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4658
        WithProperties("""
4659
set -ex
4660
cd buildbot
156 by Kristian Nielsen
New slave "aps82-204".
4661
mkdir -p debs/binary debs/source
4662
rm -Rf build
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4663
mkdir build
4664
cd build
156 by Kristian Nielsen
New slave "aps82-204".
4665
case "%(branch)s" in
4666
*5\\.[123]*)
4667
  tar zxf ../%(bakery)s.tar.gz
4668
  cd %(bakery)s
4669
  bakery/autobake51-deb.sh ../../%(distname)s
4670
  cp `find build-temp-[0-9]*/ -maxdepth 1 -type f` ../../debs/binary/
4671
  ;;
4672
*)
4673
  tar zxf "../%(distname)s"
4674
  cd "%(distdirname)s"
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4675
  echo $PATH
726 by Daniel Bartholomew
automatic maria-master.cfg commit
4676
  export JAVA_HOME=`ls -d /usr/lib/jvm/java-1.*`
212 by Kristian Nielsen
Misc. changes to buildbot config.
4677
  export AM_EXTRA_MAKEFLAGS=VERBOSE=1
878 by Daniel Bartholomew
MDEV-658 - Add `export DH_BUILD_DDEBS=1` to the deb factory
4678
  export DH_BUILD_DDEBS=1
212 by Kristian Nielsen
Misc. changes to buildbot config.
4679
  echo | debian/autobake-deb.sh
156 by Kristian Nielsen
New slave "aps82-204".
4680
  cp `find .. -maxdepth 1 -type f` ../../debs/binary/
4681
  ;;
4682
esac
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4683
cd ../../debs
4684
dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz
4685
dpkg-scansources source /dev/null | gzip -9c > source/Sources.gz
4686
"""),
4687
        "= rm -Rf debs",
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
4688
        "= scp -r -P "+port+" "+kvm_scpopt+" buildbot@localhost:buildbot/debs .",
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4689
        ]))
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
4690
    addPackageArchiveStep(deb_fact, "debs", "%(tarbuildnum)s")
545 by Daniel Bartholomew
automatic maria-master.cfg commit
4691
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4692
    # On Sid, only run the test for 10.1+
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4693
    deb_fact.addStep(Test(
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4694
        name="install",
4695
        doStepIf=(lambda(step): version_name != "sid" or branch_is_10_1_or_later(step)),
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4696
        description=["testing", "install"],
4697
        descriptionDone=["test", "install"],
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
4698
        logfiles={"kernel": "kernel_"+port+".log", "syslog": "daemon.log"},
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4699
        warningPattern=impossibleRe,
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
4700
        env={"TERM": "vt102"},
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
4701
        command=["runvm", "--base-image=/kvm/vms/"+kvm_image+"-install.qcow2"] + args + ["--logfile=kernel_"+port+".log", "vm-tmp-"+port+".qcow2",
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4702
        "rm -Rf buildbot && mkdir buildbot",
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
4703
        "= scp -r -P "+port+" "+kvm_scpopt+" debs buildbot@localhost:buildbot/",
906 by Daniel Bartholomew
automatic maria-master.cfg commit
4704
        WithProperties("sh -c \"echo '%(branch)s' | sed -e \\\"s/.*\\\\(5\\\\.[1-356]\\\\|10\\\\.[0123]\\\\).*/\\\\1/\\\"\" > /tmp/VERSION"),
4705
        WithProperties("case '%(branch)s' in *galera* | *5.5-hf* | *10.[123]*) sudo sh -c \"echo 'deb http://yum.mariadb.org/galera/repo/deb "+version_name+" main' > /etc/apt/sources.list.d/galera-test-repo.list\" ;; esac"),
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4706
        WithProperties("case '%(branch)s' in *galera*) sudo sh -c \"echo 'deb http://mirror2.hs-esslingen.de/mariadb/repo/$(cat /tmp/VERSION)/"+dist_name+" "+version_name+" main' > /etc/apt/sources.list.d/mariadb-test-repo.list\" ;; esac"),
168.1.9 by Kristian Nielsen
For Galera trees, add our main public repo to /etc/apt/sources* when testing.
4707
        WithProperties("""
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4708
set -ex
4709
cd buildbot
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4710
chmod -cR go+r debs
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4711
sudo apt-get update
168.1.9 by Kristian Nielsen
For Galera trees, add our main public repo to /etc/apt/sources* when testing.
4712
sudo sh -c "DEBIAN_FRONTEND=noninteractive MYSQLD_STARTUP_TIMEOUT=180 apt-get install --allow-unauthenticated -y mariadb-`case '%(branch)s' in *galera* | *5.5-hf*) echo galera- ;; esac`server"
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4713
case "%(branch)s" in
4714
*10.[12]e*)
4715
  sudo mysql -uroot -e "create database test; use test; create table t(a int primary key) engine=innodb; insert into t values (1); select * from t; drop table t; drop database test"
4716
  ;;
4717
*)
4718
  mysql -uroot -prootpass -e "create database test; use test; create table t(a int primary key) engine=innodb; insert into t values (1); select * from t; drop table t; drop database test"
4719
  ;;
4720
esac
545 by Daniel Bartholomew
automatic maria-master.cfg commit
4721
case "%(systemdCapability)s" in
4722
yes)
546 by Daniel Bartholomew
automatic maria-master.cfg commit
4723
  # Service is installed
548 by Daniel Bartholomew
automatic maria-master.cfg commit
4724
  echo "---- Check that service is present ----"
546 by Daniel Bartholomew
automatic maria-master.cfg commit
4725
  ls -l /lib/systemd/system/mariadb.service
4726
  # mariadb.service and its synonyms
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4727
  systemctl --no-pager status mariadb.service
4728
  systemctl --no-pager status mariadb.service | grep Loaded | grep mariadb.service
4729
  systemctl --no-pager status mariadb
4730
  systemctl --no-pager status mariadb | grep Loaded | grep mariadb.service
4731
  systemctl --no-pager status mysql
4732
  systemctl --no-pager status mysql | grep Loaded | grep mariadb.service
4733
  systemctl --no-pager status mysqld
4734
  systemctl --no-pager status mysqld | grep Loaded | grep mariadb.service
548 by Daniel Bartholomew
automatic maria-master.cfg commit
4735
  echo "---- Check permissions - all of the following should fail ----"
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4736
  ! systemctl --no-pager --no-ask-password stop mariadb
4737
  ! systemctl --no-pager --no-ask-password condrestart mariadb
4738
  ! systemctl --no-pager --no-ask-password start mariadb
4739
  ! systemctl --no-pager --no-ask-password enable mariadb
4740
  ! systemctl --no-pager --no-ask-password set-environment MYSQLD_OPTS="--unknown-option"
4741
  ! systemctl --no-pager --no-ask-password unset-environment MYSQLD_OPTS
4742
  ! systemctl --no-pager --no-ask-password restart mariadb
548 by Daniel Bartholomew
automatic maria-master.cfg commit
4743
4744
  echo "---- Now use proper permissions ---"
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4745
  sudo systemctl --no-pager stop mariadb
553 by Daniel Bartholomew
automatic maria-master.cfg commit
4746
  ! ps -ef | grep mysqld | grep -v grep
4747
  ## condrestart part 1: does nothing when server is not running
4748
  #sudo systemctl condrestart mariadb
4749
  #!  ps -ef | grep mysqld | grep -v grep
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4750
  sudo systemctl --no-pager start mariadb
4751
  systemctl --no-pager is-enabled mariadb
559 by Daniel Bartholomew
automatic maria-master.cfg commit
4752
  # MDEV-8956
4753
  #sudo systemctl disable mariadb
4754
  #! systemctl is-enabled mariadb
4755
  #sudo systemctl enable mariadb
4756
  #systemctl is-enabled mariadb
548 by Daniel Bartholomew
automatic maria-master.cfg commit
4757
546 by Daniel Bartholomew
automatic maria-master.cfg commit
4758
  # set-environment: add an unknown option
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4759
  sudo systemctl --no-pager set-environment MYSQLD_OPTS="--unknown-option"
548 by Daniel Bartholomew
automatic maria-master.cfg commit
4760
  # condrestart part 2: attempts to restart when server is running (and fails due to unknown option)
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4761
  sudo systemctl --no-pager -l status mariadb 
4762
  ! sudo systemctl --no-pager condrestart mariadb
4763
  ! sudo systemctl --no-pager -l status mariadb
546 by Daniel Bartholomew
automatic maria-master.cfg commit
4764
  # unset-environment
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4765
  sudo systemctl --no-pager unset-environment MYSQLD_OPTS
548 by Daniel Bartholomew
automatic maria-master.cfg commit
4766
  # Restart (it looks strange because we are investigating a problem)
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4767
  sudo systemctl --no-pager restart mariadb || ps -ef | grep mysqld | grep -v grep || sudo systemctl -ln 500 status mariadb
548 by Daniel Bartholomew
automatic maria-master.cfg commit
4768
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4769
  sudo systemctl --no-pager set-environment MYSQLD_OPTS="--unknown-option"
4770
  ! sudo systemctl --no-pager restart mariadb
4771
  sudo systemctl --no-pager unset-environment MYSQLD_OPTS
546 by Daniel Bartholomew
automatic maria-master.cfg commit
4772
  # Status shows proper text 
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4773
  systemctl --no-pager status mariadb | grep 'MariaDB server is down'
4774
  sudo systemctl --no-pager start mariadb
4775
  systemctl --no-pager status mariadb | grep 'Taking your SQL requests now'
546 by Daniel Bartholomew
automatic maria-master.cfg commit
4776
  # See the journal
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4777
  sudo systemctl --no-pager -l status mariadb.service
548 by Daniel Bartholomew
automatic maria-master.cfg commit
4778
  # Cannot see it without root
546 by Daniel Bartholomew
automatic maria-master.cfg commit
4779
  ! journalctl -lxn 100 | grep mysqld
4780
  sudo journalctl -lxn 100 --no-pager | grep mysqld
4781
  # Init.d script
4782
  ls -l /etc/init.d/mysql
4783
  # It does not do the same as systemctl now
4784
  # /etc/init.d/mysql status
4785
  # Sysvinit
4786
  # not on Debian
4787
  # service mariadb status
4788
  # service mysql status
4789
  # service mysqld status
4790
  # chkconfig mariadb
4791
  ls -l /etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf
545 by Daniel Bartholomew
automatic maria-master.cfg commit
4792
  ;;
4793
no)
4794
  echo "Steps related to systemd will be skipped"
4795
  ;;
4796
*)
4797
  echo "It should never happen, check your configuration (systemdCapability property is not set or is set to a wrong value)"
4798
  ;;
4799
esac
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4800
case "%(branch)s" in
4801
*10.[12]e*)
4802
  sudo mysql -uroot -e "select @@version"
4803
  ;;
4804
*)
4805
  mysql -uroot -prootpass -e "select @@version"
4806
  ;;
4807
esac
545 by Daniel Bartholomew
automatic maria-master.cfg commit
4808
"""),
4809
        "! rm -f daemon.log; (sudo cat /var/log/daemon.log || sudo cat /var/log/syslog) >daemon.log",
4810
        "!= rm -f daemon.log; scp -P "+port+" "+kvm_scpopt+" buildbot@localhost:daemon.log ."]))
4811
845 by Daniel Bartholomew
automatic maria-master.cfg commit
4812
# On Sid, only run the test for 10.1+.
4813
# Ignore Stretch for now, because it has a broken mix of MySQL and MariaDB instead of clean MySQL.
847 by Daniel Bartholomew
automatic maria-master.cfg commit
4814
# On Xenial and Yakkety (where MySQL 5.7 is pre-installed) only run upgrade to 10.2,
4815
#    because 10.0/10.1 don't support crossgrade from 5.7, and the Debian's workaround 
4816
#    (backing up the datadir and starting from scratch) is not enabled in our packages
845 by Daniel Bartholomew
automatic maria-master.cfg commit
4817
# Further changes are possible since MDEV-6284 is still open.
542 by Daniel Bartholomew
automatic maria-master.cfg commit
4818
    deb_fact.addStep(Test(
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4819
        name="upgrade1",
908 by Daniel Bartholomew
Add Ubuntu 17.04 "zesty" VMs
4820
        doStepIf=(lambda(step): version_name != "stretch" and (version_name != "sid" or branch_is_10_1_or_later(step)) and ((version_name != "xenial" and version_name != "yakkety" and version_name != "zesty") or branch_is_10_2_or_later(step))),
821 by Daniel Bartholomew
automatic maria-master.cfg commit
4821
        description=["testing", "upgrade", "from", "MySQL"],
4822
        descriptionDone=["upgrade", "from", "MySQL"],
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
4823
        logfiles={"kernel": "kernel_"+port+".log", "syslog": "daemon.log"},
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4824
        warningPattern=".*Upgrade warning:.*",
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
4825
        env={"TERM": "vt102"},
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
4826
        command=["runvm", "--base-image=/kvm/vms/"+kvm_image+"-upgrade.qcow2"] + args + ["--logfile=kernel_"+port+".log", "vm-tmp-"+port+".qcow2",
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4827
        "rm -Rf buildbot && mkdir buildbot",
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
4828
        "= scp -r -P "+port+" "+kvm_scpopt+" debs buildbot@localhost:buildbot/",
906 by Daniel Bartholomew
automatic maria-master.cfg commit
4829
        WithProperties("sh -c \"echo '%(branch)s' | sed -e \\\"s/.*\\\\(5\\\\.[1-356]\\\\|10\\\\.[0123]\\\\).*/\\\\1/\\\"\" > /tmp/VERSION"),
524 by Daniel Bartholomew
Misc updates
4830
        "dpkg -l | grep -iE 'maria|mysql|galera'",
906 by Daniel Bartholomew
automatic maria-master.cfg commit
4831
        WithProperties("case '%(branch)s' in *galera* | *5.5-hf* | *10.[123]*) sudo sh -c \"echo 'deb http://yum.mariadb.org/galera/repo/deb "+version_name+" main' > /etc/apt/sources.list.d/galera-test-repo.list\" ;; esac"),
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4832
        WithProperties("case '%(branch)s' in *galera*) sudo sh -c \"echo 'deb http://mirror2.hs-esslingen.de/mariadb/repo/$(cat /tmp/VERSION)/"+dist_name+" "+version_name+" main' > /etc/apt/sources.list.d/mariadb-test-repo.list\" ;; esac"),
168.1.9 by Kristian Nielsen
For Galera trees, add our main public repo to /etc/apt/sources* when testing.
4833
        WithProperties("""
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4834
set -ex
4835
cd buildbot
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4836
4837
# MariaDB version
4838
mariadb_version=`echo "%(branch)s" | sed -e "s/.*\(5\.[1-356]\|10\.[0-9]\).*/\\1/"`
4839
4840
# Codename: jessie, trusty etc.
4841
version_name=`lsb_release -c | awk '{print $2}'`
4842
4843
# Distributor ID: debian or ubuntu
4844
dist_name=`lsb_release -i | awk '{print tolower($3)}'`
4845
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4846
chmod -cR go+r debs
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4847
sudo apt-get update
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4848
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
4849
mysql -uroot -prootpass -e "use mytest; select * from t"
226 by Kristian Nielsen
Buildbot config updates:
4850
mysql -uroot -prootpass -e "use mytest; drop table if exists upgrade_test; create table upgrade_test (pk int primary key auto_increment, c char(64), v varchar(2048), d date, t time, dt datetime, ts timestamp) engine=InnoDB; begin; insert into upgrade_test values (null, 'test', 'test', date(now()), time(now()), now(), now());  insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; commit"
546 by Daniel Bartholomew
automatic maria-master.cfg commit
4851
mysql -uroot -prootpass --skip-column-names -e "select @@version" | awk -F'-' '{ print $1 }' > /tmp/version.old
788 by Daniel Bartholomew
automatic maria-master.cfg commit
4852
mysql -uroot -prootpass -e "CREATE DATABASE autoinc; CREATE TABLE autoinc.t_autoinc(a SERIAL) ENGINE=InnoDB SELECT 42 a"
789 by Daniel Bartholomew
automatic maria-master.cfg commit
4853
mysql -uroot -prootpass -e "CREATE TABLE autoinc.t_autoinc2(a SERIAL) ENGINE=InnoDB; BEGIN; INSERT INTO autoinc.t_autoinc2 VALUES (NULL),(NULL); ROLLBACK; SHOW CREATE TABLE autoinc.t_autoinc2 \G"
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4854
168.1.9 by Kristian Nielsen
For Galera trees, add our main public repo to /etc/apt/sources* when testing.
4855
sudo sh -c 'DEBIAN_FRONTEND=noninteractive MYSQLD_STARTUP_TIMEOUT=180 apt-get install --allow-unauthenticated -y mariadb-`case '%(branch)s' in *galera* | *5.5-hf*) echo galera- ;; esac`server'
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4856
845 by Daniel Bartholomew
automatic maria-master.cfg commit
4857
old_ver=`dpkg -l | grep -i mysql-server | head -1 | awk '{print $2}' | sed -e "s/.*mysql-server-\(5\.[567]\).*/\\1/"`
4858
4859
case "$old_ver-$mariadb_version" in
4860
4861
5.7-10.[01]|5.7-5.5)
4862
  # On Xenial and Yakkety the pre-installed MySQL is 5.7. 
4863
  # Probably it will happen on further versions of Ubuntu/Debian as well.
4864
  # Due to MDEV-10077, upgrade from 5.7 to pre-10.2 is not supported. 
4865
  # The packaging prevents a failure
4866
  # by backing up the old datadir and creating a new empty one (without the password).
4867
  # The test should take this into account and not attempt to find any old data in the datadir --
4868
  # set the password back, and not to expect to find any tables.
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4869
  mysql -uroot -e "set password = password('rootpass')"
4870
  # If the previous command did not fail, it means root was passwordless, so it's indeed the new datadir
4871
  echo "Upgrade warning"": workaround for upgrade from 5.7 was detected, upgrade created a new datadir"
4872
  ;;
4873
*)
4874
  mysql -uroot -prootpass --skip-column-names -e "INSERT INTO autoinc.t_autoinc SET a=NULL;  SELECT COUNT(*) Expect_2 FROM autoinc.t_autoinc WHERE a>=42"
4875
  echo "Prior to MDEV-6076, the next SELECT would return 1. After MDEV-6076, it should be 3"
4876
  mysql -uroot -prootpass --skip-column-names -e "INSERT INTO autoinc.t_autoinc2 VALUES (NULL); SELECT * FROM autoinc.t_autoinc2"
4877
  mysql -uroot -prootpass -e "use mytest; select * from t; select count(*) from upgrade_test"
4878
  ;;
4879
esac
4880
546 by Daniel Bartholomew
automatic maria-master.cfg commit
4881
mysql -uroot -prootpass -e "select @@version, @@version_comment"
4882
mysql -uroot -prootpass --skip-column-names -e "select @@version" | awk -F'-' '{ print $1 }' > /tmp/version.new
4883
# Version has changed after upgrade
4884
! diff -u  /tmp/version.old  /tmp/version.new
4885
sudo cat /var/lib/mysql/mysql_upgrade_info | awk -F'-' '{ print $1 }' > /tmp/version.upgrade
4886
# mysql_upgrade is run automatically in deb packages
4887
# TODO: something weird goes on with mysql_upgrade, to be checked later
4888
#diff -u /tmp/version.new /tmp/version.upgrade
4889
cat /tmp/version.new
4890
cat /tmp/version.upgrade
545 by Daniel Bartholomew
automatic maria-master.cfg commit
4891
case "%(systemdCapability)s" in
4892
yes)
546 by Daniel Bartholomew
automatic maria-master.cfg commit
4893
  ls -l /lib/systemd/system/mariadb.service
4894
  ls -l /etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf
4895
  ls -l /etc/init.d/mysql
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4896
  systemctl --no-pager status mariadb.service
4897
  systemctl --no-pager status mariadb
4898
  systemctl --no-pager status mysql
4899
  systemctl --no-pager status mysqld
4900
  systemctl --no-pager is-enabled mariadb
4901
  sudo systemctl --no-pager restart mariadb
4902
  systemctl --no-pager status mariadb
546 by Daniel Bartholomew
automatic maria-master.cfg commit
4903
  sudo journalctl -lxn 100 --no-pager | grep mysqld
4904
  # It does not do the same as systemctl now
4905
  # /etc/init.d/mysql status
545 by Daniel Bartholomew
automatic maria-master.cfg commit
4906
  ;;
4907
no)
4908
  echo "Steps related to systemd will be skipped"
4909
  ;;
4910
*)
4911
  echo "It should never happen, check your configuration (systemdCapability property is not set or is set to a wrong value)"
4912
  ;;
4913
esac
168.1.9 by Kristian Nielsen
For Galera trees, add our main public repo to /etc/apt/sources* when testing.
4914
"""),
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
4915
        "! rm -f daemon.log; (sudo cat /var/log/daemon.log || sudo cat /var/log/syslog) >daemon.log",
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
4916
        "!= rm -f daemon.log; scp -P "+port+" "+kvm_scpopt+" buildbot@localhost:daemon.log ."]))
545 by Daniel Bartholomew
automatic maria-master.cfg commit
4917
38 by Kristian Nielsen
Remove builder opensolaris-511-x86, and reduce test parallelism
4918
    deb_fact.addStep(Test(
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4919
        name="upgrade2",
4920
        doStepIf=(lambda(step): version_name != "sid" or branch_is_10_1_or_later(step)),
821 by Daniel Bartholomew
automatic maria-master.cfg commit
4921
        description=["testing", "upgrade", "from", "MariaDB"],
4922
        descriptionDone=["upgrade", "from", "MariaDB"],
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
4923
        logfiles={"kernel": "kernel_"+port+".log", "syslog": "daemon.log"},
38 by Kristian Nielsen
Remove builder opensolaris-511-x86, and reduce test parallelism
4924
        warningPattern=impossibleRe,
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
4925
        env={"TERM": "vt102"},
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
4926
        command=["runvm", "--base-image=/kvm/vms/"+kvm_image+"-upgrade2.qcow2"] + args + ["--logfile=kernel_"+port+".log", "vm-tmp-"+port+".qcow2",
38 by Kristian Nielsen
Remove builder opensolaris-511-x86, and reduce test parallelism
4927
        "rm -Rf buildbot && mkdir buildbot",
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
4928
        "= scp -r -P "+port+" "+kvm_scpopt+" debs buildbot@localhost:buildbot/",
906 by Daniel Bartholomew
automatic maria-master.cfg commit
4929
        WithProperties("sh -c \"echo '%(branch)s' | sed -e \\\"s/.*\\\\(5\\\\.[1-356]\\\\|10\\\\.[0123]\\\\).*/\\\\1/\\\"\" > /tmp/VERSION"),
524 by Daniel Bartholomew
Misc updates
4930
	"dpkg -l | grep -iE 'maria|mysql|galera'",
906 by Daniel Bartholomew
automatic maria-master.cfg commit
4931
        WithProperties("case '%(branch)s' in *galera* | *5.5-hf* | *10.[123]*) sudo sh -c \"echo 'deb http://yum.mariadb.org/galera/repo/deb "+version_name+" main' > /etc/apt/sources.list.d/galera-test-repo.list\" ;; esac"),
652 by Daniel Bartholomew
automatic maria-master.cfg commit
4932
        WithProperties("case '%(branch)s' in *galera*) sudo sh -c \"echo 'deb http://mirror2.hs-esslingen.de/mariadb/repo/$(cat /tmp/VERSION)/"+dist_name+" "+version_name+" main' > /etc/apt/sources.list.d/mariadb-test-repo.list\" ;; esac"),
39 by Kristian Nielsen
Fix mariadb->mariadb upgrade test on 5.2.
4933
        WithProperties("""
38 by Kristian Nielsen
Remove builder opensolaris-511-x86, and reduce test parallelism
4934
set -ex
4935
cd buildbot
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4936
chmod -cR go+r debs
38 by Kristian Nielsen
Remove builder opensolaris-511-x86, and reduce test parallelism
4937
sudo apt-get update
4938
mysql -uroot -prootpass -e "use mytest; select * from t"
228 by Elena Stepanova
Buildbot config changes:
4939
mysql -uroot -prootpass -e "use mytest; set global innodb_file_per_table=0; drop table if exists upgrade_test; create table upgrade_test (pk int primary key auto_increment, c char(64), v varchar(2048), d date, t time, dt datetime, ts timestamp) engine=InnoDB; begin; insert into upgrade_test values (null, 'test', 'test', date(now()), time(now()), now(), now());  insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; insert into upgrade_test select null, 'test', 'test', date(now()), time(now()), now(), now() from upgrade_test; commit" --force
168.1.9 by Kristian Nielsen
For Galera trees, add our main public repo to /etc/apt/sources* when testing.
4940
GALERA=`case '%(branch)s' in *galera* | *5.5-hf*) echo galera- ;; esac`
546 by Daniel Bartholomew
automatic maria-master.cfg commit
4941
mysql -uroot -prootpass --skip-column-names -e "select @@version" | awk -F'-' '{ print $1 }' > /tmp/version.old
788 by Daniel Bartholomew
automatic maria-master.cfg commit
4942
mysql -uroot -prootpass -e "CREATE DATABASE autoinc; CREATE TABLE autoinc.t_autoinc(a SERIAL) ENGINE=InnoDB SELECT 42 a"
789 by Daniel Bartholomew
automatic maria-master.cfg commit
4943
mysql -uroot -prootpass -e "CREATE TABLE autoinc.t_autoinc2(a SERIAL) ENGINE=InnoDB; BEGIN; INSERT INTO autoinc.t_autoinc2 VALUES (NULL),(NULL); ROLLBACK; SHOW CREATE TABLE autoinc.t_autoinc2 \G"
494.1.2 by Sergei Golubchik
simplify debian upgrade tests now when MDEV-5977 is fixed
4944
sudo sh -c "DEBIAN_FRONTEND=noninteractive MYSQLD_STARTUP_TIMEOUT=180 apt-get install --allow-unauthenticated -y mariadb-${GALERA}server mariadb-${GALERA}test"
546 by Daniel Bartholomew
automatic maria-master.cfg commit
4945
mysql -uroot -prootpass -e "select @@version, @@version_comment"
4946
mysql -uroot -prootpass --skip-column-names -e "select @@version" | awk -F'-' '{ print $1 }' > /tmp/version.new
788 by Daniel Bartholomew
automatic maria-master.cfg commit
4947
mysql -uroot -prootpass --skip-column-names -e "INSERT INTO autoinc.t_autoinc SET a=NULL;  SELECT COUNT(*) Expect_2 FROM autoinc.t_autoinc WHERE a>=42"
789 by Daniel Bartholomew
automatic maria-master.cfg commit
4948
echo "Prior to MDEV-6076, the next SELECT would return 1. After MDEV-6076, it should be 3"
4949
mysql -uroot -prootpass --skip-column-names -e "INSERT INTO autoinc.t_autoinc2 VALUES (NULL); SELECT * FROM autoinc.t_autoinc2"
546 by Daniel Bartholomew
automatic maria-master.cfg commit
4950
# Version has changed after upgrade
4951
! diff -u  /tmp/version.old  /tmp/version.new
4952
sudo cat /var/lib/mysql/mysql_upgrade_info | awk -F'-' '{ print $1 }' > /tmp/version.upgrade
4953
# mysql_upgrade is run automatically in deb packages
4954
#diff -u /tmp/version.new /tmp/version.upgrade
4955
cat /tmp/version.new
4956
cat /tmp/version.upgrade
4957
545 by Daniel Bartholomew
automatic maria-master.cfg commit
4958
case "%(systemdCapability)s" in
4959
yes)
546 by Daniel Bartholomew
automatic maria-master.cfg commit
4960
  ls -l /lib/systemd/system/mariadb.service
4961
  ls -l /etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf
4962
  ls -l /etc/init.d/mysql
654 by Daniel Bartholomew
automatic maria-master.cfg commit
4963
  systemctl --no-pager status mariadb.service
4964
  systemctl --no-pager status mariadb
4965
  systemctl --no-pager status mysql
4966
  systemctl --no-pager status mysqld
4967
  systemctl --no-pager is-enabled mariadb
4968
  sudo systemctl --no-pager restart mariadb
4969
  systemctl --no-pager status mariadb
546 by Daniel Bartholomew
automatic maria-master.cfg commit
4970
  sudo journalctl -lxn 100 --no-pager | grep mysqld
4971
  # It does not do the same as systemctl now
4972
  # /etc/init.d/mysql status
545 by Daniel Bartholomew
automatic maria-master.cfg commit
4973
  ;;
4974
no)
4975
  echo "Steps related to systemd will be skipped"
4976
  ;;
4977
*)
4978
  echo "It should never happen, check your configuration (systemdCapability property is not set or is set to a wrong value)"
4979
  ;;
4980
esac
227 by Kristian Nielsen
Add debpkg builder for Otto; when new stuff is pushed to the .deb buildscripts repo on github, it pulls the changes and tries a build.
4981
mysql -uroot -prootpass -e "use mytest; select * from t; select count(*) from upgrade_test"
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
4982
"""),
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
4983
        "! rm -f daemon.log; (sudo cat /var/log/daemon.log || sudo cat /var/log/syslog) >daemon.log",
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
4984
        "!= rm -f daemon.log; scp -P "+port+" "+kvm_scpopt+" buildbot@localhost:daemon.log ."]))
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
4985
4986
    deb_fact.addStep(Test(
775 by Daniel Bartholomew
automatic maria-master.cfg commit
4987
# MDEV-11355 workaround
4988
#        descriptionDone=["test", "minor", "dist-upgrade"],
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4989
# Only run minor upgrade on main trees, because development trees may have old versions
4990
        name="upgrade3",
906 by Daniel Bartholomew
automatic maria-master.cfg commit
4991
        doStepIf=(lambda(step): isMainTree(step) and branch_has_previous_minor_versions(step) and not branch_is_enterprise(step) and (version_name != "sid" or branch_is_10_1_or_later(step))),
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4992
        warningPattern=".*Upgrade warning:.*",
821 by Daniel Bartholomew
automatic maria-master.cfg commit
4993
        description=["testing", "minor", "upgrade"],
4994
        descriptionDone=["minor", "upgrade"],
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
4995
        logfiles={"kernel": "kernel_"+port+".log", "syslog": "daemon.log"},
824 by Daniel Bartholomew
automatic maria-master.cfg commit
4996
#        warningPattern=impossibleRe,
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
4997
        env={"TERM": "vt102"},
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
4998
        command=["runvm", "--base-image=/kvm/vms/"+kvm_image+"-install.qcow2"] + args + ["--logfile=kernel_"+port+".log", "vm-tmp-"+port+".qcow2",
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
4999
        "rm -Rf buildbot && mkdir buildbot",
5000
        "= scp -r -P "+port+" "+kvm_scpopt+" debs buildbot@localhost:buildbot/",
5001
	"sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup",
5002
	"sudo rm -rf /tmp/VERSION /tmp/GALERA",
906 by Daniel Bartholomew
automatic maria-master.cfg commit
5003
        WithProperties("sh -c \"echo '%(branch)s' | sed -e \\\"s/.*\\\\(5\\\\.[1-356]\\\\|10\\\\.[0123]\\\\).*/\\\\1/\\\"\" > /tmp/VERSION"),
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
5004
	WithProperties("sh -c \"case '%(branch)s' in *galera* | *5.5-hf*) echo \\\"galera-\\\" ;; *) echo \\\"\\\" ;; esac\" > /tmp/GALERA"),
528 by Daniel Bartholomew
automatic maria-master.cfg commit
5005
	" dpkg -l | { grep -iE 'maria|mysql|galera' || true; } ",
652 by Daniel Bartholomew
automatic maria-master.cfg commit
5006
	"sudo sh -c \"echo 'deb http://mirror2.hs-esslingen.de/mariadb/repo/$(cat /tmp/VERSION)/"+dist_name+" "+version_name+" main' >> /etc/apt/sources.list\"",
545 by Daniel Bartholomew
automatic maria-master.cfg commit
5007
	WithProperties("""
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
5008
set -ex
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5009
5010
# MariaDB version
5011
mariadb_version=`echo "%(branch)s" | sed -e "s/.*\(5\.[1-356]\|10\.[0-9]\).*/\\1/"`
5012
5013
# Codename: jessie, trusty etc.
5014
version_name=`lsb_release -c | awk '{print $2}'`
5015
5016
# Distributor ID: debian or ubuntu
5017
dist_name=`lsb_release -i | awk '{print tolower($3)}'`
5018
5019
# Architecture
5020
arch=`uname -m`
5021
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
5022
sudo sh -c "echo 'Package: *' > /etc/apt/preferences.d/release"
5023
sudo sh -c "echo 'Pin: origin mirror2.hs-esslingen.de' >> /etc/apt/preferences.d/release"
5024
sudo sh -c "echo 'Pin-Priority: 1000' >> /etc/apt/preferences.d/release"
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5025
5026
sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup
5027
sudo sh -c 'grep -v "^deb file" /etc/apt/sources.list.backup | grep -v "^deb-src file" > /etc/apt/sources.list'
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
5028
sudo apt-get update
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5029
5030
# Check whether the previous release is available
5031
5032
if ! apt-cache search mariadb-server | grep "mariadb-server-$mariadb_version"
5033
then
5034
  echo "Upgrade warning"": MariaDB server $mariadb_version for $dist_name $version_name $arch was not found in repositories"
5035
  exit
5036
fi
5037
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
5038
sudo sh -c 'DEBIAN_FRONTEND=noninteractive MYSQLD_STARTUP_TIMEOUT=180 apt-get install --allow-unauthenticated -y mariadb-$(cat /tmp/GALERA)server'
591 by Daniel Bartholomew
automatic maria-master.cfg commit
5039
mysql -uroot -prootpass --skip-column-names -e "select engine, support, transactions, savepoints from information_schema.engines" | sort > /tmp/engines.old
479 by Daniel Bartholomew
automatic maria-master.cfg commit
5040
mysql -uroot -prootpass --skip-column-names -e "show plugins" | sort > /tmp/plugins.old
546 by Daniel Bartholomew
automatic maria-master.cfg commit
5041
mysql -uroot -prootpass --skip-column-names -e "select @@version" | awk -F'-' '{ print $1 }' > /tmp/version.old
788 by Daniel Bartholomew
automatic maria-master.cfg commit
5042
mysql -uroot -prootpass -e "CREATE DATABASE autoinc; CREATE TABLE autoinc.t_autoinc(a SERIAL) ENGINE=InnoDB SELECT 42 a"
789 by Daniel Bartholomew
automatic maria-master.cfg commit
5043
mysql -uroot -prootpass -e "CREATE TABLE autoinc.t_autoinc2(a SERIAL) ENGINE=InnoDB; BEGIN; INSERT INTO autoinc.t_autoinc2 VALUES (NULL),(NULL); ROLLBACK; SHOW CREATE TABLE autoinc.t_autoinc2 \G"
775 by Daniel Bartholomew
automatic maria-master.cfg commit
5044
# MDEV-11355 workaround
5045
#sudo sh -c "grep 'file:' /etc/apt/sources.list.backup > /etc/apt/sources.list"
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5046
5047
chmod -cR go+r ~/buildbot/debs
775 by Daniel Bartholomew
automatic maria-master.cfg commit
5048
sudo cp /etc/apt/sources.list.backup /etc/apt/sources.list
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
5049
sudo rm /etc/apt/preferences.d/release
5050
sudo apt-get update
775 by Daniel Bartholomew
automatic maria-master.cfg commit
5051
# MDEV-11355 workaround
5052
#sudo sh -c 'DEBIAN_FRONTEND=noninteractive MYSQLD_STARTUP_TIMEOUT=180 apt-get dist-upgrade --allow-unauthenticated -y'
5053
sudo sh -c 'DEBIAN_FRONTEND=noninteractive MYSQLD_STARTUP_TIMEOUT=180 apt-get install --allow-unauthenticated -y mariadb-$(cat /tmp/GALERA)server'
546 by Daniel Bartholomew
automatic maria-master.cfg commit
5054
mysql -uroot -prootpass -e "select @@version, @@version_comment"
5055
mysql -uroot -prootpass --skip-column-names -e "select @@version" | awk -F'-' '{ print $1 }' > /tmp/version.new
788 by Daniel Bartholomew
automatic maria-master.cfg commit
5056
mysql -uroot -prootpass --skip-column-names -e "INSERT INTO autoinc.t_autoinc SET a=NULL;  SELECT COUNT(*) Expect_2 FROM autoinc.t_autoinc WHERE a>=42"
789 by Daniel Bartholomew
automatic maria-master.cfg commit
5057
echo "Prior to MDEV-6076, the next SELECT would return 1. After MDEV-6076, it should be 3"
5058
mysql -uroot -prootpass --skip-column-names -e "INSERT INTO autoinc.t_autoinc2 VALUES (NULL); SELECT * FROM autoinc.t_autoinc2"
546 by Daniel Bartholomew
automatic maria-master.cfg commit
5059
sudo cat /var/lib/mysql/mysql_upgrade_info | awk -F'-' '{ print $1 }' > /tmp/version.upgrade
5060
# mysql_upgrade is run automatically in deb packages
545 by Daniel Bartholomew
automatic maria-master.cfg commit
5061
5062
case "%(systemdCapability)s" in
5063
yes)
546 by Daniel Bartholomew
automatic maria-master.cfg commit
5064
  ls -l /lib/systemd/system/mariadb.service
5065
  ls -l /etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf
5066
  ls -l /etc/init.d/mysql
654 by Daniel Bartholomew
automatic maria-master.cfg commit
5067
  systemctl --no-pager status mariadb.service
5068
  systemctl --no-pager status mariadb
5069
  systemctl --no-pager status mysql
5070
  systemctl --no-pager status mysqld
5071
  systemctl --no-pager is-enabled mariadb
5072
  sudo systemctl --no-pager restart mariadb
5073
  systemctl --no-pager status mariadb
546 by Daniel Bartholomew
automatic maria-master.cfg commit
5074
  sudo journalctl -lxn 100 --no-pager | grep mysqld
5075
  # It does not do the same as systemctl now
5076
  # /etc/init.d/mysql status
545 by Daniel Bartholomew
automatic maria-master.cfg commit
5077
  ;;
5078
no)
5079
  echo "Steps related to systemd will be skipped"
5080
  ;;
5081
*)
5082
  echo "It should never happen, check your configuration (systemdCapability property is not set or is set to a wrong value)"
5083
  ;;
5084
esac
5085
591 by Daniel Bartholomew
automatic maria-master.cfg commit
5086
mysql -uroot -prootpass --skip-column-names -e "select engine, support, transactions, savepoints from information_schema.engines" | sort > /tmp/engines.new
479 by Daniel Bartholomew
automatic maria-master.cfg commit
5087
mysql -uroot -prootpass --skip-column-names -e "show plugins" | sort > /tmp/plugins.new
821 by Daniel Bartholomew
automatic maria-master.cfg commit
5088
5089
cat /tmp/version.old
5090
cat /tmp/version.new
5091
cat /tmp/engines.old
5092
cat /tmp/engines.new
5093
cat /tmp/plugins.old
5094
cat /tmp/plugins.new
5095
cat /tmp/version.upgrade
5096
593 by Daniel Bartholomew
automatic maria-master.cfg commit
5097
case '%(branch)s' in
730 by Daniel Bartholomew
automatic maria-master.cfg commit
5098
*10.2*)
821 by Daniel Bartholomew
automatic maria-master.cfg commit
5099
  echo "Until 10.2 is GA, the list of plugins/engines might be unstable, skipping the check"
730 by Daniel Bartholomew
automatic maria-master.cfg commit
5100
  ;;
593 by Daniel Bartholomew
automatic maria-master.cfg commit
5101
*)
5102
  diff -u /tmp/engines.old /tmp/engines.new 
5103
  diff -u /tmp/plugins.old /tmp/plugins.new 
5104
  ;;
5105
esac
774 by Daniel Bartholomew
automatic maria-master.cfg commit
5106
echo "The next line must show a difference between versions, otherwise it's a failure"
5107
echo "It can be a false positive if we forgot to bump version after release,"
5108
echo "or if the tree is based on an old version"
5109
! diff -u /tmp/version.old /tmp/version.new
545 by Daniel Bartholomew
automatic maria-master.cfg commit
5110
"""),
546 by Daniel Bartholomew
automatic maria-master.cfg commit
5111
	"sudo rm -rf /tmp/engines.old /tmp/engines.new /tmp/plugins.old /tmp/plugins.new /tmp/version.old /tmp/version.new /tmp/version.upgrade /tmp/GALERA /tmp/VERSION",
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
5112
        "! rm -f daemon.log; (sudo cat /var/log/daemon.log || sudo cat /var/log/syslog) >daemon.log",
5113
        "!= rm -f daemon.log; scp -P "+port+" "+kvm_scpopt+" buildbot@localhost:daemon.log ."]))
5114
830 by Daniel Bartholomew
automatic maria-master.cfg commit
5115
# Disabled because of MDEV-11978
821 by Daniel Bartholomew
automatic maria-master.cfg commit
5116
    deb_fact.addStep(Test(
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5117
        name="upgrade4",
830 by Daniel Bartholomew
automatic maria-master.cfg commit
5118
#        doStepIf=(lambda(step): version_name == "jessie" and step.getProperty("branch") == "10.1"),
5119
	doStepIf=False,
821 by Daniel Bartholomew
automatic maria-master.cfg commit
5120
        description=["testing", "upgrade", "from", "Debian's", "packages"],
5121
        descriptionDone=["upgrade", "from", "Debian's", "packages"],
5122
        logfiles={"kernel": "kernel_"+port+".log", "syslog": "daemon.log"},
5123
        warningPattern=impossibleRe,
5124
        env={"TERM": "vt102"},
5125
        command=["runvm", "--base-image=/kvm/vms/"+kvm_image+"-install.qcow2"] + args + ["--logfile=kernel_"+port+".log", "vm-tmp-"+port+".qcow2",
5126
        "rm -Rf buildbot && mkdir buildbot",
5127
        "= scp -r -P "+port+" "+kvm_scpopt+" debs buildbot@localhost:buildbot/",
5128
	WithProperties("""
5129
set -ex
5130
dpkg -l | { grep -iE 'maria|mysql|galera' || true; }
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5131
821 by Daniel Bartholomew
automatic maria-master.cfg commit
5132
sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup
5133
sudo sh -c 'grep -v "^deb file" /etc/apt/sources.list.backup | grep -v "^deb-src file" > /etc/apt/sources.list'
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5134
sudo apt-get update 1>/dev/null
821 by Daniel Bartholomew
automatic maria-master.cfg commit
5135
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5136
sudo sh -c 'DEBIAN_FRONTEND=noninteractive MYSQLD_STARTUP_TIMEOUT=180 apt-get install --allow-unauthenticated -y mariadb-server mariadb-client mariadb-test'
821 by Daniel Bartholomew
automatic maria-master.cfg commit
5137
dpkg -l | grep -iE 'maria|mysql|galera'
5138
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5139
# Some debian packages have unix_socket authentication for local root, 
5140
# while others (e.g. 10.0 on jessie) have old-fashion password authentication.
5141
# In the latter case debconf-set-selections will be used upon installation.
5142
# To avoid distinguishing between these two cases, we will first connect as root
5143
# under sudo, but using the password from debconf. If the installation uses unix_socket,
5144
# the password will be ignored and sudo will allow to connect as system root.
5145
# If the installation uses password authentication, sudo won't matter, and the connection
5146
# will use the password. After that, we will create a password-authenticated super-user
5147
5148
sudo mysql -uroot -prootpass -e "create user admin@localhost identified by 'admin'; grant all on *.* to admin@localhost"
821 by Daniel Bartholomew
automatic maria-master.cfg commit
5149
mysql -uadmin -padmin --skip-column-names -e "select engine, support, transactions, savepoints from information_schema.engines" | sort > /tmp/engines.old
5150
mysql -uadmin -padmin --skip-column-names -e "show plugins" | sort > /tmp/plugins.old
5151
mysql -uadmin -padmin --skip-column-names -e "select @@version" | awk -F'-' '{ print $1 }' > /tmp/version.old
5152
mysql -uadmin -padmin -e "CREATE DATABASE autoinc; CREATE TABLE autoinc.t_autoinc(a SERIAL) ENGINE=InnoDB SELECT 42 a"
5153
mysql -uadmin -padmin -e "CREATE TABLE autoinc.t_autoinc2(a SERIAL) ENGINE=InnoDB; BEGIN; INSERT INTO autoinc.t_autoinc2 VALUES (NULL),(NULL); ROLLBACK; SHOW CREATE TABLE autoinc.t_autoinc2 \G"
5154
5155
chmod -cR go+r ~/buildbot/debs
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5156
5157
# Detect the MariaDB version under test from the package name
5158
# e.g. mariadb-server_5.5.55+maria-1~trusty_all.deb
5159
5160
mariadb_version=`ls ~/buildbot/debs/binary/mariadb-server*all.deb | sed -e 's/.*mariadb-server_\([0-9]*\.[0-9]*\.[0-9]*\)+maria.*/\\1/'`
5161
major_version=`echo $mariadb_version | sed -e 's/^\([0-9]*\.[0-9]*\)\.[0-9]*$/\\1/'`
5162
echo $mariadb_version > /tmp/version.target
5163
5164
echo "We will be upgrading to MariaDB $major_version ($mariadb_version)"
5165
821 by Daniel Bartholomew
automatic maria-master.cfg commit
5166
sudo mv /etc/apt/sources.list.backup /etc/apt/sources.list
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5167
5168
case $major_version in
5169
10.[1-9])
5170
  # Add MariaDB repo to the source list, because the installation might need galera library
5171
  sudo sh -c "echo 'deb http://mirror2.hs-esslingen.de/mariadb/repo/$major_version/"""+dist_name+""" """+version_name+""" main' >> /etc/apt/sources.list"
5172
  ;;
5173
esac
5174
5175
# Not sure it works
821 by Daniel Bartholomew
automatic maria-master.cfg commit
5176
sudo sh -c "echo 'Package: *' > /etc/apt/preferences.d/release"
5177
sudo sh -c "echo 'Pin: origin \"\"' >> /etc/apt/preferences.d/release"
5178
sudo sh -c "echo 'Pin-Priority: 1001' >> /etc/apt/preferences.d/release"
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5179
5180
sudo apt-get update 1>/dev/null
5181
5182
sudo sh -c 'DEBIAN_FRONTEND=noninteractive MYSQLD_STARTUP_TIMEOUT=180 apt-get install --allow-unauthenticated -y mariadb-server mariadb-client mariadb-test'
821 by Daniel Bartholomew
automatic maria-master.cfg commit
5183
5184
mysql -uadmin -padmin -e "select @@version, @@version_comment"
5185
mysql -uadmin -padmin --skip-column-names -e "select @@version" | awk -F'-' '{ print $1 }' > /tmp/version.new
5186
mysql -uadmin -padmin --skip-column-names -e "INSERT INTO autoinc.t_autoinc SET a=NULL;  SELECT COUNT(*) Expect_2 FROM autoinc.t_autoinc WHERE a>=42"
5187
echo "Prior to MDEV-6076, the next SELECT would return 1. After MDEV-6076, it should be 3"
5188
mysql -uadmin -padmin --skip-column-names -e "INSERT INTO autoinc.t_autoinc2 VALUES (NULL); SELECT * FROM autoinc.t_autoinc2"
5189
sudo cat /var/lib/mysql/mysql_upgrade_info | awk -F'-' '{ print $1 }' > /tmp/version.upgrade
5190
# mysql_upgrade is run automatically in deb packages
5191
5192
echo "Checking systemd capability"
5193
case "%(systemdCapability)s" in
5194
yes)
5195
  ls -l /lib/systemd/system/mariadb.service
5196
  ls -l /etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf
5197
  ls -l /etc/init.d/mysql
5198
  systemctl --no-pager status mariadb.service
5199
  systemctl --no-pager status mariadb
5200
  systemctl --no-pager status mysql
5201
  systemctl --no-pager status mysqld
5202
  systemctl --no-pager is-enabled mariadb
5203
  sudo systemctl --no-pager restart mariadb
5204
  systemctl --no-pager status mariadb
5205
  sudo journalctl -lxn 100 --no-pager | grep mysqld
5206
  # It does not do the same as systemctl now
5207
  # /etc/init.d/mysql status
5208
  ;;
5209
no)
5210
  echo "Steps related to systemd will be skipped"
5211
  ;;
5212
*)
5213
  echo "It should never happen, check your configuration (systemdCapability property is not set or is set to a wrong value)"
5214
  ;;
5215
esac
5216
5217
mysql -uadmin -padmin --skip-column-names -e "select engine, support, transactions, savepoints from information_schema.engines" | sort > /tmp/engines.new
5218
mysql -uadmin -padmin --skip-column-names -e "show plugins" | sort > /tmp/plugins.new
5219
5220
cat /tmp/version.old
5221
cat /tmp/version.new
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5222
cat /tmp/version.target
821 by Daniel Bartholomew
automatic maria-master.cfg commit
5223
cat /tmp/engines.old
5224
cat /tmp/engines.new
5225
cat /tmp/plugins.old
5226
cat /tmp/plugins.new
5227
cat /tmp/version.upgrade
5228
5229
echo "The next line must show a difference between versions, otherwise it's a failure"
5230
echo "It can be a false positive if we forgot to bump version after release,"
5231
echo "or if the tree is based on an old version"
5232
! diff -u /tmp/version.old /tmp/version.new
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5233
5234
echo "Also make sure that we installed the version which we expected"
5235
diff -u /tmp/version.target /tmp/version.new
5236
#echo "And check that we haven't lost any engines or plugins"
821 by Daniel Bartholomew
automatic maria-master.cfg commit
5237
#diff -u /tmp/engines.old /tmp/engines.new 
5238
#diff -u /tmp/plugins.old /tmp/plugins.new 
5239
"""),
5240
        "! rm -f daemon.log; (sudo cat /var/log/daemon.log || sudo cat /var/log/syslog) >daemon.log",
5241
        "!= rm -f daemon.log; scp -P "+port+" "+kvm_scpopt+" buildbot@localhost:daemon.log ."]))
5242
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5243
    deb_fact.addStep(getMTR(
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5244
            name="mtr",
5245
            doStepIf=(lambda(step): branch_is_10_1_or_later(step) or version_name != "sid"),
5246
            description=["running", "default", "MTR", "suites"],
5247
            descriptionDone=["default", "MTR", "suites"],
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5248
            test_type="nm",
5249
            test_info="Normal run, no --ps-protocol",
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
5250
            logfiles={"kernel": "kernel_"+port+".log", "syslog": "daemon.log"},
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
5251
            mtr_subdir=".",    # Where we scp vardir to
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
5252
            env={"TERM": "vt102"},
841 by Daniel Bartholomew
MDEV-12069 mtr test failing on kvm-deb-xenial-ppc64le
5253
            command=["runvm", "--base-image=/kvm/vms/"+kvm_image+"-install.qcow2"] + args + ["--logfile=kernel_"+port+".log", "vm-tmp-"+port+".qcow2",
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5254
        "rm -Rf buildbot && mkdir buildbot",
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
5255
        "= scp -r -P "+port+" "+kvm_scpopt+" debs buildbot@localhost:buildbot/",
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5256
        "sudo rm -rf /tmp/VERSION",
906 by Daniel Bartholomew
automatic maria-master.cfg commit
5257
        WithProperties("sh -c \"echo '%(branch)s' | sed -e \\\"s/.*\\\\(5\\\\.[1-356]\\\\|10\\\\.[0123]\\\\).*/\\\\1/\\\" | sed -e \\\"s/10\\\\.2/10\\\\.1/\\\"\" > /tmp/VERSION"),
5258
        WithProperties("case '%(branch)s' in *galera* | *5.5-hf* | *10.[123]*) sudo sh -c \"echo 'deb http://yum.mariadb.org/galera/repo/deb "+version_name+" main' > /etc/apt/sources.list.d/galera-test-repo.list\" ;; esac"),
652 by Daniel Bartholomew
automatic maria-master.cfg commit
5259
        WithProperties("case '%(branch)s' in *galera*) sudo sh -c \"echo 'deb http://mirror2.hs-esslingen.de/mariadb/repo/$(cat /tmp/VERSION)/"+dist_name+" "+version_name+" main' > /etc/apt/sources.list.d/mariadb-test-repo.list\" ;; esac"),
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5260
        WithProperties("""
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5261
set -ex
5262
cd buildbot
654 by Daniel Bartholomew
automatic maria-master.cfg commit
5263
chmod -cR go+r debs
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5264
5265
# MariaDB version
5266
mariadb_version=`echo "%(branch)s" | sed -e "s/.*\(5\.[1-356]\|10\.[0-9]\).*/\\1/"`
5267
echo "MariaDB version: $mariadb_version"
5268
5269
# Codename: jessie, trusty etc.
5270
version_name=`lsb_release -c | awk '{print $2}'`
5271
5272
# Distributor ID: debian or ubuntu
5273
dist_name=`lsb_release -i | awk '{print tolower($3)}'`
5274
5275
echo "System: $dist_name $version_name"
658 by Daniel Bartholomew
automatic maria-master.cfg commit
5276
661 by Daniel Bartholomew
automatic maria-master.cfg commit
5277
# Starting from 10.1, we'll install all MariaDB* packages rather than only server and test.
5278
# It will allow running tests for plugins which come in separate packages. 
5279
# Before 10.1 it is more complicated because of Galera-server which conflicts with the regular server,
5280
# so we won't touch earlier branches
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5281
5282
case "%(branch)s" in
5283
*galera*|*5.5-hf*)
5284
# Not sure why 5.5-hf is here, but that's how it was earlier
5285
  packages_to_install="mariadb-galera-server mariadb-galera-test"
5286
  ;;
5287
*5.5*|*10.0*)
5288
  packages_to_install="mariadb-server mariadb-test"
5289
  ;;
5290
*)
5291
  cd debs/binary
5292
  packages_to_install=`ls *.deb | awk -F'_' '{print $1}' | xargs`
5293
  ;;
5294
esac
5295
658 by Daniel Bartholomew
automatic maria-master.cfg commit
5296
sudo apt-get update
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5297
sudo sh -c "DEBIAN_FRONTEND=noninteractive MYSQLD_STARTUP_TIMEOUT=180 apt-get install --allow-unauthenticated -y $packages_to_install"
5298
658 by Daniel Bartholomew
automatic maria-master.cfg commit
5299
cd /usr/share/mysql/mysql-test
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5300
5301
# Check whether FEEDBACK plugin is currently usable
5302
if wget --timeout=20 --tries=1 https://mariadb.org/feedback_plugin -O /tmp/feedback_page
5303
then
5304
  feedback_plugin=1
5305
  echo "Feedback page okay, enabling the plugin"
5306
else
5307
  feedback_plugin=0
5308
  echo "Pre-MTR warning"": Feedback page is not okay, disabling the plugin"
5309
fi
5310
rm -f /tmp/feedback_page
5311
5312
MTR_FEEDBACK_PLUGIN=$feedback_plugin perl mysql-test-run.pl  --verbose-restart --vardir="$(readlink -f /dev/shm/var)" --parallel=4 --force --retry=3 --max-save-core=0 --max-save-datadir=1 
5313
"""),
658 by Daniel Bartholomew
automatic maria-master.cfg commit
5314
	"sudo rm -rf /tmp/VERSION /tmp/GALERA",
5315
        "! rm -f daemon.log; (sudo cat /var/log/daemon.log || sudo cat /var/log/syslog) >daemon.log",
5316
        "!= rm -f daemon.log; scp -P "+port+" "+kvm_scpopt+" buildbot@localhost:daemon.log .",
5317
        WithProperties(
5318
              "!= rm -Rf var/ ; scp -rp -P " + port + " " + kvm_scpopt +
5319
              " buildbot@localhost:/dev/shm/var/ . || :")]))
5320
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
5321
    return {'name': name, 'slavenames': slavenames, 'builddir': name, 'factory': deb_fact,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
5322
            "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
5323
            "category": catg}
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5324
5325
191 by Daniel Bartholomew
Removed (commented out) the hardy and oneiric builders. They have been
5326
#bld_kvm_deb_hardy_amd64 = getDebBuilder("kvm-deb-hardy-amd64", "vm-hardy-amd64", "2228", "qemu64", "ubuntu", "hardy")
5327
#bld_kvm_deb_hardy_x86 = getDebBuilder("kvm-deb-hardy-x86", "vm-hardy-i386", "2229", "qemu64", "ubuntu", "hardy")
62.1.1 by Kristian Nielsen
New mac mini builder.
5328
#bld_kvm_deb_intrepid_amd64 = getDebBuilder("kvm-deb-intrepid-amd64", "vm-intrepid-amd64", "2230", "qemu64")
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
5329
#bld_kvm_deb_intrepid_x86 = getDebBuilder("kvm-deb-intrepid-x86", "vm-intrepid-i386", "2231", "qemu64")
147 by Kristian Nielsen
Add package builders for 5.5 tree.
5330
#bld_kvm_deb_karmic_amd64 = getDebBuilder("kvm-deb-karmic-amd64", "vm-karmic-amd64", "2232", "qemu64")
5331
#bld_kvm_deb_karmic_x86 = getDebBuilder("kvm-deb-karmic-x86", "vm-karmic-i386", "2233", "qemu64")
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
5332
#bld_kvm_deb_jaunty_amd64 = getDebBuilder("kvm-deb-jaunty-amd64", "vm-jaunty-amd64", "2235", "qemu64")
5333
#bld_kvm_deb_jaunty_x86 = getDebBuilder("kvm-deb-jaunty-x86", "vm-jaunty-i386-deb", "2236", "qemu64")
489 by Daniel Bartholomew
Deactivate Ubuntu 10.04 LTS "Lucid" builders
5334
#bld_kvm_deb_lucid_amd64 = getDebBuilder("kvm-deb-lucid-amd64", "vm-lucid-amd64", "2238", "qemu64", "ubuntu", "lucid")
5335
#bld_kvm_deb_lucid_x86 = getDebBuilder("kvm-deb-lucid-x86", "vm-lucid-i386", "2239", "qemu64", "ubuntu", "lucid")
180 by Daniel Bartholomew
Remove Debian 5, Ubuntu Maverick, Ubuntu Natty, and Fedora 16 builds from buildbot
5336
#bld_kvm_deb_maverick_amd64 = getDebBuilder("kvm-deb-maverick-amd64", "vm-maverick-amd64", "2246", "qemu64", "ubuntu", "maverick")
5337
#bld_kvm_deb_maverick_x86 = getDebBuilder("kvm-deb-maverick-x86", "vm-maverick-i386", "2247", "qemu64", "ubuntu", "maverick")
5338
#bld_kvm_deb_natty_amd64 = getDebBuilder("kvm-deb-natty-amd64", "vm-natty-amd64", "2255", "qemu64", "ubuntu", "natty")
5339
#bld_kvm_deb_natty_x86 = getDebBuilder("kvm-deb-natty-x86", "vm-natty-i386", "2256", "qemu64", "ubuntu", "natty")
191 by Daniel Bartholomew
Removed (commented out) the hardy and oneiric builders. They have been
5340
#bld_kvm_deb_oneiric_amd64 = getDebBuilder("kvm-deb-oneiric-amd64", "vm-oneiric-amd64", "2257", "qemu64", "ubuntu", "oneiric")
5341
#bld_kvm_deb_oneiric_x86 = getDebBuilder("kvm-deb-oneiric-x86", "vm-oneiric-i386", "2258", "qemu64", "ubuntu", "oneiric")
333 by Daniel Bartholomew
automatic maria-master.cfg commit
5342
# Do not run deb-precise-amd64 on terrier2, I saw a "BUG: soft lockup" happen on it.
790 by Daniel Bartholomew
automatic maria-master.cfg commit
5343
# There was bb05 here, removed (temporarily?)
904 by Sergei Golubchik
don't build packages on terrier, use it only for fulltest*
5344
bld_kvm_deb_precise_amd64 = getDebBuilder("kvm-deb-precise-amd64", "vm-precise-amd64", "2259", "qemu64", "ubuntu", "precise", slavenames=["bb01", "bb02", "bb03", "bb04", "bb06", "bb05"], ramdisk=False)
168.1.9 by Kristian Nielsen
For Galera trees, add our main public repo to /etc/apt/sources* when testing.
5345
bld_kvm_deb_precise_x86 = getDebBuilder("kvm-deb-precise-x86", "vm-precise-i386", "2260", "qemu64", "ubuntu", "precise")
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
5346
#bld_kvm_deb_quantal_amd64 = getDebBuilder("kvm-deb-quantal-amd64", "vm-quantal-amd64", "2275", "qemu64", "ubuntu", "quantal", ramdisk=False)
5347
#bld_kvm_deb_quantal_x86 = getDebBuilder("kvm-deb-quantal-x86", "vm-quantal-i386", "2276", "qemu64", "ubuntu", "quantal", ramdisk=False)
215 by Daniel Bartholomew
removed raring builders as it is now deprecated
5348
#bld_kvm_deb_raring_amd64 = getDebBuilder("kvm-deb-raring-amd64", "vm-raring-amd64", "2279", "qemu64", "ubuntu", "raring")
5349
#bld_kvm_deb_raring_x86 = getDebBuilder("kvm-deb-raring-x86", "vm-raring-i386", "2280", "qemu64", "ubuntu", "raring")
321 by Daniel Bartholomew
automatic maria-master.cfg commit
5350
#bld_kvm_deb_saucy_amd64 = getDebBuilder("kvm-deb-saucy-amd64", "vm-saucy-amd64", "2287", "qemu64", "ubuntu", "saucy", ramdisk=False)
5351
#bld_kvm_deb_saucy_x86 = getDebBuilder("kvm-deb-saucy-x86", "vm-saucy-i386", "2288", "qemu64", "ubuntu", "saucy", ramdisk=False)
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
5352
bld_kvm_deb_trusty_amd64 = getDebBuilder("kvm-deb-trusty-amd64", "vm-trusty-amd64", "2293", "qemu64", "ubuntu", "trusty", ramdisk=False)
5353
bld_kvm_deb_trusty_x86 = getDebBuilder("kvm-deb-trusty-x86", "vm-trusty-i386", "2294", "qemu64", "ubuntu", "trusty", ramdisk=False)
823 by Daniel Bartholomew
add kvm-deb-trusty-ppc64le builder
5354
bld_kvm_deb_trusty_ppc64le = getDebBuilder("kvm-deb-trusty-ppc64le", "vm-trusty-ppc64le", "2332", "POWER8", "ubuntu", "trusty", slavenames=["p801"], ramdisk=False, catg="experimental")
584 by Daniel Bartholomew
Disable Ubuntu 14.10 Utopic builders as it has been deprecated
5355
#bld_kvm_deb_utopic_amd64 = getDebBuilder("kvm-deb-utopic-amd64", "vm-utopic-amd64", "2305", "qemu64", "ubuntu", "utopic", slavenames=["bb01", "bb02"], ramdisk=False, catg="experimental")
5356
#bld_kvm_deb_utopic_x86 = getDebBuilder("kvm-deb-utopic-x86", "vm-utopic-i386", "2306", "qemu64", "ubuntu", "utopic", slavenames=["bb01", "bb02"], ramdisk=False, catg="experimental")
647 by Daniel Bartholomew
automatic maria-master.cfg commit
5357
#bld_kvm_deb_vivid_amd64 = getDebBuilder("kvm-deb-vivid-amd64", "vm-vivid-amd64", "2313", "qemu64", "ubuntu", "vivid", slavenames=["bb01", "bb02", "bb03", "bb04"], ramdisk=False)
5358
#bld_kvm_deb_vivid_x86 = getDebBuilder("kvm-deb-vivid-x86", "vm-vivid-i386", "2314", "qemu64", "ubuntu", "vivid", slavenames=["bb01", "bb02", "bb03", "bb04"], ramdisk=False)
710 by Daniel Bartholomew
automatic maria-master.cfg commit
5359
#bld_kvm_deb_wily_amd64 = getDebBuilder("kvm-deb-wily-amd64", "vm-wily-amd64", "2319", "qemu64", "ubuntu", "wily", slavenames=["bb01", "bb02", "bb03", "bb04"], ramdisk=False)
5360
#bld_kvm_deb_wily_x86 = getDebBuilder("kvm-deb-wily-x86", "vm-wily-i386", "2320", "qemu64", "ubuntu", "wily", slavenames=["bb01", "bb02", "bb03", "bb04"], ramdisk=False)
790 by Daniel Bartholomew
automatic maria-master.cfg commit
5361
# There was bb05 here, removed (temporarily?)
807 by Daniel Bartholomew
automatic maria-master.cfg commit
5362
bld_kvm_deb_xenial_amd64 = getDebBuilder("kvm-deb-xenial-amd64", "vm-xenial-amd64", "2323", "qemu64", "ubuntu", "xenial", slavenames=["bb01", "bb02", "bb03", "bb04", "bb06", "bb05"], ramdisk=False)
790 by Daniel Bartholomew
automatic maria-master.cfg commit
5363
# There was bb05 here, removed (temporarily?)
807 by Daniel Bartholomew
automatic maria-master.cfg commit
5364
bld_kvm_deb_xenial_x86 = getDebBuilder("kvm-deb-xenial-x86", "vm-xenial-i386", "2324", "qemu64", "ubuntu", "xenial", slavenames=["bb01", "bb02", "bb03", "bb04", "bb06", "bb05"], ramdisk=False)
777 by Daniel Bartholomew
automatic maria-master.cfg commit
5365
bld_kvm_deb_xenial_ppc64le = getDebBuilder("kvm-deb-xenial-ppc64le", "vm-xenial-ppc64le", "2335", "POWER8", "ubuntu", "xenial", slavenames=["p801"], ramdisk=False, catg="experimental")
790 by Daniel Bartholomew
automatic maria-master.cfg commit
5366
# There was bb05 here, removed (temporarily?)
807 by Daniel Bartholomew
automatic maria-master.cfg commit
5367
bld_kvm_deb_yakkety_amd64 = getDebBuilder("kvm-deb-yakkety-amd64", "vm-yakkety-amd64", "2329", "qemu64", "ubuntu", "yakkety", slavenames=["bb01", "bb02", "bb03", "bb04", "bb06", "bb05"], ramdisk=False)
790 by Daniel Bartholomew
automatic maria-master.cfg commit
5368
# There was bb05 here, removed (temporarily?)
807 by Daniel Bartholomew
automatic maria-master.cfg commit
5369
bld_kvm_deb_yakkety_x86 = getDebBuilder("kvm-deb-yakkety-x86", "vm-yakkety-i386", "2330", "qemu64", "ubuntu", "yakkety", slavenames=["bb01", "bb02", "bb03", "bb04", "bb06", "bb05"], ramdisk=False)
771 by Daniel Bartholomew
automatic maria-master.cfg commit
5370
908 by Daniel Bartholomew
Add Ubuntu 17.04 "zesty" VMs
5371
bld_kvm_deb_zesty_amd64 = getDebBuilder("kvm-deb-zesty-amd64", "vm-zesty-amd64", "2350", "qemu64", "ubuntu", "zesty", slavenames=["bb01", "bb02", "bb03", "bb04", "bb06", "bb05"], ramdisk=False)
5372
bld_kvm_deb_zesty_x86 = getDebBuilder("kvm-deb-zesty-x86", "vm-zesty-i386", "2351", "qemu64", "ubuntu", "zesty", slavenames=["bb01", "bb02", "bb03", "bb04", "bb06", "bb05"], ramdisk=False)
5373
180 by Daniel Bartholomew
Remove Debian 5, Ubuntu Maverick, Ubuntu Natty, and Fedora 16 builds from buildbot
5374
#bld_kvm_deb_debian5_amd64 = getDebBuilder("kvm-deb-debian5-amd64", "vm-debian5-amd64", "2234", "qemu64", "debian", "lenny")
5375
#bld_kvm_deb_debian5_x86 = getDebBuilder("kvm-deb-debian5-x86", "vm-debian5-i386", "2226", "qemu64", "debian", "lenny")
771 by Daniel Bartholomew
automatic maria-master.cfg commit
5376
647 by Daniel Bartholomew
automatic maria-master.cfg commit
5377
#bld_kvm_deb_debian6_amd64 = getDebBuilder("kvm-deb-debian6-amd64", "vm-debian6-amd64", "2244", "qemu64", "debian", "squeeze", ramdisk=False, catg="experimental")
5378
#bld_kvm_deb_debian6_x86 = getDebBuilder("kvm-deb-debian6-x86", "vm-debian6-i386", "2245", "qemu64", "debian", "squeeze", ramdisk=False, catg="experimental")
771 by Daniel Bartholomew
automatic maria-master.cfg commit
5379
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
5380
bld_kvm_deb_wheezy_amd64 = getDebBuilder("kvm-deb-wheezy-amd64", "vm-wheezy-amd64", "2269", "qemu64", "debian", "wheezy", ramdisk=False)
5381
bld_kvm_deb_wheezy_x86 = getDebBuilder("kvm-deb-wheezy-x86", "vm-wheezy-i386", "2270", "qemu64", "debian", "wheezy", ramdisk=False)
771 by Daniel Bartholomew
automatic maria-master.cfg commit
5382
790 by Daniel Bartholomew
automatic maria-master.cfg commit
5383
# There was bb05 here, removed (temporarily?)
807 by Daniel Bartholomew
automatic maria-master.cfg commit
5384
bld_kvm_deb_jessie_amd64 = getDebBuilder("kvm-deb-jessie-amd64", "vm-jessie-amd64", "2315", "qemu64", "debian", "jessie", slavenames=["bb01", "bb02", "bb03", "bb04", "bb06", "bb05"], ramdisk=False)
790 by Daniel Bartholomew
automatic maria-master.cfg commit
5385
# There was bb05 here, removed (temporarily?)
807 by Daniel Bartholomew
automatic maria-master.cfg commit
5386
bld_kvm_deb_jessie_x86 = getDebBuilder("kvm-deb-jessie-x86", "vm-jessie-i386", "2316", "qemu64", "debian", "jessie", slavenames=["bb01", "bb02", "bb03", "bb04", "bb06", "bb05"], ramdisk=False)
778 by Daniel Bartholomew
automatic maria-master.cfg commit
5387
bld_kvm_deb_jessie_ppc64le = getDebBuilder("kvm-deb-jessie-ppc64le", "vm-jessie-ppc64le", "2336", "POWER8", "debian", "jessie", slavenames=["p801"], ramdisk=False, catg="experimental")
771 by Daniel Bartholomew
automatic maria-master.cfg commit
5388
790 by Daniel Bartholomew
automatic maria-master.cfg commit
5389
# There was bb05 here, removed (temporarily?)
807 by Daniel Bartholomew
automatic maria-master.cfg commit
5390
bld_kvm_deb_stretch_amd64 = getDebBuilder("kvm-deb-stretch-amd64", "vm-stretch-amd64", "2333", "qemu64", "debian", "stretch", slavenames=["bb01", "bb02", "bb03", "bb04", "bb06", "bb05"], ramdisk=False)
790 by Daniel Bartholomew
automatic maria-master.cfg commit
5391
# There was bb05 here, removed (temporarily?)
807 by Daniel Bartholomew
automatic maria-master.cfg commit
5392
bld_kvm_deb_stretch_x86 =   getDebBuilder("kvm-deb-stretch-x86",   "vm-stretch-i386",  "2334", "qemu64", "debian", "stretch", slavenames=["bb01", "bb02", "bb03", "bb04", "bb06", "bb05"], ramdisk=False)
815 by Daniel Bartholomew
Add stretch-ppc64le builder
5393
bld_kvm_deb_stretch_ppc64le = getDebBuilder("kvm-deb-stretch-ppc64le",   "vm-stretch-ppc64le",  "2339", "POWER8", "debian", "stretch", slavenames=["p801"], ramdisk=False, catg="experimental")
771 by Daniel Bartholomew
automatic maria-master.cfg commit
5394
654 by Daniel Bartholomew
automatic maria-master.cfg commit
5395
bld_kvm_deb_sid_amd64 = getDebBuilder("kvm-deb-sid-amd64", "vm-sid-amd64", "2295", "qemu64", "debian", "sid", ramdisk=False, catg="experimental")
5396
bld_kvm_deb_sid_x86 = getDebBuilder("kvm-deb-sid-x86", "vm-sid-i386", "2296", "qemu64", "debian", "sid", ramdisk=False, catg="experimental")
771 by Daniel Bartholomew
automatic maria-master.cfg commit
5397
29.1.1 by Kristian Nielsen
Add the --gen-suppressions valgrind option.
5398
# Some serious kvm/kernel problem on debian4, need aggressive retry
46 by Kristian Nielsen
New trees (and remove some old).
5399
#bld_kvm_deb_debian4_amd64 = getDebBuilder("kvm-deb-debian4-amd64", "vm-debian4-amd64", "2240", "qemu64", kvmargs=["--netdev=e1000",  "--kvm-retries=20", "--kvm=-cdrom", "--kvm=/kvm/debian-40r8-amd64-netinst.iso"])
5400
#bld_kvm_deb_debian4_x86 = getDebBuilder("kvm-deb-debian4-x86", "vm-debian4-i386", "2241", "qemu32,-nx", kvmargs=["--netdev=e1000",  "--kvm-retries=20", "--kvm=-cdrom", "--kvm=/kvm/debian-40r8-i386-netinst.iso"])
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5401
539 by Daniel Bartholomew
automatic maria-master.cfg commit
5402
#-------------------------------------------------------------------------------
5403
# Debian package factory for Galera
5404
#-------------------------------------------------------------------------------
652 by Daniel Bartholomew
automatic maria-master.cfg commit
5405
def getGalDebBuilder(name, kvm_image, port, cpu, dist_name, version_name, kvmargs=[], slavenames=kvm_slaves, ramdisk=True):
601 by Daniel Bartholomew
automatic maria-master.cfg commit
5406
5407
    kvm_build_image = getGaleraBuildImage(kvm_image)
5408
346 by Daniel Bartholomew
automatic maria-master.cfg commit
5409
    args= ["--port="+port, "--user=buildbot", "--smp=4", "--cpu="+cpu, "--startup-timeout=600"] + kvmargs
5410
    if ramdisk:
5411
        args= args + ["--work-image=/dev/shm/vm-tmp-"+port+".qcow2"]
5412
    deb_fact= factory.BuildFactory()
5413
    # Delete ../build/* rather than simply * just to be a little safer if we
5414
    # somehow end up running in wrong directory!
5415
    deb_fact.addStep(ShellCommand(
5416
        description=["cleaning", "build", "dir"],
5417
        descriptionDone=["clean", "build", "dir"],
5418
        command=["sh", "-c", "rm -Rf ../build/*"]))
5419
    deb_fact.addStep(ShellCommand(
5420
        description=["rsyncing", "VMs"],
5421
        descriptionDone=["rsync", "VMs"],
5422
        doStepIf=(lambda(step): step.getProperty("slavename") != "bb01"),
5423
        haltOnFailure=True,
471 by Daniel Bartholomew
automatic maria-master.cfg commit
5424
        command=["rsync", "-a", "-v", "-L",
601 by Daniel Bartholomew
automatic maria-master.cfg commit
5425
                 "bb01.mariadb.net::kvm/vms/"+kvm_build_image+".qcow2",
346 by Daniel Bartholomew
automatic maria-master.cfg commit
5426
                 "bb01.mariadb.net::kvm/vms/"+kvm_image+"-install.qcow2",
5427
                 "/kvm/vms/"]))
5428
    deb_fact.addStep(Compile(
5429
        description=["making", "debs"],
5430
        descriptionDone=["make", "debs"],
5431
        logfiles={"kernel": "kernel_"+port+".log"},
5432
        warningPattern=gccWarningPattern,
5433
        warningExtractor=Compile.warnExtractFromRegexpGroups,
5434
        suppressionFile=WithProperties("compiler_warnings.supp"),
5435
        timeout=3600,
5436
        env={"TERM": "vt102"},
601 by Daniel Bartholomew
automatic maria-master.cfg commit
5437
        command=["runvm", "--base-image=/kvm/vms/"+kvm_build_image+".qcow2"] + args +["--logfile=kernel_"+port+".log", "vm-tmp-"+port+".qcow2",
346 by Daniel Bartholomew
automatic maria-master.cfg commit
5438
        "rm -Rf buildbot && mkdir buildbot",
5439
        WithProperties("""
5440
set -ex
5441
cd buildbot
664 by Daniel Bartholomew
automatic maria-master.cfg commit
5442
mkdir -p debs/binary debs/source
654 by Daniel Bartholomew
automatic maria-master.cfg commit
5443
chmod -cR go+r debs
538 by Daniel Bartholomew
misc changes
5444
git clone -b %(branch)s "https://github.com/MariaDB/galera.git" build
346 by Daniel Bartholomew
automatic maria-master.cfg commit
5445
cd build
535 by Daniel Bartholomew
automatic maria-master.cfg commit
5446
./scripts/build.sh -p
537 by Daniel Bartholomew
automatic maria-master.cfg commit
5447
cp `find ../*.deb -maxdepth 1 -type f` ../debs/binary/
624 by Daniel Bartholomew
automatic maria-master.cfg commit
5448
cp `find ../*.changes -maxdepth 1 -type f` ../debs/binary/
537 by Daniel Bartholomew
automatic maria-master.cfg commit
5449
cd ../debs
346 by Daniel Bartholomew
automatic maria-master.cfg commit
5450
dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz
5451
dpkg-scansources source /dev/null | gzip -9c > source/Sources.gz
5452
"""),
5453
        "= rm -Rf debs",
5454
        "= scp -r -P "+port+" "+kvm_scpopt+" buildbot@localhost:buildbot/debs .",
5455
        ]))
539 by Daniel Bartholomew
automatic maria-master.cfg commit
5456
    addPackageUploadStep(deb_fact, 'debs')
346 by Daniel Bartholomew
automatic maria-master.cfg commit
5457
    deb_fact.addStep(Test(
5458
        description=["testing", "install"],
5459
        descriptionDone=["test", "install"],
5460
        logfiles={"kernel": "kernel_"+port+".log", "syslog": "daemon.log"},
5461
        warningPattern=impossibleRe,
5462
        env={"TERM": "vt102"},
5463
        command=["runvm", "--base-image=/kvm/vms/"+kvm_image+"-install.qcow2"] + args + ["--logfile=kernel_"+port+".log", "vm-tmp-"+port+".qcow2",
5464
        "rm -Rf buildbot && mkdir buildbot",
5465
        "= scp -r -P "+port+" "+kvm_scpopt+" debs buildbot@localhost:buildbot/",
5466
        WithProperties("""
5467
set -ex
5468
cd buildbot
772 by Daniel Bartholomew
automatic maria-master.cfg commit
5469
chmod -cR go+r debs
346 by Daniel Bartholomew
automatic maria-master.cfg commit
5470
sudo apt-get update
537 by Daniel Bartholomew
automatic maria-master.cfg commit
5471
sudo sh -c "DEBIAN_FRONTEND=noninteractive MYSQLD_STARTUP_TIMEOUT=180 apt-get install --allow-unauthenticated -y galera-3 galera-arbitrator-3"
346 by Daniel Bartholomew
automatic maria-master.cfg commit
5472
garbd --version
5473
"""),
5474
        "! rm -f daemon.log; (sudo cat /var/log/daemon.log || sudo cat /var/log/syslog) >daemon.log",
5475
        "!= rm -f daemon.log; scp -P "+port+" "+kvm_scpopt+" buildbot@localhost:daemon.log ."]))
5476
5477
    return {'name': name, 'slavenames': slavenames, 'builddir': name, 'factory': deb_fact,
5478
            "nextBuild": myNextBuild,
581 by Daniel Bartholomew
automatic maria-master.cfg commit
5479
            "category": "galera"}
346 by Daniel Bartholomew
automatic maria-master.cfg commit
5480
489 by Daniel Bartholomew
Deactivate Ubuntu 10.04 LTS "Lucid" builders
5481
#gal_bld_kvm_deb_lucid_amd64 = getGalDebBuilder("kvm-deb-lucid-amd64-gal", "vm-lucid-amd64",
5482
#                                     "3020", "qemu64", "ubuntu", "lucid")
5483
#gal_bld_kvm_deb_lucid_x86 = getGalDebBuilder("kvm-deb-lucid-x86-gal", "vm-lucid-i386",
5484
#                                     "3021", "qemu64", "ubuntu", "lucid")
369 by Daniel Bartholomew
automatic maria-master.cfg commit
5485
gal_bld_kvm_deb_precise_amd64 = getGalDebBuilder("kvm-deb-precise-amd64-gal", "vm-precise-amd64",
5486
                                     "3022", "qemu64", "ubuntu", "precise", ramdisk=False)
5487
gal_bld_kvm_deb_precise_x86 = getGalDebBuilder("kvm-deb-precise-x86-gal", "vm-precise-i386",
5488
                                     "3023", "qemu64", "ubuntu", "precise")
5489
gal_bld_kvm_deb_trusty_amd64 = getGalDebBuilder("kvm-deb-trusty-amd64-gal", "vm-trusty-amd64",
5490
                                     "3024", "qemu64", "ubuntu", "trusty", ramdisk=False)
5491
gal_bld_kvm_deb_trusty_x86 = getGalDebBuilder("kvm-deb-trusty-x86-gal", "vm-trusty-i386",
5492
                                     "3025", "qemu64", "ubuntu", "trusty", ramdisk=False)
823 by Daniel Bartholomew
add kvm-deb-trusty-ppc64le builder
5493
gal_bld_kvm_deb_trusty_ppc64le = getGalDebBuilder("kvm-deb-trusty-ppc64le-gal", "vm-trusty-ppc64le",
5494
                                     "3055", "POWER8", "ubuntu", "trusty", slavenames=["p801"], ramdisk=False)
647 by Daniel Bartholomew
automatic maria-master.cfg commit
5495
#gal_bld_kvm_deb_debian6_amd64 = getGalDebBuilder("kvm-deb-debian6-amd64-gal", "vm-debian6-amd64",
5496
#                                     "3026", "qemu64", "debian", "squeeze", ramdisk=False)
5497
#gal_bld_kvm_deb_debian6_x86 = getGalDebBuilder("kvm-deb-debian6-x86-gal", "vm-debian6-i386",
5498
#                                     "3027", "qemu64", "debian", "squeeze", ramdisk=False)
369 by Daniel Bartholomew
automatic maria-master.cfg commit
5499
gal_bld_kvm_deb_wheezy_amd64 = getGalDebBuilder("kvm-deb-wheezy-amd64-gal", "vm-wheezy-amd64",
5500
                                     "3028", "qemu64", "debian", "wheezy", ramdisk=False)
5501
gal_bld_kvm_deb_wheezy_x86 = getGalDebBuilder("kvm-deb-wheezy-x86-gal", "vm-wheezy-i386",
5502
                                     "3029", "qemu64", "debian", "wheezy", ramdisk=False)
5503
gal_bld_kvm_deb_sid_amd64 = getGalDebBuilder("kvm-deb-sid-amd64-gal", "vm-sid-amd64",
5504
                                     "3030", "qemu64", "debian", "sid", ramdisk=False)
5505
gal_bld_kvm_deb_sid_x86 = getGalDebBuilder("kvm-deb-sid-x86-gal", "vm-sid-i386",
5506
                                     "3031", "qemu64", "debian", "sid", ramdisk=False)
584 by Daniel Bartholomew
Disable Ubuntu 14.10 Utopic builders as it has been deprecated
5507
#gal_bld_kvm_deb_utopic_amd64 = getGalDebBuilder("kvm-deb-utopic-amd64-gal", "vm-utopic-amd64",
5508
#                                     "3032", "qemu64", "debian", "utopic", ramdisk=False)
5509
#gal_bld_kvm_deb_utopic_x86 = getGalDebBuilder("kvm-deb-utopic-x86-gal", "vm-utopic-i386",
5510
#                                     "3033", "qemu64", "debian", "utopic", ramdisk=False)
647 by Daniel Bartholomew
automatic maria-master.cfg commit
5511
#gal_bld_kvm_deb_vivid_amd64 = getGalDebBuilder("kvm-deb-vivid-amd64-gal", "vm-vivid-amd64",
5512
#                                     "3034", "qemu64", "debian", "vivid", ramdisk=False)
5513
#gal_bld_kvm_deb_vivid_x86 = getGalDebBuilder("kvm-deb-vivid-x86-gal", "vm-vivid-i386",
5514
#                                     "3035", "qemu64", "debian", "vivid", ramdisk=False)
710 by Daniel Bartholomew
automatic maria-master.cfg commit
5515
#gal_bld_kvm_deb_wily_amd64 = getGalDebBuilder("kvm-deb-wily-amd64-gal", "vm-wily-amd64",
5516
#                                     "3038", "qemu64", "debian", "wily", ramdisk=False)
5517
#gal_bld_kvm_deb_wily_x86 = getGalDebBuilder("kvm-deb-wily-x86-gal", "vm-wily-i386",
5518
#                                     "3039", "qemu64", "debian", "wily", ramdisk=False)
660 by Daniel Bartholomew
automatic maria-master.cfg commit
5519
gal_bld_kvm_deb_xenial_amd64 = getGalDebBuilder("kvm-deb-xenial-amd64-gal", "vm-xenial-amd64",
778 by Daniel Bartholomew
automatic maria-master.cfg commit
5520
                                     "3040", "qemu64", "ubuntu", "xenial", ramdisk=False)
660 by Daniel Bartholomew
automatic maria-master.cfg commit
5521
gal_bld_kvm_deb_xenial_x86 = getGalDebBuilder("kvm-deb-xenial-x86-gal", "vm-xenial-i386",
778 by Daniel Bartholomew
automatic maria-master.cfg commit
5522
                                     "3041", "qemu64", "ubuntu", "xenial", ramdisk=False)
777 by Daniel Bartholomew
automatic maria-master.cfg commit
5523
gal_bld_kvm_deb_xenial_ppc64le = getGalDebBuilder("kvm-deb-xenial-ppc64le-gal", "vm-xenial-ppc64le",
778 by Daniel Bartholomew
automatic maria-master.cfg commit
5524
                                     "3049", "POWER8", "ubuntu", "xenial", slavenames=["p801"], ramdisk=False)
754 by Daniel Bartholomew
automatic maria-master.cfg commit
5525
gal_bld_kvm_deb_yakkety_amd64 = getGalDebBuilder("kvm-deb-yakkety-amd64-gal", "vm-yakkety-amd64",
778 by Daniel Bartholomew
automatic maria-master.cfg commit
5526
                                     "3045", "qemu64", "ubuntu", "yakkety", ramdisk=False)
754 by Daniel Bartholomew
automatic maria-master.cfg commit
5527
gal_bld_kvm_deb_yakkety_x86 = getGalDebBuilder("kvm-deb-yakkety-x86-gal", "vm-yakkety-i386",
778 by Daniel Bartholomew
automatic maria-master.cfg commit
5528
                                     "3046", "qemu64", "ubuntu", "yakkety", ramdisk=False)
908 by Daniel Bartholomew
Add Ubuntu 17.04 "zesty" VMs
5529
gal_bld_kvm_deb_zesty_amd64 = getGalDebBuilder("kvm-deb-zesty-amd64-gal", "vm-zesty-amd64",
5530
                                     "3059", "qemu64", "ubuntu", "zesty", ramdisk=False)
5531
gal_bld_kvm_deb_zesty_x86 = getGalDebBuilder("kvm-deb-zesty-x86-gal", "vm-zesty-i386",
5532
                                     "3060", "qemu64", "ubuntu", "zesty", ramdisk=False)
542 by Daniel Bartholomew
automatic maria-master.cfg commit
5533
gal_bld_kvm_deb_jessie_amd64 = getGalDebBuilder("kvm-deb-jessie-amd64-gal", "vm-jessie-amd64",
5534
                                     "3036", "qemu64", "debian", "jessie", ramdisk=False)
5535
gal_bld_kvm_deb_jessie_x86 = getGalDebBuilder("kvm-deb-jessie-x86-gal", "vm-jessie-i386",
5536
                                     "3037", "qemu64", "debian", "jessie", ramdisk=False)
778 by Daniel Bartholomew
automatic maria-master.cfg commit
5537
gal_bld_kvm_deb_jessie_ppc64le = getGalDebBuilder("kvm-deb-jessie-ppc64le-gal", "vm-jessie-ppc64le",
5538
                                     "3050", "POWER8", "debian", "jessie", slavenames=["p801"], ramdisk=False)
771 by Daniel Bartholomew
automatic maria-master.cfg commit
5539
gal_bld_kvm_deb_stretch_amd64 = getGalDebBuilder("kvm-deb-stretch-amd64-gal", "vm-stretch-amd64",
5540
                                     "3047", "qemu64", "debian", "stretch", ramdisk=False)
5541
gal_bld_kvm_deb_stretch_x86 = getGalDebBuilder("kvm-deb-stretch-x86-gal", "vm-stretch-i386",
5542
                                     "3048", "qemu64", "debian", "stretch", ramdisk=False)
815 by Daniel Bartholomew
Add stretch-ppc64le builder
5543
gal_bld_kvm_deb_stretch_ppc64le = getGalDebBuilder("kvm-deb-stretch-ppc64le-gal", "vm-stretch-ppc64le",
5544
                                     "3053", "POWER8", "debian", "stretch", slavenames=["p801"], ramdisk=False)
346 by Daniel Bartholomew
automatic maria-master.cfg commit
5545
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5546
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
5547
def getBintarBuilder(name, kvm_image, port, cpu, ramdisk=True, catg="main"):
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
5548
    args = ["--port="+port, "--user=buildbot", "--cpu="+cpu, "--smp=4", "--logfile=kernel_"+port+".log"]
5549
    if ramdisk:
5550
        args = args + ["--work-image=/dev/shm/vm-tmp-"+port+".qcow2"]
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5551
    bin_fact = factory.BuildFactory()
168.1.4 by Kristian Nielsen
Move RPM and bintar builders to the "cloud" approach, automatically rsync'ing
5552
    # Delete ../build/* rather than simply * just to be a little safer if we
5553
    # somehow end up running in wrong directory!
5554
    bin_fact.addStep(ShellCommand(
5555
        description=["cleaning", "build", "dir"],
5556
        descriptionDone=["clean", "build", "dir"],
5557
        command=["sh", "-c", "rm -Rf ../build/*"]))
5558
    bin_fact.addStep(ShellCommand(
5559
        description=["rsyncing", "VMs"],
5560
        descriptionDone=["rsync", "VMs"],
302 by Daniel Bartholomew
Change kvm rsync host from terrier.askmonty.org to bb01.mariadb.net
5561
        doStepIf=(lambda(step): step.getProperty("slavename") != "bb01"),
168.1.4 by Kristian Nielsen
Move RPM and bintar builders to the "cloud" approach, automatically rsync'ing
5562
        haltOnFailure=True,
471 by Daniel Bartholomew
automatic maria-master.cfg commit
5563
        command=["rsync", "-a", "-v", "-L",
302 by Daniel Bartholomew
Change kvm rsync host from terrier.askmonty.org to bb01.mariadb.net
5564
                 "bb01.mariadb.net::kvm/vms/"+kvm_image+"-build.qcow2",
5565
                 "bb01.mariadb.net::kvm/vms/"+kvm_image+"-install.qcow2",
168.1.4 by Kristian Nielsen
Move RPM and bintar builders to the "cloud" approach, automatically rsync'ing
5566
                 "/kvm/vms/"]))
362 by Daniel Bartholomew
automatic maria-master.cfg commit
5567
    bin_fact.addStep(DownloadSourceTarball())
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5568
    bin_fact.addStep(FileDownload(
5569
        mastersrc=WithProperties("%(bakerypath)s"),
154 by Kristian Nielsen
educe parallelism on overloaded host.
5570
        slavedest=WithProperties("%(bakery)s.tar.gz"),
385 by Kristian Nielsen
Increase upload block size in an attempt to get better transfer speed.
5571
        blocksize=524288,
154 by Kristian Nielsen
educe parallelism on overloaded host.
5572
        doStepIf=branch_is_5_123))
688 by Daniel Bartholomew
automatic maria-master.cfg commit
5573
    bin_fact.addStep(ShellCommand(
5574
        description=["getting", ".supp"],
5575
        descriptionDone=["get", ".supp"],
5576
        command=["sh", "-c", WithProperties("""
5577
rm -f compiler_warnings.supp
5578
tar zxf "/tmp/buildcache/%(tarbuildnum)s:%(distname)s" --strip 2 "$(basename %(distname)s .tar.gz)/support-files/compiler_warnings.supp"
5579
ls -l compiler_warnings.supp
5580
exit 0  # best-effort, not fatal if no suppression file
5581
""")]))
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5582
    bin_fact.addStep(Compile(
5583
        description=["making", "bintar"],
5584
        descriptionDone=["make", "bintar"],
89 by Kristian Nielsen
Add Daniel's solaris slave.
5585
        timeout=3600,
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
5586
        logfiles={"kernel": "kernel_"+port+".log"},
688 by Daniel Bartholomew
automatic maria-master.cfg commit
5587
        warningPattern=gccWarningPattern,
5588
        warningExtractor=Compile.warnExtractFromRegexpGroups,
5589
        suppressionFile=WithProperties("compiler_warnings.supp"),
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
5590
        env={"TERM": "vt102"},
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
5591
        command=["runvm"] + args + ["--base-image=/kvm/vms/"+kvm_image+"-build.qcow2", "vm-tmp-"+port+".qcow2",
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5592
        "rm -Rf buildbot && mkdir buildbot",
362 by Daniel Bartholomew
automatic maria-master.cfg commit
5593
        ScpSourceIntoVM(port),
168.1.4 by Kristian Nielsen
Move RPM and bintar builders to the "cloud" approach, automatically rsync'ing
5594
        WithProperties("= case '%(branch)s' in *5\\.[123]*) scp -P "+port+" "+kvm_scpopt+" %(bakery)s.tar.gz buildbot@localhost:buildbot/ ;; esac"),
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5595
        WithProperties("""
5596
set -ex
5597
cd buildbot
154 by Kristian Nielsen
educe parallelism on overloaded host.
5598
rm -Rf build
5599
case "%(branch)s" in
5600
*5\\.[123]*)
5601
  mkdir build
5602
  cd build
5603
  tar zxf ../%(bakery)s.tar.gz
5604
  cd %(bakery)s
5605
  bakery/autobake51-bintar.sh ../../%(distname)s
5606
  ;;
5607
*)
5608
  tar zxf "%(distname)s"
5609
  mv "%(distdirname)s" build
5610
  cd build
5611
  mkdir mkbin
5612
  cd mkbin
626 by Daniel Bartholomew
automatic maria-master.cfg commit
5613
  echo $PATH
5614
  echo $SHELL
862 by Daniel Bartholomew
Add support for $HOME/local/lib libraries for bintar builders
5615
  if [ -d $HOME/local/lib ] ; then
5616
    export CMAKE_LIBRARY_PATH="$HOME/local/lib"
5617
  fi
727 by Daniel Bartholomew
automatic maria-master.cfg commit
5618
  export JAVA_HOME=/usr/lib/jvm/java
309 by Daniel Bartholomew
automatic maria-master.cfg commit
5619
  cmake -DBUILD_CONFIG=mysql_release -DWITH_READLINE=1 ..
192 by Daniel Bartholomew
misc updates to maria-master.cfg to add a new tree and tweak some rpm compile steps
5620
  make -j4 package VERBOSE=1
154 by Kristian Nielsen
educe parallelism on overloaded host.
5621
  ;;
5622
esac
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
5623
basename mariadb-*.tar.gz .tar.gz > ../../bindistname.txt
154 by Kristian Nielsen
educe parallelism on overloaded host.
5624
mv "$(cat ../../bindistname.txt).tar.gz" ../
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5625
"""),
168.1.4 by Kristian Nielsen
Move RPM and bintar builders to the "cloud" approach, automatically rsync'ing
5626
        WithProperties("= scp -P "+port+" "+kvm_scpopt+" 'buildbot@localhost:buildbot/build/mariadb-*.tar.gz' ."),
5627
        "= scp -P "+port+" "+kvm_scpopt+" buildbot@localhost:buildbot/bindistname.txt .",
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5628
]))
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
5629
    bin_fact.addStep(SetPropertyFromCommand(
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5630
        property="bindistname",
5631
        command=["cat", "bindistname.txt"],
5632
        ))
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
5633
    addPackageArchiveStep(bin_fact, '"%(bindistname)s.tar.gz"', "%(tarbuildnum)s")
168.1.1 by Kristian Nielsen
New "labrador" mac slave.
5634
    bin_fact.addStep(getMTR(
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5635
        description=["testing", "bintar"],
5636
        descriptionDone=["test", "bintar"],
5637
        logfiles={"kernel": "kernel_"+port+".log"},
168.1.4 by Kristian Nielsen
Move RPM and bintar builders to the "cloud" approach, automatically rsync'ing
5638
        mtr_subdir=".",    # Where we scp vardir to
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
5639
        env={"TERM": "vt102"},
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
5640
        command=["runvm"] + args + ["--base-image=/kvm/vms/"+kvm_image+"-install.qcow2", "vm-tmp-"+port+".qcow2",
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5641
        "rm -Rf buildbot && mkdir buildbot",
168.1.4 by Kristian Nielsen
Move RPM and bintar builders to the "cloud" approach, automatically rsync'ing
5642
        WithProperties("= scp -P "+port+" "+kvm_scpopt+" %(bindistname)s.tar.gz buildbot@localhost:buildbot/"),
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5643
        WithProperties("""
5644
set -ex
5645
cd buildbot
5646
sudo rm -Rf /usr/local/%(bindistname)s
5647
sudo tar zxf %(bindistname)s.tar.gz -C /usr/local/
5648
cd /usr/local/%(bindistname)s
212 by Kristian Nielsen
Misc. changes to buildbot config.
5649
sudo /usr/sbin/useradd mysql
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5650
sudo sudo chown -R mysql .
5651
sudo chgrp -R mysql .
764 by Daniel Bartholomew
automatic maria-master.cfg commit
5652
sudo scripts/mysql_install_db --no-defaults --user=mysql
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5653
sudo chown -R root .
5654
sudo chown -R mysql data mysql-test
5655
cd mysql-test
212 by Kristian Nielsen
Misc. changes to buildbot config.
5656
sudo su -s /bin/sh -c "perl mysql-test-run.pl  --verbose-restart --force --parallel=4 --retry=3 --mem --max-save-core=0 --max-save-datadir=1" mysql
168.1.4 by Kristian Nielsen
Move RPM and bintar builders to the "cloud" approach, automatically rsync'ing
5657
"""),
5658
        WithProperties("! sudo chmod -R go+rX /usr/local/%(bindistname)s/mysql-test/var/ || :"),
5659
        WithProperties(
5660
              "!= scp -rp -P " + port + " " + kvm_scpopt +
5661
              " buildbot@localhost:/usr/local/%(bindistname)s/mysql-test/var/ . || :")]))
824 by Daniel Bartholomew
automatic maria-master.cfg commit
5662
5663
    bin_fact.addStep(getMTR(
5664
        hideStepIf=(lambda results, s: results==SKIPPED),
5665
        doStepIf=(lambda(step): step.getProperty("branch") == "bb-10.2-elenst"),
5666
        description=["testing", "bintar", "on", "build", "VM"],
5667
        descriptionDone=["bintar", "on", "build", "VM"],
5668
        logfiles={"kernel": "kernel_"+port+".log"},
5669
        mtr_subdir=".",    # Where we scp vardir to
5670
        env={"TERM": "vt102"},
5671
        command=["runvm"] + args + ["--base-image=/kvm/vms/"+kvm_image+"-build.qcow2", "vm-tmp-"+port+".qcow2",
5672
        "rm -Rf buildbot && mkdir buildbot",
5673
        WithProperties("= scp -P "+port+" "+kvm_scpopt+" %(bindistname)s.tar.gz buildbot@localhost:buildbot/"),
5674
        WithProperties("""
5675
set -ex
5676
cd buildbot
5677
sudo rm -Rf /usr/local/%(bindistname)s
5678
sudo tar zxf %(bindistname)s.tar.gz -C /usr/local/
5679
cd /usr/local/%(bindistname)s
5680
sudo /usr/sbin/useradd mysql
5681
sudo sudo chown -R mysql .
5682
sudo chgrp -R mysql .
5683
sudo scripts/mysql_install_db --no-defaults --user=mysql
5684
sudo chown -R root .
5685
sudo chown -R mysql data mysql-test
5686
cd mysql-test
5687
sudo su -s /bin/sh -c "perl mysql-test-run.pl  --verbose-restart --force --parallel=4 --retry=3 --mem --max-save-core=0 --max-save-datadir=1" mysql
5688
"""),
5689
        WithProperties("! sudo chmod -R go+rX /usr/local/%(bindistname)s/mysql-test/var/ || :"),
5690
        WithProperties(
5691
              "!= scp -rp -P " + port + " " + kvm_scpopt +
5692
              " buildbot@localhost:/usr/local/%(bindistname)s/mysql-test/var/ . || :")]))
5693
5694
212 by Kristian Nielsen
Misc. changes to buildbot config.
5695
    return {'name': name, 'slavenames': kvm_slaves, 'builddir': name, 'factory': bin_fact,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
5696
            "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
5697
            "category": catg }
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5698
311 by Daniel Bartholomew
automatic maria-master.cfg commit
5699
#bld_kvm_bintar_hardy_amd64 = getBintarBuilder("kvm-bintar-hardy-amd64", "vm-hardy-amd64", "2227", "qemu64")
5700
#bld_kvm_bintar_hardy_x86 = getBintarBuilder("kvm-bintar-hardy-x86", "vm-hardy-i386", "2222", "qemu64")
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5701
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
5702
#bld_kvm_bintar_precise_amd64 = getBintarBuilder("kvm-bintar-precise-amd64", "vm-precise-amd64", "2267", "qemu64", ramdisk=False)
200 by Daniel Bartholomew
Disable precise bintar
5703
#bld_kvm_bintar_precise_x86 = getBintarBuilder("kvm-bintar-precise-x86", "vm-precise-i386", "2268", "qemu64")
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5704
828 by Daniel Bartholomew
automatic maria-master.cfg commit
5705
bld_kvm_bintar_trusty_amd64 = getBintarBuilder("kvm-bintar-trusty-amd64", "vm-trusty-amd64", "2341", "qemu64", ramdisk=False)
5706
bld_kvm_bintar_trusty_x86 = getBintarBuilder("kvm-bintar-trusty-x86", "vm-trusty-i386", "2342", "qemu64", ramdisk=False)
822 by Daniel Bartholomew
automatic maria-master.cfg commit
5707
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
5708
bld_kvm_bintar_quantal_amd64 = getBintarBuilder("kvm-bintar-quantal-amd64", "vm-quantal-amd64", "2281", "qemu64", ramdisk=False)
5709
bld_kvm_bintar_quantal_x86 = getBintarBuilder("kvm-bintar-quantal-x86", "vm-quantal-i386", "2282", "qemu64", ramdisk=False)
199 by Daniel Bartholomew
Added quantal bintar
5710
319 by Kristian Nielsen
Buildbot: Added options to disable ramdisk, and use it for all VM images that have large virtual size.
5711
bld_kvm_bintar_centos5_amd64 = getBintarBuilder("kvm-bintar-centos5-amd64", "vm-centos5-amd64", "2285", "qemu64", ramdisk=False)
5712
bld_kvm_bintar_centos5_x86 = getBintarBuilder("kvm-bintar-centos5-x86", "vm-centos5-i386", "2286", "qemu64", ramdisk=False)
203 by Daniel Bartholomew
add centos5 bintar builder
5713
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
5714
# def getWinBuilder(name, kvm_image, port1, port2, cpu, kvmargs=[]):
5715
#     args= ["--windows", "--user=buildbot", "--cpu="+cpu, "--smp=4"] + kvmargs
5716
#     bin_fact = factory.BuildFactory()
5717
#     bin_fact.addStep(FileDownload(
5718
#         mastersrc=WithProperties("%(tarballpath)s"),
5719
#         slavedest=WithProperties("%(distname)s")))
5720
#     # Extract the compiler warning suppressions file from the source tarball.
5721
#     bin_fact.addStep(ShellCommand(
5722
#         description=["getting", ".supp"],
5723
#         descriptionDone=["get", ".supp"],
5724
#         command=["sh", "-c", WithProperties("""
5725
# rm -f compiler_warnings.supp
5726
# tar zxf "%(distname)s" --strip 2 "$(basename %(distname)s .tar.gz)/support-files/compiler_warnings.supp"
5727
# exit 0  # best-effort, not fatal if no suppression file
5728
# """)]))
5729
#     bin_fact.addStep(Compile(
5730
#         description=["making", "noinstall"],
5731
#         descriptionDone=["make", "noinstall"],
5732
#         logfiles={"kernel": "kernel_"+port1+".log"},
5733
#         warningPattern=vsWarningPattern,
5734
#         warningExtractor=Compile.warnExtractFromRegexpGroups,
5735
#         suppressionFile=WithProperties("compiler_warnings.supp"),
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
5736
#         env={"TERM": "vt102"},
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
5737
#         command=["runvm", "--base-image=/kvm/vms/"+kvm_image+"-vs2008.qcow2"] + args + ["--port="+port1, "--logfile=kernel_"+port1+".log", "vm-tmp-"+port1+".qcow2",
5738
#         "rm -Rf buildbot && mkdir buildbot",
5739
#         WithProperties("= scp -P "+port1+" %(distname)s buildbot@localhost:buildbot/"),
5740
#         WithProperties("""
5741
# set -ex
5742
# cd buildbot
5743
# mkdir build
5744
# cd build
5745
# tar zxf ../%(distname)s
5746
# cd $(basename %(distname)s .tar.gz)
5747
# sh win/make_mariadb_win_dist
5748
# basename mariadb-noinstall-*.zip .zip > ../../bindistname.txt
5749
# if fgrep -q 'INCLUDE(CPack)' CMakeLists.txt ; then cpack -C RelWithDebInfo ; else touch MariaDB-0.0.0-win32.exe ; fi
5750
# basename MariaDB-*.exe .exe > ../../exedistname.txt
5751
# """),
5752
#         WithProperties("= scp -P "+port1+" 'buildbot@localhost:buildbot/build/mariadb*/mariadb-noinstall-*.zip' ."),
5753
#         WithProperties("= scp -P "+port1+" 'buildbot@localhost:buildbot/build/mariadb*/MariaDB-*.exe' ."),
5754
#         "= scp -P "+port1+" buildbot@localhost:buildbot/bindistname.txt .",
5755
#         "= scp -P "+port1+" buildbot@localhost:buildbot/exedistname.txt .",
5756
# ]))
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
5757
#     bin_fact.addStep(SetPropertyFromCommand(
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
5758
#         property="bindistname",
5759
#         command=["cat", "bindistname.txt"],
5760
#         ))
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
5761
#     bin_fact.addStep(SetPropertyFromCommand(
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
5762
#         property="exedistname",
5763
#         command=["cat", "exedistname.txt"],
5764
#         ))
5765
#     bin_fact.addStep(getPackageArchiveStep('"%(bindistname)s.zip" "%(exedistname)s.exe"', "%(tarbuildnum)s"))
5766
#     bin_fact.addStep(getMTR(
5767
#         test_type="nm",
5768
#         test_info="Normal run, no --ps-protocol",
5769
#         logfiles={"kernel": "kernel_"+port2+".log"},
5770
#         timeout=5400,
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
5771
#         env={"TERM": "vt102"},
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
5772
#         command=["runvm", "--base-image=/kvm/vms/"+kvm_image+"-clean.qcow2"] + args + ["--port="+port2, "--logfile=kernel_"+port2+".log", "vm-tmp-"+port2+".qcow2",
5773
#         "rm -Rf buildbot && mkdir buildbot",
5774
#         WithProperties("= scp -P "+port2+" %(bindistname)s.zip buildbot@localhost:buildbot/"),
5775
#         WithProperties("""
5776
# set -ex
5777
# cd buildbot
5778
# mkdir test
5779
# cd test
5780
# unzip ../%(bindistname)s.zip
5781
# cd mariadb-*-win32/mysql-test
212 by Kristian Nielsen
Misc. changes to buildbot config.
5782
# perl mysql-test-run.pl  --verbose-restart --force --parallel=2 --retry=3 --testcase-timeout=30 --suite-timeout=300 --max-test-fail=20
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
5783
# """)]))
5784
#
5785
#     return {'name': name, 'slavename': 'knielsen-kvm-x86', 'builddir': name, 'factory': bin_fact,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
5786
#             "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
5787
#             "category": "main" }
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
5788
5789
5790
#bld_kvm_zip_winxp_x86 = getWinBuilder("kvm-zip-winxp-x86", "xp-32", "2242", "2243", "qemu32", kvmargs=["--netdev=ne2k_pci"])
80.1.1 by Kristian Nielsen
New buildslaves from haidong.
5791
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5792
250 by Sergei Golubchik
comment out unsed builder configs
5793
#bld_opensolaris_511_x86 = {'name': 'opensolaris-511-x86',
5794
#                           'slavename': 'opensolaris-x86',
5795
#                           'builddir': 'opensolaris-511-x86',
5796
#                           'factory': f_dbg_sol_64,
5797
#                           "nextBuild": myNextBuild,
5798
#                           "category": "main",
5799
#                          }
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
5800
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
5801
f_sol_64_bintar = factory.BuildFactory()
5802
f_sol_64_bintar.addStep(FileDownload(mastersrc=WithProperties("%(tarballpath)s"),
385 by Kristian Nielsen
Increase upload block size in an attempt to get better transfer speed.
5803
                                     slavedest=WithProperties("%(distname)s"),
5804
                                     blocksize=524288,
5805
                                     ))
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
5806
f_sol_64_bintar.addStep(ShellCommand(
5807
        description="untarring", descriptionDone="untar",
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
5808
        command=["sh", "-c", WithProperties("rm -Rf %(distdirname)s && gzip -dc %(distname)s | gtar xf -")]))
5809
f_sol_64_bintar.addStep(getCompileStep(["sh", "-c", WithProperties("cd %(distdirname)s && bash BUILD/compile-solaris-amd64 --extra-configs=--without-plugin_innodb_plugin")],
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
5810
                                       env={"AM_EXTRA_MAKEFLAGS": "VERBOSE=1"},
29.1.1 by Kristian Nielsen
Add the --gen-suppressions valgrind option.
5811
                                       subdir="%(distdirname)s/"))
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
5812
f_sol_64_bintar.addStep(ShellCommand(
5813
        description="packaging", descriptionDone="package",
5814
        command=["sh", "-c", WithProperties("""
5815
set -ex
5816
cd %(distdirname)s
5817
scripts/make_binary_distribution
5818
ORIG_TAR=$(echo mariadb-*.tar.gz)
5819
ORIG_DIR=$(basename ${ORIG_TAR} .tar.gz)
5820
NEW_DIR="$(echo "${ORIG_DIR}" | sed -e 's/-MariaDB//')"
5821
NEW_TAR="${NEW_DIR}.tar.gz"
147 by Kristian Nielsen
Add package builders for 5.5 tree.
5822
if [ "$ORIG_DIR" != "$NEW_DIR" ] ; then
5823
  rm -Rf $ORIG_DIR
5824
  tar zxf $ORIG_TAR
5825
  mv $ORIG_DIR "${NEW_DIR}"
5826
  tar zcf "${NEW_TAR}" "${NEW_DIR}/"
5827
fi
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
5828
echo "${NEW_TAR}" > ../bindistname.txt
5829
""")]))
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
5830
f_sol_64_bintar.addStep(SetPropertyFromCommand(
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
5831
        property="bindistname",
5832
        command=["cat", "bindistname.txt"],
5833
        ))
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
5834
addPackageArchiveStep(f_sol_64_bintar, '"%(distdirname)s/%(bindistname)s"', "%(tarbuildnum)s")
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
5835
f_sol_64_bintar.addStep(getMTR(
5836
        test_type="nm",
5837
        test_info="Normal run, no --ps-protocol",
143 by Kristian Nielsen
Slave naming.
5838
        env={"MTR_FEEDBACK_PLUGIN": "1"},
316 by Daniel Bartholomew
automatic maria-master.cfg commit
5839
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3 ")],
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
5840
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
5841
5842
bld_opensolaris_511_bintar = {'name': 'opensolaris-511-bintar',
5843
                              'slavename': 'opensolaris-x86',
5844
                              'builddir': 'opensolaris-511-bintar',
5845
                              'factory': f_sol_64_bintar,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
5846
                              "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
5847
                              "category": "experimental",
4.1.5 by Kristian Nielsen
Implement package build for opensolaris.
5848
                              }
5849
250 by Sergei Golubchik
comment out unsed builder configs
5850
#f_upgrade_mysql51_mariadb52_bintar = factory.BuildFactory()
80.1.1 by Kristian Nielsen
New buildslaves from haidong.
5851
#f_upgrade_mysql51_mariadb52_bintar.addStep(ShellCommand(
5852
#	name = "initial_cleanup",
5853
#        workdir=".",
5854
#        command=["sh", "-c", WithProperties("rm -rf sources/%(bindistname)s.tar.gz")]
5855
#))
5856
5857
#f_upgrade_mysql51_mariadb52_bintar.addStep(ShellCommand(
5858
#	name = "downloading_bintar",
5859
#        workdir=".",
5860
#        command=["sh", "-c", WithProperties("wget -O sources/%(bindistname)s.tar.gz http://knielsen-hq.org/archive/pack/5.2/build-%(tarbuildnum)s/kvm-bintar-hardy-x86/%(bindistname)s.tar.gz")]
5861
#))
5862
250 by Sergei Golubchik
comment out unsed builder configs
5863
#f_upgrade_mysql51_mariadb52_bintar.addStep(Test(
5864
#	name = "run_upgrade_vm",
5865
#	workdir = ".",
5866
#        logfiles={"kernel": "kernel_upgrade_mysql51_mariadb52_bintar.log"},
5867
#        warningPattern=impossibleRe,
5868
#        env={"TERM": "vt102"},
5869
#        command = [
5870
#		"mariadb-tools/buildbot/runvm", "--port=2223", "-cpu=qemu64", "--base-image=vm/vm-debian5-i386-serial.qcow2", "vm-tmp-upgrade_mysql51_mariadb52_bintar.qcow2",
5871
#		"= scp -P 2223 -i /home/buildbot/buildbot-id_dsa -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no sources/mysql-5.1.53-linux-i686-glibc23.tar.gz buildbot@localhost:/tmp",
5872
#		"mkdir /tmp/upgrade-test",
5873
#		"tar -C /tmp/upgrade-test --strip-components=1 -xf /tmp/mysql-5.1.53-linux-i686-glibc23.tar.gz",
5874
#		"cd /tmp/upgrade-test && ./scripts/mysql_install_db --basedir=/tmp/upgrade-test --datadir=/tmp/upgrade-test/data",
5875
#		"cd /tmp/upgrade-test && sh -c 'nohup ./bin/mysqld_safe --no-defaults >& /dev/null &'",
5876
#		"= sleep 20",
5877
#		"/tmp/upgrade-test/bin/mysql  --host=127.0.0.1 --port=3306 -uroot -e 'GRANT ALL PRIVILEGES ON *.* TO \"root\" WITH GRANT OPTION'",
5878
#		"= cd sources/mtr/mysql-test && perl mysql-test-run.pl  --verbose-restart --extern host=127.0.0.1 --extern port=2224 --suite=mariadb-upgrade before-common",
5879
#		"/tmp/upgrade-test/bin/mysqladmin --host=127.0.0.1 --port=3306 -uroot shutdown",
5880
#		WithProperties("= scp -P 2223 -i /home/buildbot/buildbot-id_dsa -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no sources/%(bindistname)s.tar.gz buildbot@localhost:/tmp"),
5881
#		WithProperties("tar -C /tmp/upgrade-test --strip-components=1 -xf /tmp/%(bindistname)s.tar.gz"),
5882
#		"cd /tmp/upgrade-test && sh -c 'nohup ./bin/mysqld_safe --no-defaults >& /dev/null &'",
5883
#		"= sleep 20",
5884
#		"cd /tmp/upgrade-test && ./bin/mysql_upgrade --host=127.0.0.1 --port=3306 -uroot",
5885
#		"= cd sources/mtr/mysql-test && perl mysql-test-run.pl  --verbose-restart --extern host=127.0.0.1 --extern port=2224 --suite=mariadb-upgrade after-common",
5886
#		"/tmp/upgrade-test/bin/mysqladmin --host=127.0.0.1 --port=3306 -uroot shutdown"
5887
#	]))
80.1.1 by Kristian Nielsen
New buildslaves from haidong.
5888
250 by Sergei Golubchik
comment out unsed builder configs
5889
#bld_upgrade_mysql51_mariadb52_bintar = {
5890
#	'name': 'upgrade-mysql51-maria52-bintar',
5891
#	'slavename': 'centos56-quality2',
5892
#	'builddir': 'upgrade-testing',
5893
#	'factory': f_upgrade_mysql51_mariadb52_bintar,
5894
#        "nextBuild": myNextBuild,
5895
#	'category': 'experimental',
5896
#}
43 by Kristian Nielsen
First version of Philip's RQG tests in Buildbot.
5897
5898
# End of Random Query Generator Tests
5899
52 by Kristian Nielsen
Tree configuration.
5900
# Code coverage
5901
5902
f_gcov= factory.BuildFactory()
251 by Sergei Golubchik
github support #3: checkout from github
5903
f_gcov.addStep(maybe_bzr_checkout)
5904
f_gcov.addStep(maybe_git_checkout)
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
5905
f_gcov.addStep(getCompileStep(["BUILD/compile-pentium-gcov"],
5906
                              env={"AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}));
52 by Kristian Nielsen
Tree configuration.
5907
f_gcov.addStep(ShellCommand(
5908
	description="remove-previous-report",
5909
	command=["sh", "-c", WithProperties("rm -Rf /var/www/html/lcov/%(branch)s /home/buildbot/tmp/gcov-%(branch)s.info")]
5910
))
5911
5912
f_gcov.addStep(ShellCommand(
5913
	description="lcov-zerocounters",
5914
	command=["sh", "-c", WithProperties("lcov --directory . --zerocounters")]
5915
))
5916
168.1.5 by Kristian Nielsen
Windows package upload.
5917
#f_gcov.addStep(getMTR(
5918
#	test_type="mtr-pbxt", test_info="PBXT test suite",
5919
#        doStepIf=branch_is_5_123,
212 by Kristian Nielsen
Misc. changes to buildbot config.
5920
#	command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --parallel=2 --mysqld=--loose-sync-sys=0 --suite=pbxt --mysqld=--default-storage-engine=pbxt --force --retry=1 --max-test-fail=100 --mysqld=--loose-innodb-fast-shutdown=2 --nowarnings --skip-test=flush_read_lock_kill"],
168.1.5 by Kristian Nielsen
Windows package upload.
5921
#	))
52 by Kristian Nielsen
Tree configuration.
5922
f_gcov.addStep(getMTR(
5923
	test_type="mtr-normal", test_info="Standard test suite",
143 by Kristian Nielsen
Slave naming.
5924
        env={"MTR_FEEDBACK_PLUGIN": "1"},
316 by Daniel Bartholomew
automatic maria-master.cfg commit
5925
	command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --mysqld=--loose-sync-sys=0 --mysqld=--loose_innodb_flush_log_at_trx_commit=2 --force --retry=1  --parallel=3 --testcase-timeout=45 --max-test-fail=100 --skip-combinations --mysqld=--loose-innodb-fast-shutdown=2 --nowarnings --max-save-core=0 --max-save-datadir=1"],
52 by Kristian Nielsen
Tree configuration.
5926
	))
5927
f_gcov.addStep(getMTR(
5928
	test_type="mtr-xtra", test_info="Some additional test suites",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
5929
	command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --mysqld=--loose-sync-sys=0 --mysqld=--loose_innodb_flush_log_at_trx_commit=2 --suite=funcs_1,funcs_2,stress,jp --force --retry=1  --parallel=3 --testcase-timeout=45 --max-test-fail=200 --mysqld=--loose-innodb-fast-shutdown=2 --nowarnings --max-save-core=0 --max-save-datadir=1"],
52 by Kristian Nielsen
Tree configuration.
5930
))
5931
5932
f_gcov.addStep(ShellCommand(
5933
	description="lcov-capture",
5934
	command=["sh", "-c", WithProperties("lcov --directory . --capture --output-file /home/buildbot/tmp/gcov-%(branch)s.info")]
5935
))
5936
5937
f_gcov.addStep(ShellCommand(
5938
	description="lcov-genhtml",
5939
	command=["sh", "-c", WithProperties("genhtml --output-directory=/var/www/html/lcov/%(branch)s /home/buildbot/tmp/gcov-%(branch)s.info")]
5940
))
5941
5942
f_gcov.addStep(ShellCommand(
5943
	description="lcov-chmod",
5944
	command=["sh", "-c", WithProperties("chmod -R o+rx /var/www/html/lcov/%(branch)s")]
5945
))
5946
5947
5948
bld_gcov = {"name": "gcov",
143 by Kristian Nielsen
Slave naming.
5949
               "slavename": "centos56-quality2",
52 by Kristian Nielsen
Tree configuration.
5950
               "builddir": "perpush-gcov",
5951
               "factory": f_gcov,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
5952
               "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
5953
               "category": "experimental",
52 by Kristian Nielsen
Tree configuration.
5954
               }
5955
5956
# End of code coverage
5957
74 by Kristian Nielsen
Misc. config changes for Buildbot:
5958
# Builder that compiles DBD::mysql, PHP and the like
5959
5960
f_compile_connectors = factory.BuildFactory()
5961
251 by Sergei Golubchik
github support #3: checkout from github
5962
f_compile_connectors.addStep(maybe_bzr_checkout)
5963
f_compile_connectors.addStep(maybe_git_checkout)
89 by Kristian Nielsen
Add Daniel's solaris slave.
5964
f_compile_connectors.addStep(getCompileStep(["BUILD/compile-pentium64-max"],
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
5965
                                            env={"EXTRA_FLAGS": "-DFORCE_INIT_OF_VARS",
5966
                                                 "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}));
74 by Kristian Nielsen
Misc. config changes for Buildbot:
5967
5968
f_compile_connectors.addStep(ShellCommand(
5969
	name="start-test-mysqld",
212 by Kristian Nielsen
Misc. changes to buildbot config.
5970
	command=["sh", "-c", "cd mysql-test && MTR_VERSION=1 perl mysql-test-run.pl  --verbose-restart --start-and-exit --mysqld=--skip-safemalloc --master_port=43210 1st"]
74 by Kristian Nielsen
Misc. config changes for Buildbot:
5971
))
5972
5973
# DBD::MySQL
5974
5975
f_compile_connectors.addStep(ShellCommand(
5976
	name="unpack-dbi-mysql",
5977
	command=["sh", "-c", "cd .. && tar xfvz DBD-mysql-4.018.tar.gz"]
5978
));
5979
5980
f_compile_connectors.addStep(ShellCommand(
5981
	name="configure-dbi-mysql",
5982
	command=["sh", "-c", "cd ../DBD-mysql-4.018 && perl Makefile.PL --mysql_config=../build/scripts/mysql_config --with-mysql=../build/ --libs='-L../build/libmysql/.libs/ -lmysqlclient -lz -lcrypt -lnsl -lm' --cflags='-I../build/include -g  -Wextra -Wwrite-strings -g3 -gdwarf-2 -UFORCE_INIT_OF_VARS -DUNIV_LINUX' --testhost=127.0.0.1 --testport=43210 --testuser=root"]
5983
));
5984
5985
f_compile_connectors.addStep(ShellCommand(
5986
	name="compile-dbi-mysql",
5987
	command=["sh", "-c", "cd ../DBD-mysql-4.018 && make"]
5988
));
5989
5990
f_compile_connectors.addStep(ShellCommand(
5991
	name="test-dbi-mysql",
5992
	command=["sh", "-c", "cd ../DBD-mysql-4.018 && PERL5LIB=lib LD_LIBRARY_PATH=./blib/arch/auto/DBD/mysql/:../build/libmysql/.libs/ make test"]
5993
));
5994
5995
f_compile_connectors.addStep(ShellCommand(
5996
	name="cleanup-dbi-mysql",
5997
	command=["sh", "-c", "rm -rf ../DBD-mysql-4.018/"]
5998
));
5999
6000
#
6001
# PHP with --with-mysql
6002
#
6003
6004
f_compile_connectors.addStep(ShellCommand(
6005
	name="unpack-php-oldconnector",
6006
	command=["sh", "-c", "cd .. && tar xfvz php-5.3.3.tar.gz"]
6007
));
6008
6009
f_compile_connectors.addStep(ShellCommand(
6010
	name="configure-php-oldconnector",
6011
	command=["sh", "-c", "mkdir lib && ln -s ../libmysql/.libs/ lib/mysql && cd ../php-5.3.3 && ./configure --with-mysql=../build"]
6012
));
6013
6014
f_compile_connectors.addStep(ShellCommand(
6015
	name="compile-php-oldconnector",
6016
	command=["sh", "-c", "cd ../php-5.3.3 && make -j 4"]
6017
));
6018
6019
f_compile_connectors.addStep(ShellCommand(
6020
	name="test-php-oldconnector",
6021
	command=["sh", "-c", 'cd ../php-5.3.3 && REPORT_EXIT_STATUS=1 TEST_PHP_EXECUTABLE=./sapi/cli/php MYSQL_TEST_HOST=127.0.0.1 MYSQL_TEST_PORT=43210 ./sapi/cli/php run-tests.php -r ../workable_tests.php-mysql --show-diff']
6022
));
6023
6024
f_compile_connectors.addStep(ShellCommand(
6025
        name="cleanup-php-newconnector",
6026
	command=["sh", "-c", "rm -rf ../php-5.3.3/"]
6027
));
6028
6029
#
6030
# PHP with --with-mysqli
6031
# 
6032
6033
f_compile_connectors.addStep(ShellCommand(
6034
	name="unpack-php-newconnector",
6035
	command=["sh", "-c", "cd .. && tar xfvz php-5.3.3.tar.gz"]
6036
));
6037
6038
f_compile_connectors.addStep(ShellCommand(
6039
	name="configure-php-newconnector",
6040
	command=["sh", "-c", "cd ../php-5.3.3 && ./configure --with-mysqli=../fake_mysql_config"]
6041
));
6042
6043
f_compile_connectors.addStep(ShellCommand(
6044
	name="compile-php-newconnector",
6045
	command=["sh", "-c", "cd ../php-5.3.3 && C_INCLUDE_PATH=../build/include/ make -j 4"]
6046
));
6047
6048
f_compile_connectors.addStep(ShellCommand(
6049
	name="test-php-newconnector",
6050
	command=["sh", "-c", 'cd ../php-5.3.3 && REPORT_EXIT_STATUS=1 TEST_PHP_EXECUTABLE=./sapi/cli/php MYSQL_TEST_HOST=127.0.0.1 MYSQL_TEST_PORT=43210 ./sapi/cli/php run-tests.php -r ../workable_tests.php-mysqli --show-diff']
6051
));
6052
6053
f_compile_connectors.addStep(ShellCommand(
6054
	name="cleanup-php-newconnector",
6055
	command=["sh", "-c", "rm -rf ../php-5.3.3/"]
6056
));
6057
6058
f_compile_connectors.addStep(ShellCommand(
6059
	name="stop-test-mysqld",
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
6060
	command=["sh", "-c", "./client/mysqladmin -uroot --protocol=tcp --port=43210 shutdown"],
6061
	alwaysRun=True
74 by Kristian Nielsen
Misc. config changes for Buildbot:
6062
));
6063
6064
bld_compile_connectors = {"name": "compile-connectors",
143 by Kristian Nielsen
Slave naming.
6065
               "slavename": "centos56-quality2",
74 by Kristian Nielsen
Misc. config changes for Buildbot:
6066
               "builddir": "compile-connectors",
6067
               "factory": f_compile_connectors,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
6068
               "nextBuild": myNextBuild,
581 by Daniel Bartholomew
automatic maria-master.cfg commit
6069
               "category": "connectors"
74 by Kristian Nielsen
Misc. config changes for Buildbot:
6070
}
6071
6072
# end of compile-connectors/DBD::mysql/PHP builder 
6073
138 by Kristian Nielsen
New trees.
6074
6075
6076
f_customer_data = factory.BuildFactory()
6077
251 by Sergei Golubchik
github support #3: checkout from github
6078
f_customer_data.addStep(maybe_bzr_checkout)
6079
f_customer_data.addStep(maybe_git_checkout)
138 by Kristian Nielsen
New trees.
6080
f_customer_data.addStep(getCompileStep(["BUILD/compile-pentium64-max"],
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
6081
                                            env={"EXTRA_FLAGS": "-DFORCE_INIT_OF_VARS",
6082
                                                 "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}));
138 by Kristian Nielsen
New trees.
6083
6084
f_customer_data.addStep(ShellCommand(
6085
	name="customer1-start-server",
214 by Daniel Bartholomew
updates for test-customer-data and test-handlersocket schedulers to add support for 5.5 and 10.0 trees
6086
	command=["sh", "-c", "cd mysql-test && perl mysql-test-run.pl  --verbose-restart --start-and-exit --mysqld=--loose-skip-safemalloc --mtr-build-thread=321 1st"]
138 by Kristian Nielsen
New trees.
6087
))
6088
6089
f_customer_data.addStep(ShellCommand(
6090
	name="customer1-create-aria",
214 by Daniel Bartholomew
updates for test-customer-data and test-handlersocket schedulers to add support for 5.5 and 10.0 trees
6091
	command=["sh", "-c", "./client/mysql -uroot --protocol=tcp --port=16420 test  < ../customer1/create-aria.sql 2>&1 > customer1-create-aria.log"]
138 by Kristian Nielsen
New trees.
6092
))
6093
6094
f_customer_data.addStep(ShellCommand(
6095
	name="customer1-insert",
214 by Daniel Bartholomew
updates for test-customer-data and test-handlersocket schedulers to add support for 5.5 and 10.0 trees
6096
	command=["sh", "-c", "./client/mysql -uroot --protocol=tcp --port=16420 test  < ../customer1/test-insert.sql 2>&1 > customer1-test-insert.log"]
138 by Kristian Nielsen
New trees.
6097
))
6098
6099
f_customer_data.addStep(ShellCommand(
6100
	name="customer1-update",
214 by Daniel Bartholomew
updates for test-customer-data and test-handlersocket schedulers to add support for 5.5 and 10.0 trees
6101
	command=["sh", "-c", "./client/mysql -uroot --protocol=tcp --port=16420 test  < ../customer1/test-update.sql 2>&1 > customer1-test-update.log"]
138 by Kristian Nielsen
New trees.
6102
))
6103
6104
f_customer_data.addStep(ShellCommand(
6105
	name="customer1-stop-server",
214 by Daniel Bartholomew
updates for test-customer-data and test-handlersocket schedulers to add support for 5.5 and 10.0 trees
6106
	command=["sh", "-c", "./client/mysqladmin -uroot --protocol=tcp --port=16420 shutdown"],
138 by Kristian Nielsen
New trees.
6107
	alwaysRun=True
6108
));
6109
6110
f_customer_data.addStep(ShellCommand(
6111
	name="customer1-check-tables",
214 by Daniel Bartholomew
updates for test-customer-data and test-handlersocket schedulers to add support for 5.5 and 10.0 trees
6112
	command=["sh", "-c", "./storage/maria/aria_chk --verbose --extend-check mysql-test/var/mysqld.1/data/test/*.MAI --datadir mysql-test/var/mysqld.1/data/ 2>&1 > customer1-test-check.log"]
138 by Kristian Nielsen
New trees.
6113
))
6114
6115
bld_customer_data = {"name": "test-customer-data",
143 by Kristian Nielsen
Slave naming.
6116
               "slavename": "centos56-quality2",
138 by Kristian Nielsen
New trees.
6117
               "builddir": "test-customer-data",
6118
               "factory": f_customer_data,
6119
               "nextBuild": myNextBuild,
6120
               "category": "experimental"
6121
}
6122
6123
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
6124
# Builder that compiles Net::HandlerSocket and tests handlersocket
6125
6126
f_test_handlersocket = factory.BuildFactory()
6127
251 by Sergei Golubchik
github support #3: checkout from github
6128
f_test_handlersocket.addStep(maybe_bzr_checkout)
6129
f_test_handlersocket.addStep(maybe_git_checkout)
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
6130
221 by Daniel Bartholomew
modify handlersocket test, remove 5.3 from branches to test
6131
f_test_handlersocket.addStep(
6132
     getCompileStep(["sh", "-c", "make clean || rm -f CMakeCache.txt && cmake . -DCMAKE_BUILD_TYPE=Debug && make -j3"],
6133
     doStepIf=branch_is_5_5_or_later)
6134
)
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
6135
6136
f_test_handlersocket.addStep(ShellCommand(
214 by Daniel Bartholomew
updates for test-customer-data and test-handlersocket schedulers to add support for 5.5 and 10.0 trees
6137
	name="build-perl-handlersocket",
6138
        command=["sh", "-c", WithProperties("""
6139
set -ex
6140
cd plugin/handler_socket/perl-Net-HandlerSocket
6141
if [ ! -e Makefile.PL ] ; then
6142
  sed -e "s/LIBS.*/LIBS => ['-L.. -L..\/libhsclient -lhsclient'],/g" Makefile.PL.in | sed -e "s/INC.*/INC => '-I..\/libhsclient -I..\/..\/..\/include',/g" > Makefile.PL
6143
fi
6144
perl Makefile.PL
6145
make
6146
LD_LIBRARY_PATH=../libhsclient/.libs make test
6147
""")]))
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
6148
6149
f_test_handlersocket.addStep(ShellCommand(
6150
	name="start-mysqld",
214 by Daniel Bartholomew
updates for test-customer-data and test-handlersocket schedulers to add support for 5.5 and 10.0 trees
6151
	command=["sh", "-c", "cd mysql-test && LD_LIBRARY_PATH=../plugin/handler_socket/libhsclient/.libs perl mysql-test-run.pl --verbose-restart --start-and-exit 1st --mysqld=--loose-handlersocket_port=9998 --mysqld=--loose-handlersocket_port_wr=9999 --mtr-build-thread=963 --mysqld=--innodb"]
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
6152
))
6153
6154
f_test_handlersocket.addStep(ShellCommand(
6155
	name="install-handlersocket",
214 by Daniel Bartholomew
updates for test-customer-data and test-handlersocket schedulers to add support for 5.5 and 10.0 trees
6156
	command=["sh", "-c", "client/mysql -uroot --protocol=tcp --port=29260 -e 'INSTALL PLUGIN handlersocket soname \"handlersocket.so\"'"]
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
6157
))
6158
6159
f_test_handlersocket.addStep(ShellCommand(
6160
	name="show-handlersocket-variables",
214 by Daniel Bartholomew
updates for test-customer-data and test-handlersocket schedulers to add support for 5.5 and 10.0 trees
6161
	command=["sh", "-c", "client/mysql -uroot --protocol=tcp --port=29260 -e 'SHOW VARIABLES LIKE \"%handlersocket%\"'"]
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
6162
))
6163
6164
f_test_handlersocket.addStep(ShellCommand(
6165
	name="test-handlersocket",
214 by Daniel Bartholomew
updates for test-customer-data and test-handlersocket schedulers to add support for 5.5 and 10.0 trees
6166
	command=["sh", "-c", "cd plugin/handler_socket/regtest/test_01_lib && MYHOST=127.0.0.1 MYPORT=29260 LD_LIBRARY_PATH=../../libhsclient/.libs/ PERL5LIB=../common:../../perl-Net-HandlerSocket/lib:../../perl-Net-HandlerSocket/blib/arch/auto/Net/HandlerSocket/ ./run.sh"]
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
6167
))
6168
6169
f_test_handlersocket.addStep(ShellCommand(
6170
	name="show-innodb-status",
214 by Daniel Bartholomew
updates for test-customer-data and test-handlersocket schedulers to add support for 5.5 and 10.0 trees
6171
	command=["sh", "-c", "client/mysql -uroot --protocol=tcp --port=29260 -e 'SHOW STATUS LIKE \"%innodb%\"'"]
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
6172
))
6173
6174
f_test_handlersocket.addStep(ShellCommand(
6175
	name="shutdown-mysqld",
214 by Daniel Bartholomew
updates for test-customer-data and test-handlersocket schedulers to add support for 5.5 and 10.0 trees
6176
	command=["sh", "-c", "client/mysqladmin -uroot --protocol=tcp --port=29260 shutdown"],
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
6177
	alwaysRun=True
6178
))
6179
6180
bld_test_handlersocket = {"name": "test-handlersocket",
143 by Kristian Nielsen
Slave naming.
6181
               "slavename": "centos56-quality2",
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
6182
               "builddir": "test-handlersocket",
6183
               "factory": f_test_handlersocket,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
6184
               "nextBuild": myNextBuild,
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
6185
               "category": "experimental"
6186
}
6187
6188
# End of handlersocket build
74 by Kristian Nielsen
Misc. config changes for Buildbot:
6189
62.1.1 by Kristian Nielsen
New mac mini builder.
6190
# Builder for  Hakan's Mac Mini.
249 by Sergei Golubchik
combine three different ways to instantiate a Bzr class into one
6191
#f_mac_mini = factory.BuildFactory()
6192
#f_mac_mini.addStep(bzr_checkout)
6193
#f_mac_mini.addStep(getCompileStep(["BUILD/compile-amd64-debug-max-no-ndb"],
6194
#                                  env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
6195
#                                       "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}))
6196
#f_mac_mini.addStep(getMTR(
6197
#        test_type="nm",
6198
#        test_info="Mac Mini debug:Normal run, mixed-mode replication, no --ps-protocol",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
6199
#        command=["sh", "-c", 'diskutil eject /Volumes/ramdisk ; diskutil erasevolume "Journaled HFS+" "ramdisk" $(hdiutil attach -nomount ram://3145728) ; rm -Rf mysql-test/var ; ln -s /Volumes/ramdisk mysql-test/var ; cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3 --parallel=3  --mysqld=--binlog-format=mixed']))
249 by Sergei Golubchik
combine three different ways to instantiate a Bzr class into one
6200
#f_mac_mini.addStep(getMTR(
6201
#        test_type="pr",
6202
#        test_info="Mac Mini debug: prepared statement protocol, row-based replication",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
6203
#        command=["sh", "-c", 'diskutil eject /Volumes/ramdisk ; diskutil erasevolume "Journaled HFS+" "ramdisk" $(hdiutil attach -nomount ram://3145728) ; rm -Rf mysql-test/var ; ln -s /Volumes/ramdisk mysql-test/var ; cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3 --parallel=3  --mysqld=--binlog-format=row --ps-protocol']))
249 by Sergei Golubchik
combine three different ways to instantiate a Bzr class into one
6204
#f_mac_mini.addStep(ShellCommand(command=["diskutil", "eject", "/Volumes/ramdisk"],
6205
#                                description=["ejecting"], descriptionDone=["eject"],
6206
#                                alwaysRun=True))
62.1.1 by Kristian Nielsen
New mac mini builder.
6207
249 by Sergei Golubchik
combine three different ways to instantiate a Bzr class into one
6208
#bld_mac_mini_x86_dbg = {'name': "mac-mini-x86-dbg",
6209
#               'slavename': "mac-mini-intel",
6210
#               'builddir': "mac-mini-intel",
6211
#               'factory': f_mac_mini,
6212
#               "nextBuild": myNextBuild,
6213
#               "category": "main",
6214
#              }
62.1.1 by Kristian Nielsen
New mac mini builder.
6215
250 by Sergei Golubchik
comment out unsed builder configs
6216
#f_fedora13_x86_dbg = factory.BuildFactory()
6217
#f_fedora13_x86_dbg.addStep(bzr_checkout)
6218
#f_fedora13_x86_dbg.addStep(getCompileStep(["BUILD/compile-pentium-debug-max"],
6219
#                                           env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS", "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}))
6220
#f_fedora13_x86_dbg.addStep(getMTR(
6221
#        test_type="ps",
6222
#        test_info="Statement-based, --ps-protocol",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
6223
#        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --parallel=2 --force --retry=3  --mysqld=--binlog-format=statement --ps-protocol"]))
250 by Sergei Golubchik
comment out unsed builder configs
6224
#f_fedora13_x86_dbg.addStep(getMTR(
6225
#        test_type="pr",
6226
#        test_info="Row-based, --ps-protocol",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
6227
#        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --parallel=2 --force --retry=3  --mysqld=--binlog-format=row --ps-protocol"]))
250 by Sergei Golubchik
comment out unsed builder configs
6228
#f_fedora13_x86_dbg.addStep(getMTR(
6229
#        test_type="emb",
6230
#        test_info="Embedded server",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
6231
#        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --parallel=2 --force --retry=3  --embedded-server"]))
250 by Sergei Golubchik
comment out unsed builder configs
6232
#f_fedora13_x86_dbg.addStep(getMTR(
6233
#        test_type="pbxt",
6234
#        test_info="PBXT",
6235
#        doStepIf=branch_is_5_123,
6236
#        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --parallel=2 --force --retry=3 --suite=pbxt"]))
6237
#
6238
#bld_fedora13_x86_dbg = {'name': "fedora13-x86-dbg",
6239
#                        'slavename': "haidong-fedora13-x86",
6240
#                        'builddir': "fedora13-x86-dbg",
6241
#                        'factory': f_fedora13_x86_dbg,
6242
#                        "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
6243
#                        "category": "experimental",
250 by Sergei Golubchik
comment out unsed builder configs
6244
#                        }
6245
6246
6247
#f_win7_x86 = factory.BuildFactory()
6248
#f_win7_x86.addStep(bzr_checkout)
6249
#f_win7_x86.addStep(getCompileStep(
6250
#        ["sh win/configure-mariadb.sh"],
6251
#        description=["configuring"],
6252
#        descriptionDone=["configure"],
6253
#        ))
6254
#f_win7_x86.addStep(getCompileStep(
6255
# 	["cmake", "-G", "NMake Makefiles", "-DCMAKE_BUILD_TYPE=RelWithDebInfo"],
6256
#        description=["cmaking"],
6257
#        descriptionDone=["cmake"],
6258
#        ))
6259
#f_win7_x86.addStep(getCompileStep(
6260
#        ["nmake"],
6261
#        description=["nmaking"],
6262
#        descriptionDone=["nmake"],
6263
#        ))
6264
#f_win7_x86.addStep(getMTR(
6265
#        test_type="nm",
6266
#        test_info="Normal run, no --ps-protocol",
6267
#        env={"MTR_FEEDBACK_PLUGIN": "1"},
316 by Daniel Bartholomew
automatic maria-master.cfg commit
6268
#        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3 --parallel=2  --testcase-timeout=45 --suite-timeout=600"],
250 by Sergei Golubchik
comment out unsed builder configs
6269
#        timeout=2700))
6270
#f_win7_x86.addStep(getMTR(
6271
#        test_type="emb",
6272
#        test_info="--embedded-server run",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
6273
#        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3 --parallel=2  --testcase-timeout=45 --suite-timeout=600 --embedded-server"],
250 by Sergei Golubchik
comment out unsed builder configs
6274
#        timeout=2700))
80.1.1 by Kristian Nielsen
New buildslaves from haidong.
6275
#f_win7_x86.addStep(getMTR(
6276
#        test_type="pbxt",
6277
#        test_info="PBXT run",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
6278
#        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3  --testcase-timeout=45 --suite-timeout=600 --mysqld=--default-storage-engine=pbxt --suite=pbxt"],
80.1.1 by Kristian Nielsen
New buildslaves from haidong.
6279
#        timeout=2700))
6280
99 by Kristian Nielsen
RQG changes.
6281
# bld_win7_x86 = {'name': "win7-x86",
6282
#                'slavename': "haidong-win7-x86",
6283
#                'builddir': "win7-x86",
6284
#                'factory': f_win7_x86,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
6285
#                "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
6286
#                "category": "experimental",
99 by Kristian Nielsen
RQG changes.
6287
#                }
6288
6289
6290
# 
6291
# New builders located on pstoev's host. See http://kb.askmonty.org/v/buildbot-setup-buildbot-setup-for-windows
6292
# for more information, including explanations on the use of taskkill, --mysqld=--gdb and other odditites
6293
#
99.1.2 by Kristian Nielsen
Windows builder changes.
6294
# Since buildbot slave is unstable on windows, we use a Linux slave which pipes each command to the windows machine
6295
# This way there is no python or buildbot involvement on the Windows side, just a SSHd daemon
6296
#
95 by Kristian Nielsen
Increase buildCacheSize, giving an enormous speed boost for grid display.
6297
250 by Sergei Golubchik
comment out unsed builder configs
6298
#f_win2008r2_i386_release = factory.BuildFactory()
6299
#
6300
#f_win2008r2_i386_release.addStep(ShellCommand(
6301
#	name= "kill_old_build_processes",
6302
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", "taskkill /im cmake* /f /t || taskkill /im my* /f /t || taskkill /im bzr* /f /t || taskkill /im perl* /f /t || exit 0"],
6303
#        alwaysRun=True
6304
#));
6305
#
6306
#f_win2008r2_i386_release.addStep(ShellCommand(
6307
#	name= "remove_old_build_dir",
6308
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("rmdir /S /Q c:\\buildbot\\%(buildername)s\\build || exit 0")],
6309
#	alwaysRun=True
6310
#));
6311
#
6312
#f_win2008r2_i386_release.addStep(ShellCommand(
6313
#	name = "bzr_prepare",
6314
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("bzr init-repo c:\\buildbot\\%(buildername)s || exit 0")]
6315
#));
6316
#
6317
## We can not use Bzr() here because it contains a hard-coded assumption that the bzr client will run on the local machine
6318
#
6319
#f_win2008r2_i386_release.addStep(ShellCommand(
6320
#	name = "bzr_checkout",
6321
#	command=["ssh", "buildbot@win2008r2-build", "bzr" ,"checkout", "-r", WithProperties("%(revision)s"), WithProperties("lp:~maria-captains/maria/%(branch)s"), WithProperties("c:\\buildbot\\%(buildername)s\\build")],
6322
#	timeout = 4*3600
6323
#));
6324
#
6325
#f_win2008r2_i386_release.addStep(ShellCommand(
6326
#	name = "bzr_version_info",
6327
#	command=["ssh", "buildbot@win2008r2-build", "bzr" ,"version-info", WithProperties("c:\\buildbot\\%(buildername)s\\build")]
6328
#));
6329
#
6330
#f_win2008r2_i386_release.addStep(Compile(
6331
#	name = "cmake",
6332
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build && cmake . -G \"Visual Studio 9 2008\"")]
6333
#));
6334
#
6335
#f_win2008r2_i386_release.addStep(Compile(
6336
#	name = "build",
6337
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build && cmake --build . --config RelWithDebInfo --")],
6338
#	warningPattern=vsWarningPattern,
6339
#	warningExtractor=Compile.warnExtractFromRegexpGroups
6340
#));
6341
#
6342
#f_win2008r2_i386_release.addStep(getMTR(
6343
#	test_type="nm", test_info="Normal mode",
6344
#        env={"MTR_FEEDBACK_PLUGIN": "1"},
6345
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build\mysql-test && perl mysql-test-run.pl  --verbose-restart --force --parallel=4 --testcase-timeout=45 --suite-timeout=600 --max-test-fail=500")]
6346
#))
6347
#
6348
#bld_win2008r2_vs2008_i386_release = {
6349
#	'name': "win2008r2-vs2008-i386-release",
6350
#	'slavename': "centos56-quality2",
6351
#	'builddir': "vs2008-i386-release",
6352
#	'factory': f_win2008r2_i386_release,
6353
#        "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
6354
#	'category': "experimental"
250 by Sergei Golubchik
comment out unsed builder configs
6355
#}
6356
6357
#f_win2008r2_amd64_debug = factory.BuildFactory()
6358
#
6359
#f_win2008r2_amd64_debug.addStep(ShellCommand(
6360
#	name= "kill_old_build_processes",
6361
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", "taskkill /im cmake* /f /t || taskkill /im my* /f /t || taskkill /im bzr* /f /t || taskkill /im perl* /f /t || exit 0"],
6362
#        alwaysRun=True
6363
#));
6364
#
6365
#f_win2008r2_amd64_debug.addStep(ShellCommand(
6366
#	name= "remove_old_build_dir",
6367
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("rmdir /S /Q c:\\buildbot\\%(buildername)s\\build || exit 0")],
6368
#       alwaysRun=True
6369
#));
6370
#
6371
#f_win2008r2_amd64_debug.addStep(ShellCommand(
6372
#	name = "bzr_prepare",
6373
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("bzr init-repo c:\\buildbot\\%(buildername)s || exit 0")]
6374
#));
6375
#
6376
## We can not use Bzr() here because it contains a hard-coded assumption that the bzr client will run on the local machine
6377
#
6378
#f_win2008r2_amd64_debug.addStep(ShellCommand(
6379
#	name = "bzr_checkout",
6380
#	command=["ssh", "buildbot@win2008r2-build", "bzr" ,"checkout", "-r", WithProperties("%(revision)s"), WithProperties("lp:~maria-captains/maria/%(branch)s"), WithProperties("c:\\buildbot\\%(buildername)s\\build")],
6381
#	timeout = 4*3600
6382
#));
6383
#
6384
#f_win2008r2_amd64_debug.addStep(ShellCommand(
6385
#	name = "bzr_version_info",
6386
#	command=["ssh", "buildbot@win2008r2-build", "bzr" ,"version-info", WithProperties("c:\\buildbot\\%(buildername)s\\build")]
6387
#));
6388
#
6389
#f_win2008r2_amd64_debug.addStep(Compile(
6390
#	name = "cmake",
6391
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build && cmake . -DWITH_EMBEDDED_SERVER=1 -G \"Visual Studio 10 Win64\"")]
6392
#));
6393
#
6394
#f_win2008r2_amd64_debug.addStep(Compile(
6395
#	name = "build",
6396
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build && cmake --build . --config Debug -- \"/maxcpucount:4\"")],
6397
#	warningPattern=vsWarningPattern,
6398
#	warningExtractor=Compile.warnExtractFromRegexpGroups
6399
#));
6400
#
6401
#f_win2008r2_amd64_debug.addStep(getMTR(
6402
#	test_type="nm", test_info="Normal test suite",
6403
#        env={"MTR_FEEDBACK_PLUGIN": "1"},
316 by Daniel Bartholomew
automatic maria-master.cfg commit
6404
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build\mysql-test && perl mysql-test-run.pl  --verbose-restart --force  --parallel=4 --testcase-timeout=45 --max-test-fail=100 --retry=3")]
250 by Sergei Golubchik
comment out unsed builder configs
6405
#))
6406
#
6407
#f_win2008r2_amd64_debug.addStep(getMTR(
6408
#	test_type="emb", test_info="Embedded",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
6409
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build\mysql-test && perl mysql-test-run.pl  --verbose-restart --embedded-server --force --parallel=4  --testcase-timeout=45 --max-test-fail=100 --retry=3")]
250 by Sergei Golubchik
comment out unsed builder configs
6410
#))
6411
#
6412
#f_win2008r2_amd64_debug.addStep(getMTR(
6413
#	test_type="pbxt", test_info="PBXT test suite",
6414
#        doStepIf=branch_is_5_123,
6415
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build\mysql-test && perl mysql-test-run.pl  --verbose-restart --suite=pbxt --mysqld=--default-storage-engine=pbxt --force --parallel=4 --max-test-fail=100 --retry=3")]
6416
#))
6417
#
6418
#f_win2008r2_amd64_debug.addStep(getMTR(
6419
#	test_type="pm", test_info="--ps-protocol mode",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
6420
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build\mysql-test && perl mysql-test-run.pl  --verbose-restart --ps-protocol --force   --parallel=4 --testcase-timeout=45 --max-test-fail=100 --retry=3")]
250 by Sergei Golubchik
comment out unsed builder configs
6421
#))
6422
#
6423
#f_win2008r2_amd64_debug.addStep(getMTR(
6424
#	test_type="xtra", test_info="Some additional test suites",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
6425
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build\mysql-test && perl mysql-test-run.pl  --verbose-restart --suite=funcs_1,funcs_2,stress,jp --force  --parallel=4 --testcase-timeout=45 --max-test-fail=200 --retry=3")]
250 by Sergei Golubchik
comment out unsed builder configs
6426
#))
6427
#
6428
#bld_win2008r2_vs2010_amd64_debug = {
6429
#	'name': "win2008r2-vs2010-amd64-debug",
6430
#	'slavename': "centos56-quality2",
6431
#	'builddir': "vs2010-amd64-Debug",
6432
#	'factory': f_win2008r2_amd64_debug,
6433
#        "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
6434
#	"category": "experimental"
250 by Sergei Golubchik
comment out unsed builder configs
6435
#}
6436
6437
6438
6439
#f_win2008r2_i386_packages = factory.BuildFactory()
6440
#
6441
#f_win2008r2_i386_packages.addStep(ShellCommand(
6442
#	name= "kill_old_build_processes",
6443
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", "taskkill /im cmake* /f /t || taskkill /im my* /f /t || taskkill /im bzr* /f /t || taskkill /im perl* /f /t || exit 0"],
6444
#        alwaysRun=True
6445
#));
6446
#
6447
#f_win2008r2_i386_packages.addStep(ShellCommand(
6448
#	name= "remove_old_build_dir",
6449
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("rmdir /S /Q c:\\buildbot\\%(buildername)s\\build || exit 0")],
6450
#        alwaysRun=True
6451
#));
6452
#
6453
#f_win2008r2_i386_packages.addStep(ShellCommand(
6454
#	name= "create_new_build_dir",
6455
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("mkdir c:\\buildbot\\%(buildername)s\\build || exit 0")]
6456
#));
6457
#
6458
#f_win2008r2_i386_packages.addStep(FileDownload( mastersrc=WithProperties("%(tarballpath)s"), slavedest=WithProperties("%(distdirname)s.tar.gz")) );
6459
#
6460
#f_win2008r2_i386_packages.addStep(ShellCommand(
6461
#	name = "push_tarball",
6462
#	command=["sh", "-c", WithProperties("echo 'put %(distdirname)s.tar.gz %(buildername)s/build/' | sftp buildbot@win2008r2-build")]
6463
#));
6464
#
6465
## gzip -d is a separate step because tar -z does not work on Windows
6466
#
6467
#f_win2008r2_i386_packages.addStep(ShellCommand(
6468
#	name = "unpack_tarball",
6469
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("gzip -d --force c:\\buildbot\\%(buildername)s\\build\\%(distdirname)s.tar.gz")]
6470
#));
6471
#
6472
## we do cd + tar because tar on windows does not allow paths. also tar --strip-components does not work on Windows
6473
#
6474
#f_win2008r2_i386_packages.addStep(ShellCommand(
6475
#	name = "unpack_tarball",
6476
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build && tar xfv %(distdirname)s.tar")]
6477
#));
6478
#
6479
#f_win2008r2_i386_packages.addStep(Compile(
6480
#	name = "cmake",
6481
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build\\%(distdirname)s && cmake . -DWITH_EMBEDDED_SERVER=1 -DCOMPILATION_COMMENT=\"mariadb.org binary distribution\" -DWITH_THIRD_PARTY=HeidiSQL  -G \"Visual Studio 10\"")]
6482
#));
6483
#
6484
#f_win2008r2_i386_packages.addStep(Compile(
6485
#	name = "build_zip",
6486
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build\\%(distdirname)s && cmake --build . --config Debug -- \"/maxcpucount:4\" && cmake --build . --config RelWithDebInfo --target package -- \"/maxcpucount:4\"")],
6487
#	warningPattern=vsWarningPattern,
6488
#	warningExtractor=Compile.warnExtractFromRegexpGroups
6489
#));
6490
#
6491
#f_win2008r2_i386_packages.addStep(getMTR(
6492
#	test_type="nm", test_info="Normal test suite",
6493
#        env={"MTR_FEEDBACK_PLUGIN": "1"},
316 by Daniel Bartholomew
automatic maria-master.cfg commit
6494
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build\\%(distdirname)s\\mysql-test && perl mysql-test-run.pl  --verbose-restart --suite=main --force  --parallel=4 --testcase-timeout=45 --max-test-fail=100 --retry=3")]
250 by Sergei Golubchik
comment out unsed builder configs
6495
#))
6496
#
6497
#
6498
#f_win2008r2_i386_packages.addStep(Compile(
6499
#	name = "build_msi",
6500
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build\\%(distdirname)s && cmake --build . --config RelWithDebInfo --target win/packaging/msi -- \"/maxcpucount:4\"")],
6501
#	warningPattern=vsWarningPattern,
6502
#	warningExtractor=Compile.warnExtractFromRegexpGroups
6503
#));
6504
#
6505
#f_win2008r2_i386_packages.addStep(ShellCommand(
6506
#	name = "create_dir",
6507
#	command=["sh", "-c", WithProperties("mkdir %(tarbuildnum)s")]
6508
#));
6509
#
6510
#f_win2008r2_i386_packages.addStep(ShellCommand(
6511
#	name = "pull_zip",
6512
#	command=["sh", "-c", WithProperties("echo 'get %(buildername)s/build/%(distdirname)s/*.zip %(tarbuildnum)s/' | sftp buildbot@win2008r2-build")]
6513
#));
6514
#
6515
#f_win2008r2_i386_packages.addStep(ShellCommand(
6516
#	name = "pull_msi",
6517
#	command=["sh", "-c", WithProperties("echo 'get %(buildername)s/build/%(distdirname)s/*.msi %(tarbuildnum)s/' | sftp buildbot@win2008r2-build")]
6518
#));
6519
#
6520
#f_win2008r2_i386_packages.addStep(ShellCommand(
6521
#	name = "fix_permissions",
6522
#	command=["sh", "-c", WithProperties("chmod -R a+rwx %(tarbuildnum)s/")]
6523
#));
6524
#
6525
#bld_win2008r2_vs2010_i386_packages = {
6526
#	'name': "win2008r2-vs2010-i386-packages",
6527
#	'slavename': "centos56-quality2",
6528
#	'builddir': "win2008r2-vs2010-i386-packages",
6529
#	'factory': f_win2008r2_i386_packages,
6530
#        "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
6531
#	"category": "experimental"
250 by Sergei Golubchik
comment out unsed builder configs
6532
#}
6533
6534
#f_win2008r2_amd64_packages = factory.BuildFactory()
6535
#
6536
#f_win2008r2_amd64_packages.addStep(ShellCommand(
6537
#	name= "kill_old_build_processes",
6538
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", "taskkill /im cmake* /f /t || taskkill /im my* /f /t || taskkill /im bzr* /f /t || taskkill /im perl* /f /t || exit 0"],
6539
#        alwaysRun=True
6540
#));
6541
#
6542
#f_win2008r2_amd64_packages.addStep(ShellCommand(
6543
#	name= "remove_old_build_dir",
6544
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("rmdir /S /Q c:\\buildbot\\%(buildername)s\\build || exit 0")],
6545
#        alwaysRun=True
6546
#));
6547
#
6548
#f_win2008r2_amd64_packages.addStep(ShellCommand(
6549
#	name= "create_new_build_dir",
6550
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("mkdir c:\\buildbot\\%(buildername)s\\build || exit 0")]
6551
#));
6552
#
6553
#f_win2008r2_amd64_packages.addStep(FileDownload( mastersrc=WithProperties("%(tarballpath)s"), slavedest=WithProperties("%(distdirname)s.tar.gz")) );
6554
#
6555
#f_win2008r2_amd64_packages.addStep(ShellCommand(
6556
#	name = "push_tarball",
6557
#	command=["sh", "-c", WithProperties("echo 'put %(distdirname)s.tar.gz %(buildername)s/build/' | sftp buildbot@win2008r2-build")]
6558
#));
6559
#
6560
## gzip -d is a separate step because tar -z does not work on Windows
6561
#
6562
#f_win2008r2_amd64_packages.addStep(ShellCommand(
6563
#	name = "unpack_tarball",
6564
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("gzip -d --force c:\\buildbot\\%(buildername)s\\build\\%(distdirname)s.tar.gz")]
6565
#));
6566
#
6567
## we do cd + tar because tar on windows does not allow paths. also tar --strip-components does not work on Windows
6568
#
6569
#f_win2008r2_amd64_packages.addStep(ShellCommand(
6570
#	name = "unpack_tarball",
6571
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build && tar xfv %(distdirname)s.tar")]
6572
#));
6573
#
6574
#f_win2008r2_amd64_packages.addStep(Compile(
6575
#	
6576
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build\\%(distdirname)s && cmake . -DWITH_EMBEDDED_SERVER=1  -DCOMPILATION_COMMENT=\"mariadb.org binary distribution\" -DWITH_THIRD_PARTY=HeidiSQL -G \"Visual Studio 10 Win64\"")]
6577
#));
6578
#
6579
#f_win2008r2_amd64_packages.addStep(Compile(
6580
#	name = "build_zip",
6581
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build\\%(distdirname)s && cmake --build . --config Debug -- \"/maxcpucount:4\" && cmake --build . --config RelWithDebInfo --target package -- \"/maxcpucount:4\"")],
6582
#	warningPattern=vsWarningPattern,
6583
#	warningExtractor=Compile.warnExtractFromRegexpGroups
6584
#));
6585
#
6586
#f_win2008r2_amd64_packages.addStep(getMTR(
6587
#	test_type="nm", test_info="Normal test suite",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
6588
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build\\%(distdirname)s\\mysql-test && perl mysql-test-run.pl  --verbose-restart --suite=main --force  --parallel=4 --testcase-timeout=45 --max-test-fail=100 --retry=3")]
250 by Sergei Golubchik
comment out unsed builder configs
6589
#))
6590
#
6591
#
6592
#f_win2008r2_amd64_packages.addStep(Compile(
6593
#	name = "build_msi",
6594
#	command=["ssh", "buildbot@win2008r2-build", "cmd", "/C", WithProperties("cd c:\\buildbot\\%(buildername)s\\build\\%(distdirname)s && cmake --build . --config RelWithDebInfo --target win/packaging/msi -- \"/maxcpucount:4\"")],
6595
#	warningPattern=vsWarningPattern,
6596
#	warningExtractor=Compile.warnExtractFromRegexpGroups
6597
#));
6598
#
6599
#f_win2008r2_amd64_packages.addStep(ShellCommand(
6600
#	name = "create_dir",
6601
#	command=["sh", "-c", WithProperties("mkdir %(tarbuildnum)s")]
6602
#));
6603
#
6604
#f_win2008r2_amd64_packages.addStep(ShellCommand(
6605
#	name = "pull_zip",
6606
#	command=["sh", "-c", WithProperties("echo 'get %(buildername)s/build/%(distdirname)s/*.zip %(tarbuildnum)s/' | sftp buildbot@win2008r2-build")]
6607
#));
6608
#
6609
#f_win2008r2_amd64_packages.addStep(ShellCommand(
6610
#	name = "pull_msi",
6611
#	command=["sh", "-c", WithProperties("echo 'get %(buildername)s/build/%(distdirname)s/*.msi %(tarbuildnum)s/' | sftp buildbot@win2008r2-build")]
6612
#));
6613
#
6614
#f_win2008r2_amd64_packages.addStep(ShellCommand(
6615
#	name = "fix_permissions",
6616
#	command=["sh", "-c", WithProperties("chmod -R a+rwx %(tarbuildnum)s/")]
6617
#));
6618
#
6619
#bld_win2008r2_vs2010_amd64_packages = {
6620
#	'name': "win2008r2-vs2010-amd64-packages",
6621
#	'slavename': "centos56-quality2",
6622
#	'builddir': "win2008r2-vs2010-amd64-packages",
6623
#	'factory': f_win2008r2_amd64_packages,
6624
#        "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
6625
#	"category": "experimental"
250 by Sergei Golubchik
comment out unsed builder configs
6626
#}
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
6627
615 by Daniel Bartholomew
automatic maria-master.cfg commit
6628
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6629
def do_step_win(step):
6630
	return branch_is_not_galera(step) and branch_is_not_connector(step)
6631
	
882 by Daniel Bartholomew
automatic maria-master.cfg commit
6632
def make_win_build_factory(generator,config,do_package, test_spec=" --suite=main,innodb,plugins --parallel=4 ",publish_root_dir=""):
615 by Daniel Bartholomew
automatic maria-master.cfg commit
6633
	f = factory.BuildFactory()
6634
	f.addStep(ShellCommand(
6635
        name= "close_open_handles",
6636
        command=["dojob", "unlock_handles.bat" ],
6637
        alwaysRun=True
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6638
	));
615 by Daniel Bartholomew
automatic maria-master.cfg commit
6639
	f.addStep(ShellCommand(
6640
        name= "remove_build_dir",
6641
        command=["dojob", "rm -rf * || exit 0" ],
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6642
	doStepIf=do_step_win
6643
    	));
654 by Daniel Bartholomew
automatic maria-master.cfg commit
6644
	if do_package:
6645
		f.addStep(FileDownload(
6646
		mastersrc=WithProperties("%(tarballpath)s"),
6647
		slavedest=WithProperties("%(distdirname)s.tar.gz"),
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6648
        	blocksize=524288,
6649
		doStepIf=do_step_win
654 by Daniel Bartholomew
automatic maria-master.cfg commit
6650
		))
6651
		f.addStep(ShellCommand(
6652
		name = "unpack_tarball",
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6653
		command=["dojob", WithProperties("cmake -E tar xfz %(distdirname)s.tar.gz && move %(distdirname)s src")],
6654
		doStepIf=do_step_win
654 by Daniel Bartholomew
automatic maria-master.cfg commit
6655
		))
6656
	else:
6657
    		f.addStep(ShellCommand(
6658
            	name= "git_checkout",
6659
		command=["dojob", WithProperties("git clone %(repository)s src && cd  src && git reset --hard %(revision)s")],
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6660
            	timeout=7200,
6661
		doStepIf=do_step_win
654 by Daniel Bartholomew
automatic maria-master.cfg commit
6662
    		));
858 by Daniel Bartholomew
automatic maria-master.cfg commit
6663
	cmake_extra_args = ' -DBUILD_CONFIG=mysql_release -DCOMPILATION_COMMENT="mariadb.org binary distribution" -DWITH_THIRD_PARTY=HeidiSQL -DSIGNCODE=ON -DWITH_UNIT_TESTS=0' if do_package else ''
654 by Daniel Bartholomew
automatic maria-master.cfg commit
6664
        f.addStep(Compile(
615 by Daniel Bartholomew
automatic maria-master.cfg commit
6665
		name = "cmake",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
6666
		command=["dojob", WithProperties(("cmake src " if not generator else "cmake src -G \"" + generator + "\"") + cmake_extra_args)],
615 by Daniel Bartholomew
automatic maria-master.cfg commit
6667
		warningPattern=vsWarningPattern,
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6668
		warningExtractor=Compile.warnExtractFromRegexpGroups,
6669
		doStepIf=do_step_win
615 by Daniel Bartholomew
automatic maria-master.cfg commit
6670
	));
6671
	if do_package:
6672
		f.addStep(Compile(
6673
			name = "build",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
6674
			command=["dojob", WithProperties("cmake --build  .  --config " + config + " --target package " + " && cmake --build  .  --config " + config + " --target MSI")],
615 by Daniel Bartholomew
automatic maria-master.cfg commit
6675
			warningPattern=vsWarningPattern,
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6676
			warningExtractor=Compile.warnExtractFromRegexpGroups,
865 by Daniel Bartholomew
automatic maria-master.cfg commit
6677
                        timeout=3600,
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6678
			doStepIf=do_step_win
615 by Daniel Bartholomew
automatic maria-master.cfg commit
6679
		));
6680
	else:
6681
		f.addStep(Compile(
6682
			name = "cmake",
654 by Daniel Bartholomew
automatic maria-master.cfg commit
6683
			command=["dojob", WithProperties("cmake --build  .  --config " + config)],
615 by Daniel Bartholomew
automatic maria-master.cfg commit
6684
			warningPattern=vsWarningPattern,
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6685
			warningExtractor=Compile.warnExtractFromRegexpGroups,
6686
			doStepIf=do_step_win
615 by Daniel Bartholomew
automatic maria-master.cfg commit
6687
		));
654 by Daniel Bartholomew
automatic maria-master.cfg commit
6688
6689
	if do_package:
6690
		export_dir = publish_root_dir +  "\\%(branch)s\\build-%(tarbuildnum)s\\%(buildername)s"
6691
		f.addStep(ShellCommand(
6692
			name = "publish",
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6693
			doStepIf=lambda(step): in_savedPackageBranches(step) and do_step_win(step),
695 by Daniel Bartholomew
automatic maria-master.cfg commit
6694
			command=["dojob", WithProperties("(if exist " + export_dir + "  (rd /s /q " + export_dir + ")) && mkdir " + export_dir + " && xcopy /y /f *.zip " + export_dir + " && xcopy /y /f *.msi " + export_dir + " && md5sums " + export_dir)],
654 by Daniel Bartholomew
automatic maria-master.cfg commit
6695
		));
615 by Daniel Bartholomew
automatic maria-master.cfg commit
6696
	
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6697
	f.addStep(getMTR(
6698
		test_type="nm", test_info="Normal mode",
6699
		env={"MTR_FEEDBACK_PLUGIN": "1"},
784 by Daniel Bartholomew
automatic maria-master.cfg commit
6700
		command=["dojob", WithProperties("if exist src\\mysql-test\\collections\\buildbot_suites.bat (cd mysql-test && ..\\src\mysql-test\\collections\\buildbot_suites.bat) else (cd mysql-test && perl mysql-test-run.pl  --verbose-restart --force  --testcase-timeout=45 --suite-timeout=600 --max-test-fail=500 --retry=3 " + test_spec + " )" )],
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6701
		doStepIf=do_step_win
882 by Daniel Bartholomew
automatic maria-master.cfg commit
6702
	));
6703
6704
        f.addStep(getMTR(
886 by Daniel Bartholomew
automatic maria-master.cfg commit
6705
                test_type="extra", test_info="connect engine", description=["connect engine"],
888 by Daniel Bartholomew
automatic maria-master.cfg commit
6706
                command=["dojob", WithProperties("cd mysql-test &&  perl mysql-test-run.pl  --verbose-restart --force  --testcase-timeout=45 --suite-timeout=600  --retry=3 --suites=connect" )],
6707
                doStepIf=lambda(step): step.getProperty("branch").startswith("ob-") and do_step_win(step)
882 by Daniel Bartholomew
automatic maria-master.cfg commit
6708
        ));
6709
615 by Daniel Bartholomew
automatic maria-master.cfg commit
6710
	return f
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
6711
 
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6712
6713
bld_win32_debug = {
6714
	'name': "win32-debug",
6715
	'slavename': "bb-win-azure-2",
6716
	'builddir': "D:\\win32-debug",
808 by Daniel Bartholomew
automatic maria-master.cfg commit
6717
	'factory':  make_win_build_factory(generator='Visual Studio 14 2015',config='Debug',do_package=False),
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6718
        'nextBuild': myNextBuild,
6719
	'category': "main"
6720
}
6721
6722
bld_winx64_debug = {
6723
	'name': "winx64-debug",
6724
	'slavename': "bb-win-azure-2",
6725
	'builddir': "D:\\winx64-debug",
808 by Daniel Bartholomew
automatic maria-master.cfg commit
6726
	'factory': make_win_build_factory(generator='Visual Studio 14 2015 Win64',config='Debug',do_package=False),
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6727
        'nextBuild': myNextBuild,
6728
	'category': "main"
6729
}
6730
6731
bld_win32_packages = {
6732
	'name': "win32-packages",
6733
	'slavename': "bb-win-azure",
6734
	'builddir': "D:\\win32-packages",
808 by Daniel Bartholomew
automatic maria-master.cfg commit
6735
        'factory':  make_win_build_factory(generator='Visual Studio 14 2015',config='RelWithDebInfo',do_package=True, publish_root_dir="E:\\packs"),
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6736
        "nextBuild": myNextBuild,
6737
	"category": "main"
6738
}
6739
6740
bld_winx64_packages = {
6741
	'name': "winx64-packages",
6742
	'slavename': "bb-win-azure",
6743
	'builddir': "D:\\winx64-packages",
808 by Daniel Bartholomew
automatic maria-master.cfg commit
6744
	'factory': make_win_build_factory(generator='Visual Studio 14 2015 Win64',config='RelWithDebInfo',do_package=True, publish_root_dir="E:\\packs"),
665 by Daniel Bartholomew
automatic maria-master.cfg commit
6745
        "nextBuild": myNextBuild,
6746
	"category": "main"
6747
}
6748
755 by Daniel Bartholomew
automatic maria-master.cfg commit
6749
# Attention! bld_kvm_qa_linux builder uses port=10710
793 by Daniel Bartholomew
automatic maria-master.cfg commit
6750
#            bld_qa_bb_experiments builder uses port=10711
749 by Elena Stepanova
Extract QA-specific schedulers and builders into separate config.
6751
execfile("/etc/buildbot/builders/qa/qa_builders.py");
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
6752
168.1.9 by Kristian Nielsen
For Galera trees, add our main public repo to /etc/apt/sources* when testing.
6753
f_win_jdbc = factory.BuildFactory()
6754
f_win_jdbc.addStep(ShellCommand(
6755
	name = "bzr_prepare",
6756
	command=["dojob", WithProperties("bzr init-repo c:\\buildbot\\%(buildername)s || exit 0")]
6757
));
6758
6759
f_win_jdbc.addStep(ShellCommand(
173 by Daniel Bartholomew
Added Ubuntu 12.10 "quantal" to the config.
6760
        name = "remove_old_build",
6761
        command=["dojob", "rm -rf" , 
6762
         WithProperties("c:\\buildbot\\%(buildername)s\\build")],
6763
        timeout = 4*3600,
6764
        haltOnFailure = True
6765
));
6766
6767
f_win_jdbc.addStep(ShellCommand(
168.1.9 by Kristian Nielsen
For Galera trees, add our main public repo to /etc/apt/sources* when testing.
6768
        name = "bzr_checkout",
6769
        command=["dojob", "bzr" ,"checkout", "-r", WithProperties("%(revision)s"), WithProperties("lp:%(repository)s"), WithProperties("c:\\buildbot\\%(buildername)s\\build")],
6770
        timeout = 4*3600,
6771
        haltOnFailure = True
6772
));
6773
6774
f_win_jdbc.addStep(ShellCommand(
6775
	name= "build_package",
6776
	command=["dojob",
190 by Daniel Bartholomew
misc config updates
6777
        WithProperties("cd c:\\buildbot\\%(buildername)s\\build && build_release")
168.1.9 by Kristian Nielsen
For Galera trees, add our main public repo to /etc/apt/sources* when testing.
6778
        ],
6779
        haltOnFailure = True
6780
	));
190 by Daniel Bartholomew
misc config updates
6781
6782
f_win_jdbc.addStep(ShellCommand(
6783
        name= "create_publish_dir",
6784
        command=["dojob",
6785
        WithProperties("mkdir c:\\build_archive\\%(branch)s\\%(revision)s || exit 0")]
6786
        ))
6787
6788
f_win_jdbc.addStep(ShellCommand(
6789
        name= "publish",
6790
        command=["dojob",
6791
        WithProperties("cd c:\\buildbot\\%(buildername)s\\build && xcopy /y /f target\*.jar c:\\build_archive\\%(branch)s\\%(revision)s && xcopy /y /f *.tar.gz c:\\build_archive\\%(branch)s\\%(revision)s &&  md5sums c:/build_archive/%(branch)s/%(revision)s")]
6792
        ))
6793
542 by Daniel Bartholomew
automatic maria-master.cfg commit
6794
f_win_jdbc.addStep(ShellCommand(
6795
        name= "create_upload_dir",
6796
        command=["dojob",
6797
        WithProperties("mkdir c:\\bzr\\bb-win32\\win-jdbc\\build\\%(revision)s && xcopy /y /f c:\\build_archive\\%(branch)s\\%(revision)s\\* c:\\bzr\\bb-win32\\win-jdbc\\build\\%(revision)s")]
6798
        ))
6799
6800
addPackageUploadStepWin(f_win_jdbc, 'win')
6801
190 by Daniel Bartholomew
misc config updates
6802
168.1.9 by Kristian Nielsen
For Galera trees, add our main public repo to /etc/apt/sources* when testing.
6803
bld_win_jdbc = {
6804
        'name': "win-jdbc",
6805
        'slavename': "bb-win32",
6806
        'builddir': "win-jdbc",
6807
        'factory': f_win_jdbc,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
6808
        'category': "experimental"
168.1.9 by Kristian Nielsen
For Galera trees, add our main public repo to /etc/apt/sources* when testing.
6809
}
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
6810
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6811
f_win_connector_c = factory.BuildFactory()
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
6812
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6813
f_win_connector_c.addStep(ShellCommand(
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
6814
        name = "remove_old_build",
6815
        command=["dojob", "rm -rf" , 
683 by Daniel Bartholomew
automatic maria-master.cfg commit
6816
         WithProperties("d:\\buildbot\\%(buildername)s\\build")],
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
6817
        timeout = 4*3600,
6818
        haltOnFailure = True
6819
));
683 by Daniel Bartholomew
automatic maria-master.cfg commit
6820
6821
f_win_connector_c.addStep(ShellCommand(
6822
        name= "git_checkout",
6823
        command=["dojob", WithProperties("rm -rf src && git clone -b %(branch)s %(repository)s src && cd src && git reset --hard %(revision)s && cd ..")],
6824
        timeout=7200,
6825
	doStepIf=do_step_win
6826
    	));
399 by Daniel Bartholomew
automatic maria-master.cfg commit
6827
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6828
f_win_connector_c.addStep(ShellCommand(
228 by Elena Stepanova
Buildbot config changes:
6829
	name= "build_package32-debug",
6830
	command=["dojob",
683 by Daniel Bartholomew
automatic maria-master.cfg commit
6831
        WithProperties("rm -rf win32 && mkdir win32 && cd win32 && cmake ..\\src -G \"Visual Studio 14 2015\" -DCMAKE_BUILD_TYPE=Debug && cmake --build . --config Debug --target package")
228 by Elena Stepanova
Buildbot config changes:
6832
        ],
6833
        haltOnFailure = True
6834
	));
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6835
f_win_connector_c.addStep(ShellCommand(
228 by Elena Stepanova
Buildbot config changes:
6836
	name= "build_package32",
6837
	command=["dojob",
683 by Daniel Bartholomew
automatic maria-master.cfg commit
6838
        WithProperties("cd win32 && del CMakeCache.txt && cmake ..\\src -G \"Visual Studio 14 2015\" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DWITH_SIGNCODE=1 && cmake --build . --clean-first --config RelWithDebInfo --target package")
228 by Elena Stepanova
Buildbot config changes:
6839
        ],
6840
        haltOnFailure = True
6841
	));
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6842
f_win_connector_c.addStep(ShellCommand(
228 by Elena Stepanova
Buildbot config changes:
6843
	name= "build_package64-debug",
6844
	command=["dojob",
683 by Daniel Bartholomew
automatic maria-master.cfg commit
6845
        WithProperties("rm -rf win64 && mkdir win64 && cd win64 && cmake ..\\src -G \"Visual Studio 14 2015 Win64\" -DCMAKE_BUILD_TYPE=Debug && cmake --build . --config Debug --target package")
228 by Elena Stepanova
Buildbot config changes:
6846
        ],
6847
        haltOnFailure = True
6848
	));
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6849
f_win_connector_c.addStep(ShellCommand(
228 by Elena Stepanova
Buildbot config changes:
6850
	name= "build_package64",
6851
	command=["dojob",
683 by Daniel Bartholomew
automatic maria-master.cfg commit
6852
        WithProperties("cd win64 && del CMakeCache.txt && cmake ..\\src -G \"Visual Studio 14 2015 Win64\" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DWITH_SIGNCODE=1 && cmake --build . --clean-first --config RelWithDebInfo --target package")
228 by Elena Stepanova
Buildbot config changes:
6853
        ],
6854
        haltOnFailure = True
6855
	));
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6856
f_win_connector_c.addStep(ShellCommand(
228 by Elena Stepanova
Buildbot config changes:
6857
        name= "create_publish_dir",
6858
        command=["dojob",
399 by Daniel Bartholomew
automatic maria-master.cfg commit
6859
        WithProperties("mkdir c:\\build_archive\\%(buildername)s\%(branch)s\\%(revision)s || exit 0")]
228 by Elena Stepanova
Buildbot config changes:
6860
        ))
396 by Daniel Bartholomew
automatic maria-master.cfg commit
6861
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6862
f_win_connector_c.addStep(ShellCommand(
228 by Elena Stepanova
Buildbot config changes:
6863
        name= "publish_win32",
6864
        command=["dojob",
684 by Daniel Bartholomew
automatic maria-master.cfg commit
6865
        WithProperties("cd win32 && xcopy /y /f win\packaging\*.msi c:\\build_archive\\%(buildername)s\\%(branch)s\\%(revision)s &&  md5sums c:/build_archive/%(buildername)s/%(branch)s/%(revision)s")]
228 by Elena Stepanova
Buildbot config changes:
6866
        ))
6867
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6868
f_win_connector_c.addStep(ShellCommand(
228 by Elena Stepanova
Buildbot config changes:
6869
        name= "publish_win64",
6870
        command=["dojob",
684 by Daniel Bartholomew
automatic maria-master.cfg commit
6871
        WithProperties("cd win64 && xcopy /y /f win\packaging\*.msi c:\\build_archive\\%(buildername)s\\%(branch)s\\%(revision)s &&  md5sums c:/build_archive/%(buildername)s/%(branch)s/%(revision)s")]
228 by Elena Stepanova
Buildbot config changes:
6872
        ))
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
6873
541 by Daniel Bartholomew
automatic maria-master.cfg commit
6874
f_win_connector_c.addStep(ShellCommand(
6875
        name= "create_upload_dir",
6876
        command=["dojob",
807 by Daniel Bartholomew
automatic maria-master.cfg commit
6877
        WithProperties("if not exist \"c:\\bb\\connector-c\\build\\%(revision)s\" mkdir c:\\bb\\connector-c\\build\\%(revision)s && xcopy /y /f c:\\build_archive\\%(buildername)s\\%(branch)s\\%(revision)s\\* c:\\bb\\connector-c\\build\\%(revision)s")]
541 by Daniel Bartholomew
automatic maria-master.cfg commit
6878
        ))
6879
6880
addPackageUploadStepWin(f_win_connector_c, 'win')
6881
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6882
bld_win_connector_c = {
6883
        'name': "win-connector_c",
682 by Daniel Bartholomew
automatic maria-master.cfg commit
6884
        'slavename': "win-connectors",
587 by Daniel Bartholomew
automatic maria-master.cfg commit
6885
        'builddir': "connector-c",
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6886
        'factory': f_win_connector_c,
581 by Daniel Bartholomew
automatic maria-master.cfg commit
6887
        'category': "connectors"
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
6888
}
6889
566 by Daniel Bartholomew
automatic maria-master.cfg commit
6890
f_win_connector_c_3 = factory.BuildFactory()
6891
6892
f_win_connector_c_3.addStep(ShellCommand(
6893
        name = "remove_old_build",
6894
        command=["dojob", "rm -rf" ,
685 by Daniel Bartholomew
automatic maria-master.cfg commit
6895
         WithProperties("d:\\buildbot\\%(buildername)s\\build")],
566 by Daniel Bartholomew
automatic maria-master.cfg commit
6896
        timeout = 4*3600,
6897
        haltOnFailure = True
6898
));
6899
685 by Daniel Bartholomew
automatic maria-master.cfg commit
6900
f_win_connector_c_3.addStep(ShellCommand(
6901
        name= "git_checkout",
6902
        command=["dojob", WithProperties("rm -rf src && git clone -b %(branch)s %(repository)s src && cd src && git reset --hard %(revision)s && cd ..")],
6903
        timeout=7200,
6904
	doStepIf=do_step_win
6905
    	));
566 by Daniel Bartholomew
automatic maria-master.cfg commit
6906
578 by Daniel Bartholomew
updates to f_win_connector_c_3 builder
6907
566 by Daniel Bartholomew
automatic maria-master.cfg commit
6908
f_win_connector_c_3.addStep(ShellCommand(
6909
	name="create_dir",
6910
	command=["dojob",
685 by Daniel Bartholomew
automatic maria-master.cfg commit
6911
	WithProperties("rm win32 -rf && rm win64 -rf && mkdir win32 && mkdir win64")
566 by Daniel Bartholomew
automatic maria-master.cfg commit
6912
	],
6913
	haltOnFailure = False
6914
	));
6915
6916
f_win_connector_c_3.addStep(ShellCommand(
6917
        name= "build_package32",
616 by Daniel Bartholomew
automatic maria-master.cfg commit
6918
        env={'PATH': "c:\\tools\\curl\\lib;${PATH}"},
566 by Daniel Bartholomew
automatic maria-master.cfg commit
6919
        command=["dojob",
808 by Daniel Bartholomew
automatic maria-master.cfg commit
6920
        WithProperties("cd win32 && del CMakeCache.txt && cmake ..\\src -G \"Visual Studio 14 2015\" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DWITH_SSL=SCHANNEL -DWITH_SIGNCODE=1 -DWITH_MSI=ON  -DCURL_INCLUDE_DIR=c:\\tools\\curl\\include && cmake --build . --clean-first --config RelWithDebInfo --target package")
566 by Daniel Bartholomew
automatic maria-master.cfg commit
6921
        ],
6922
        haltOnFailure = True
6923
        ));
6924
6925
f_win_connector_c_3.addStep(ShellCommand(
6926
        name= "build_package64",
616 by Daniel Bartholomew
automatic maria-master.cfg commit
6927
        env={'PATH': "c:\\tools\\curl\\lib64;${PATH}"},
566 by Daniel Bartholomew
automatic maria-master.cfg commit
6928
        command=["dojob",
808 by Daniel Bartholomew
automatic maria-master.cfg commit
6929
        WithProperties("cd win64 && del CMakeCache.txt && cmake ..\\src -G \"Visual Studio 14 2015 Win64\" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DWITH_SSL=SCHANNEL -DWITH_SIGNCODE=1 -DWITH_MSI=ON -DCURL_INCLUDE_DIR=c:\\tools\\curl\\include && cmake --build . --clean-first --config RelWithDebInfo --target package")
566 by Daniel Bartholomew
automatic maria-master.cfg commit
6930
        ],
6931
        haltOnFailure = True
6932
        ));
6933
6934
f_win_connector_c_3.addStep(ShellCommand(
6935
        name= "create_publish_dir",
6936
        command=["dojob",
6937
        WithProperties("mkdir c:\\build_archive\\%(buildername)s\%(branch)s\\%(revision)s || exit 0")]
6938
        ))
6939
6940
f_win_connector_c_3.addStep(ShellCommand(
6941
        name= "publish_win32",
6942
        command=["dojob",
685 by Daniel Bartholomew
automatic maria-master.cfg commit
6943
        WithProperties("cd win32 && xcopy /y /f win\packaging\*.msi c:\\build_archive\\%(buildername)s\\%(branch)s\\%(revision)s &&  md5sums c:/build_archive/%(buildername)s/%(branch)s/%(revision)s")]
566 by Daniel Bartholomew
automatic maria-master.cfg commit
6944
        ))
6945
6946
f_win_connector_c_3.addStep(ShellCommand(
6947
        name= "publish_win64",
6948
        command=["dojob",
685 by Daniel Bartholomew
automatic maria-master.cfg commit
6949
        WithProperties("cd win64 && xcopy /y /f win\packaging\*.msi c:\\build_archive\\%(buildername)s\\%(branch)s\\%(revision)s &&  md5sums c:/build_archive/%(buildername)s/%(branch)s/%(revision)s")]
566 by Daniel Bartholomew
automatic maria-master.cfg commit
6950
        ))
6951
6952
f_win_connector_c_3.addStep(ShellCommand(
6953
        name= "create_upload_dir",
6954
        command=["dojob",
808 by Daniel Bartholomew
automatic maria-master.cfg commit
6955
        WithProperties("if not exist \"c:\\bb\\connector_c_3\\build\\%(revision)s\" mkdir c:\\bb\\connector_c_3\\build\\%(revision)s && xcopy /y /f c:\\build_archive\\%(buildername)s\\%(branch)s\\%(revision)s\\* c:\\bb\\connector_c_3\\build\\%(revision)s")]
566 by Daniel Bartholomew
automatic maria-master.cfg commit
6956
        ))
6957
6958
addPackageUploadStepWin(f_win_connector_c_3, 'win')
6959
6960
bld_win_connector_c_3 = {
6961
        'name': "win-connector_c_3",
682 by Daniel Bartholomew
automatic maria-master.cfg commit
6962
        'slavename': "win-connectors",
566 by Daniel Bartholomew
automatic maria-master.cfg commit
6963
        'builddir': "connector_c_3",
6964
        'factory': f_win_connector_c_3,
581 by Daniel Bartholomew
automatic maria-master.cfg commit
6965
        'category': "connectors"
566 by Daniel Bartholomew
automatic maria-master.cfg commit
6966
}
6967
6968
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6969
f_connector_c= factory.BuildFactory()
6970
f_connector_c.addStep( 
231 by Kristian Nielsen
Misc. changes to buildbot config.
6971
                  ShellCommand(name="clean", command=["sh", "-c", WithProperties("""
6972
rm -Rf build
6973
""")]))
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6974
f_connector_c.addStep(maybe_bzr_checkout)
6975
f_connector_c.addStep(maybe_git_checkout)
231 by Kristian Nielsen
Misc. changes to buildbot config.
6976
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6977
f_connector_c.addStep(ShellCommand(name="build", command=["sh", "-c", WithProperties("""
231 by Kristian Nielsen
Misc. changes to buildbot config.
6978
cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo
6979
cmake --build . --config RelWithDebInfo --target package
6980
""")]))
6981
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6982
def bld_linux_connector_c(name, port, kvm_image):
374 by Daniel Bartholomew
automatic maria-master.cfg commit
6983
    args= ["--port="+port, "--user=buildbot", "--smp=4", "--cpu=qemu64"]
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6984
    linux_connector_c= factory.BuildFactory()
6985
    linux_connector_c.addStep(ShellCommand(
374 by Daniel Bartholomew
automatic maria-master.cfg commit
6986
        description=["cleaning", "build", "dir"],
6987
        descriptionDone=["clean", "build", "dir"],
6988
        command=["sh", "-c", "rm -Rf ../build/*"]))
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6989
    linux_connector_c.addStep(ShellCommand(
374 by Daniel Bartholomew
automatic maria-master.cfg commit
6990
        description=["rsyncing", "VMs"],
6991
        descriptionDone=["rsync", "VMs"],
6992
        doStepIf=(lambda(step): step.getProperty("slavename") != "bb01"),
6993
        haltOnFailure=True,
471 by Daniel Bartholomew
automatic maria-master.cfg commit
6994
        command=["rsync", "-a", "-v", "-L",
374 by Daniel Bartholomew
automatic maria-master.cfg commit
6995
                 "bb01.mariadb.net::kvm/vms/"+kvm_image+"-build.qcow2",
6996
                 "/kvm/vms/"]))
400 by Daniel Bartholomew
automatic maria-master.cfg commit
6997
    linux_connector_c.addStep(Compile(
6998
        description=["building", "linux-connctor_c"],
6999
        descriptionDone=["build", "linux-connctor_c"],
374 by Daniel Bartholomew
automatic maria-master.cfg commit
7000
        timeout=3600,
7001
        env={"TERM": "vt102"},
7002
        command=["runvm", "--base-image=/kvm/vms/"+kvm_image+"-build.qcow2"] + args +["vm-tmp-"+port+".qcow2",
7003
        "rm -Rf buildbot && mkdir buildbot",
7004
        WithProperties("""
7005
set -ex
530 by Daniel Bartholomew
automatic maria-master.cfg commit
7006
gcc --version
534 by Daniel Bartholomew
automatic maria-master.cfg commit
7007
uname -a
7008
rm -rf %(buildername)s
7009
mkdir %(buildername)s
7010
cd %(buildername)s
510 by Daniel Bartholomew
automatic maria-master.cfg commit
7011
rm -rf build
508 by Daniel Bartholomew
automatic maria-master.cfg commit
7012
#sudo apt-get -y install git
399 by Daniel Bartholomew
automatic maria-master.cfg commit
7013
#time bzr co "lp:~maria-captains/mariadb-native-client/trunk" build
534 by Daniel Bartholomew
automatic maria-master.cfg commit
7014
git clone --depth 1 -b %(branch)s "https://github.com/MariaDB/mariadb-connector-c.git" build
510 by Daniel Bartholomew
automatic maria-master.cfg commit
7015
cd build
572 by Daniel Bartholomew
automatic maria-master.cfg commit
7016
cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DGIT_BUILD_SRCPKG=1
374 by Daniel Bartholomew
automatic maria-master.cfg commit
7017
cmake --build . --config RelWithDebInfo --target package
395 by Daniel Bartholomew
automatic maria-master.cfg commit
7018
make package
535 by Daniel Bartholomew
automatic maria-master.cfg commit
7019
ls -l *.tar.gz
572 by Daniel Bartholomew
automatic maria-master.cfg commit
7020
ls -l *.zip
395 by Daniel Bartholomew
automatic maria-master.cfg commit
7021
"""),
534 by Daniel Bartholomew
automatic maria-master.cfg commit
7022
        "= scp -r -P "+port+" "+kvm_scpopt+" buildbot@localhost:/home/buildbot/" + name + "/build/mariadb*tar.gz .",
7023
        "= scp -r -P "+port+" "+kvm_scpopt+" buildbot@localhost:/home/buildbot/" + name + "/build/mariadb*zip .",
395 by Daniel Bartholomew
automatic maria-master.cfg commit
7024
        ]))
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
7025
    linux_connector_c.addStep(SetPropertyFromCommand(
389 by Daniel Bartholomew
automatic maria-master.cfg commit
7026
        property="bindistname",
851 by Daniel Bartholomew
automatic maria-master.cfg commit
7027
        command=["sh", "-c", WithProperties("if [ -f mariadb*freebsd*tar.gz ]; then basename `ls mariadb*freebsd*tar.gz`;else basename `ls mariadb*linux*tar.gz`;fi")],
389 by Daniel Bartholomew
automatic maria-master.cfg commit
7028
        ))
400 by Daniel Bartholomew
automatic maria-master.cfg commit
7029
    addPackageUploadStep(linux_connector_c, '"%(bindistname)s"')
396 by Daniel Bartholomew
automatic maria-master.cfg commit
7030
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
7031
    linux_connector_c.addStep(SetPropertyFromCommand(
396 by Daniel Bartholomew
automatic maria-master.cfg commit
7032
        property="srcdistname",
7033
        command=["sh", "-c", WithProperties("basename `ls mariadb*src*tar.gz`")],
7034
        ))
400 by Daniel Bartholomew
automatic maria-master.cfg commit
7035
    addPackageUploadStep(linux_connector_c, '"%(srcdistname)s"')
396 by Daniel Bartholomew
automatic maria-master.cfg commit
7036
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
7037
    linux_connector_c.addStep(SetPropertyFromCommand(
396 by Daniel Bartholomew
automatic maria-master.cfg commit
7038
        property="zipdistname",
7039
        command=["sh", "-c", WithProperties("basename `ls mariadb*src*zip`")],
7040
        ))
400 by Daniel Bartholomew
automatic maria-master.cfg commit
7041
    addPackageUploadStep(linux_connector_c, '"%(zipdistname)s"')
396 by Daniel Bartholomew
automatic maria-master.cfg commit
7042
374 by Daniel Bartholomew
automatic maria-master.cfg commit
7043
    return {'name': name, 'builddir': name,
400 by Daniel Bartholomew
automatic maria-master.cfg commit
7044
            'factory': linux_connector_c,
399 by Daniel Bartholomew
automatic maria-master.cfg commit
7045
            "slavenames": connector_slaves,
581 by Daniel Bartholomew
automatic maria-master.cfg commit
7046
            "category": "connectors"}
374 by Daniel Bartholomew
automatic maria-master.cfg commit
7047
400 by Daniel Bartholomew
automatic maria-master.cfg commit
7048
bld_linux_x64_connector_c= bld_linux_connector_c("linux_x64-connector_c", "2250", "vm-trusty-amd64");
633 by Daniel Bartholomew
automatic maria-master.cfg commit
7049
bld_freebsd_x64_connector_c= bld_linux_connector_c("freebsd_x64-connector_c", "2250", "vm-freebsd101-amd64");
400 by Daniel Bartholomew
automatic maria-master.cfg commit
7050
bld_linux_x86_connector_c= bld_linux_connector_c("linux_x86-connector_c", "2250", "vm-trusty-i386");
501 by Daniel Bartholomew
automatic maria-master.cfg commit
7051
bld_centos6_i386_connector_c= bld_linux_connector_c("centos6_i386-connector_c", "2250", "vm-centos6-i386");
850 by Daniel Bartholomew
Added FreeBSD 11 builders for Connector/C
7052
bld_freebsd11_x86_connector_c= bld_linux_connector_c("freebsd11_x86-connector_c", "2343", "vm-freebsd11-i386");
7053
bld_freebsd11_x64_connector_c= bld_linux_connector_c("freebsd11_x64-connector_c", "2344", "vm-freebsd11-amd64");
231 by Kristian Nielsen
Misc. changes to buildbot config.
7054
655 by Daniel Bartholomew
automatic maria-master.cfg commit
7055
execfile("/etc/buildbot/builders/odbc/linux_builders.py");
733 by Daniel Bartholomew
automatic maria-master.cfg commit
7056
execfile("/etc/buildbot/builders/odbc/windows_builder.py");
404 by Daniel Bartholomew
automatic maria-master.cfg commit
7057
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
7058
853 by Daniel Bartholomew
Added FreeBSD MariaDB build factory, and freebsd11-amd64/i386 builders
7059
7060
7061
7062
#-------------------------------------------------------------------------------
7063
# FreeBSD Builder
7064
#-------------------------------------------------------------------------------
7065
# initially based on Linux KVM Bintar builder - dbart 2017-02-24
7066
7067
def getFreeBSDBuilder(name, kvm_image, port, cpu, ramdisk=True, catg="experimental"):
7068
    args = ["--port="+port, "--user=buildbot", "--cpu="+cpu, "--smp=4", "--logfile=kernel_"+port+".log"]
7069
    if ramdisk:
7070
        args = args + ["--work-image=/dev/shm/vm-tmp-"+port+".qcow2"]
7071
    bin_fact = factory.BuildFactory()
7072
    # Delete ../build/* rather than simply * just to be a little safer if we
7073
    # somehow end up running in wrong directory!
7074
    bin_fact.addStep(ShellCommand(
7075
        description=["cleaning", "build", "dir"],
7076
        descriptionDone=["clean", "build", "dir"],
7077
        command=["sh", "-c", "rm -Rf ../build/*"]))
7078
    bin_fact.addStep(ShellCommand(
7079
        description=["rsyncing", "VMs"],
7080
        descriptionDone=["rsync", "VMs"],
7081
        doStepIf=(lambda(step): step.getProperty("slavename") != "bb01"),
7082
        haltOnFailure=True,
7083
        command=["rsync", "-a", "-v", "-L",
7084
                 "bb01.mariadb.net::kvm/vms/"+kvm_image+"-build.qcow2",
7085
                 "bb01.mariadb.net::kvm/vms/"+kvm_image+"-install.qcow2",
7086
                 "/kvm/vms/"]))
7087
    bin_fact.addStep(DownloadSourceTarball())
7088
    bin_fact.addStep(FileDownload(
7089
        mastersrc=WithProperties("%(bakerypath)s"),
7090
        slavedest=WithProperties("%(bakery)s.tar.gz"),
7091
        blocksize=524288,
7092
        doStepIf=branch_is_5_123))
7093
    bin_fact.addStep(ShellCommand(
7094
        description=["getting", ".supp"],
7095
        descriptionDone=["get", ".supp"],
7096
        command=["sh", "-c", WithProperties("""
7097
rm -f compiler_warnings.supp
7098
tar zxf "/tmp/buildcache/%(tarbuildnum)s:%(distname)s" --strip 2 "$(basename %(distname)s .tar.gz)/support-files/compiler_warnings.supp"
7099
ls -l compiler_warnings.supp
7100
exit 0  # best-effort, not fatal if no suppression file
7101
""")]))
7102
    bin_fact.addStep(Compile(
7103
        description=["making", "bintar"],
7104
        descriptionDone=["make", "bintar"],
7105
        timeout=3600,
7106
        logfiles={"kernel": "kernel_"+port+".log"},
7107
        warningPattern=gccWarningPattern,
7108
        warningExtractor=Compile.warnExtractFromRegexpGroups,
7109
        suppressionFile=WithProperties("compiler_warnings.supp"),
7110
        env={"TERM": "vt102"},
7111
        command=["runvm"] + args + ["--base-image=/kvm/vms/"+kvm_image+"-build.qcow2", "vm-tmp-"+port+".qcow2",
7112
        "rm -Rf buildbot && mkdir buildbot",
7113
        ScpSourceIntoVM(port),
7114
        WithProperties("= case '%(branch)s' in *5\\.[123]*) scp -P "+port+" "+kvm_scpopt+" %(bakery)s.tar.gz buildbot@localhost:buildbot/ ;; esac"),
7115
        WithProperties("""
7116
set -ex
7117
cd buildbot
7118
rm -Rf build
7119
case "%(branch)s" in
7120
*5\\.[123]*)
7121
  mkdir build
7122
  cd build
7123
  tar zxf ../%(bakery)s.tar.gz
7124
  cd %(bakery)s
7125
  bakery/autobake51-bintar.sh ../../%(distname)s
7126
  ;;
7127
*)
7128
  tar zxf "%(distname)s"
7129
  mv "%(distdirname)s" build
7130
  cd build
7131
  mkdir mkbin
7132
  cd mkbin
7133
  echo $PATH
7134
  echo $SHELL
7135
  cmake -DBUILD_CONFIG=mysql_release -DWITH_READLINE=1 -DWITH_JEMALLOC=no ..
7136
  make -j4 package VERBOSE=1
7137
  ;;
7138
esac
7139
basename mariadb-*.tar.gz .tar.gz > ../../bindistname.txt
7140
mv "$(cat ../../bindistname.txt).tar.gz" ../
7141
"""),
7142
        WithProperties("= scp -P "+port+" "+kvm_scpopt+" 'buildbot@localhost:buildbot/build/mariadb-*.tar.gz' ."),
7143
        "= scp -P "+port+" "+kvm_scpopt+" buildbot@localhost:buildbot/bindistname.txt .",
7144
]))
7145
    bin_fact.addStep(SetPropertyFromCommand(
7146
        property="bindistname",
7147
        command=["cat", "bindistname.txt"],
7148
        ))
7149
    addPackageArchiveStep(bin_fact, '"%(bindistname)s.tar.gz"', "%(tarbuildnum)s")
7150
    bin_fact.addStep(getMTR(
7151
        description=["testing", "bintar"],
7152
        descriptionDone=["test", "bintar"],
7153
        logfiles={"kernel": "kernel_"+port+".log"},
7154
        mtr_subdir=".",    # Where we scp vardir to
7155
        env={"TERM": "vt102"},
7156
        command=["runvm"] + args + ["--base-image=/kvm/vms/"+kvm_image+"-install.qcow2", "vm-tmp-"+port+".qcow2",
7157
        "rm -Rf buildbot && mkdir buildbot",
7158
        WithProperties("= scp -P "+port+" "+kvm_scpopt+" %(bindistname)s.tar.gz buildbot@localhost:buildbot/"),
7159
        WithProperties("""
7160
set -ex
7161
cd buildbot
7162
sudo rm -Rf /usr/local/%(bindistname)s
7163
sudo tar zxf %(bindistname)s.tar.gz -C /usr/local/
7164
cd /usr/local/%(bindistname)s
7165
sudo /usr/sbin/useradd mysql
7166
sudo sudo chown -R mysql .
7167
sudo chgrp -R mysql .
7168
sudo scripts/mysql_install_db --no-defaults --user=mysql
7169
sudo chown -R root .
7170
sudo chown -R mysql data mysql-test
7171
cd mysql-test
7172
sudo su -s /bin/sh -c "perl mysql-test-run.pl  --verbose-restart --force --parallel=4 --retry=3 --mem --max-save-core=0 --max-save-datadir=1" mysql
7173
"""),
7174
        WithProperties("! sudo chmod -R go+rX /usr/local/%(bindistname)s/mysql-test/var/ || :"),
7175
        WithProperties(
7176
              "!= scp -rp -P " + port + " " + kvm_scpopt +
7177
              " buildbot@localhost:/usr/local/%(bindistname)s/mysql-test/var/ . || :")]))
7178
7179
    bin_fact.addStep(getMTR(
7180
        hideStepIf=(lambda results, s: results==SKIPPED),
7181
        doStepIf=(lambda(step): step.getProperty("branch") == "bb-10.2-elenst"),
7182
        description=["testing", "bintar", "on", "build", "VM"],
7183
        descriptionDone=["bintar", "on", "build", "VM"],
7184
        logfiles={"kernel": "kernel_"+port+".log"},
7185
        mtr_subdir=".",    # Where we scp vardir to
7186
        env={"TERM": "vt102"},
7187
        command=["runvm"] + args + ["--base-image=/kvm/vms/"+kvm_image+"-build.qcow2", "vm-tmp-"+port+".qcow2",
7188
        "rm -Rf buildbot && mkdir buildbot",
7189
        WithProperties("= scp -P "+port+" "+kvm_scpopt+" %(bindistname)s.tar.gz buildbot@localhost:buildbot/"),
7190
        WithProperties("""
7191
set -ex
7192
cd buildbot
7193
sudo rm -Rf /usr/local/%(bindistname)s
7194
sudo tar zxf %(bindistname)s.tar.gz -C /usr/local/
7195
cd /usr/local/%(bindistname)s
7196
sudo /usr/sbin/useradd mysql
7197
sudo sudo chown -R mysql .
7198
sudo chgrp -R mysql .
7199
sudo scripts/mysql_install_db --no-defaults --user=mysql
7200
sudo chown -R root .
7201
sudo chown -R mysql data mysql-test
7202
cd mysql-test
7203
sudo su -s /bin/sh -c "perl mysql-test-run.pl  --verbose-restart --force --parallel=4 --retry=3 --mem --max-save-core=0 --max-save-datadir=1" mysql
7204
"""),
7205
        WithProperties("! sudo chmod -R go+rX /usr/local/%(bindistname)s/mysql-test/var/ || :"),
7206
        WithProperties(
7207
              "!= scp -rp -P " + port + " " + kvm_scpopt +
7208
              " buildbot@localhost:/usr/local/%(bindistname)s/mysql-test/var/ . || :")]))
7209
7210
7211
    return {'name': name, 'slavenames': kvm_slaves, 'builddir': name, 'factory': bin_fact,
7212
            "nextBuild": myNextBuild,
7213
            "category": catg }
7214
7215
bld_kvm_freebsd11_x86 = getFreeBSDBuilder("kvm-freebsd11-x86", "vm-freebsd11-i386", "2345", "qemu64", ramdisk=False)
7216
bld_kvm_freebsd11_amd64 = getFreeBSDBuilder("kvm-freebsd11-amd64", "vm-freebsd11-amd64", "2346", "qemu64", ramdisk=False)
7217
7218
7219
7220
7221
7222
#-------------------------------------------------------------------------------
7223
# Solaris amd64 Bintar Builder
7224
#-------------------------------------------------------------------------------
7225
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
7226
f_sol10_64_bintar = factory.BuildFactory()
7227
f_sol10_64_bintar.addStep(FileDownload(mastersrc=WithProperties("%(tarballpath)s"),
385 by Kristian Nielsen
Increase upload block size in an attempt to get better transfer speed.
7228
                                       slavedest=WithProperties("%(distname)s"),
7229
                                       blocksize=524288,
7230
))
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
7231
f_sol10_64_bintar.addStep(ShellCommand(
7232
        description="untarring", descriptionDone="untar",
7233
        command=["sh", "-c", WithProperties("rm -Rf %(distdirname)s && gzip -dc %(distname)s | gtar xf -")]))
159 by Kristian Nielsen
Disable innodb_plugin for solaris, as GCC there does not support it.
7234
f_sol10_64_bintar.addStep(getCompileStep(["sh", "-c", WithProperties("cd %(distdirname)s && BUILD/compile-solaris-amd64 --extra-configs=--without-plugin_innodb_plugin")],
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
7235
                                         subdir="%(distdirname)s/",
159 by Kristian Nielsen
Disable innodb_plugin for solaris, as GCC there does not support it.
7236
                                         logfiles={"config.log" : WithProperties("%(distdirname)s/config.log")},
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
7237
                                         env={"EXTRA_FLAGS": "-DFORCE_INIT_OF_VARS",
7238
                                              "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}))
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
7239
f_sol10_64_bintar.addStep(ShellCommand(
7240
        description="packaging", descriptionDone="package",
7241
        command=["sh", "-c", WithProperties("""
7242
set -ex
7243
cd %(distdirname)s
7244
scripts/make_binary_distribution
7245
ORIG_TAR="`echo mariadb-*.tar.gz`"
7246
ORIG_DIR="`basename ${ORIG_TAR} .tar.gz`"
7247
NEW_DIR="`echo "${ORIG_DIR}" | sed -e 's/-MariaDB//'`"
7248
NEW_TAR="${NEW_DIR}.tar.gz"
147 by Kristian Nielsen
Add package builders for 5.5 tree.
7249
if [ "$ORIG_DIR" != "$NEW_DIR" ] ; then
7250
  rm -Rf $ORIG_DIR
7251
  gtar zxf $ORIG_TAR
7252
  mv $ORIG_DIR "${NEW_DIR}"
7253
  gtar zcf "${NEW_TAR}" "${NEW_DIR}/"
7254
fi
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
7255
echo "${NEW_TAR}" > ../bindistname.txt
7256
""")]))
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
7257
f_sol10_64_bintar.addStep(SetPropertyFromCommand(
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
7258
        property="bindistname",
7259
        command=["cat", "bindistname.txt"],
7260
        ))
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
7261
addPackageArchiveStep(f_sol10_64_bintar, '"%(distdirname)s/%(bindistname)s"', "%(tarbuildnum)s")
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
7262
f_sol10_64_bintar.addStep(getMTR(
7263
        test_type="nm",
7264
        test_info="Normal run, no --ps-protocol",
143 by Kristian Nielsen
Slave naming.
7265
        env={"MTR_FEEDBACK_PLUGIN": "1"},
316 by Daniel Bartholomew
automatic maria-master.cfg commit
7266
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3 ")],
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
7267
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
7268
7269
bld_sol10_64 = {"name": "sol10-64",
7270
                "slavename": "solaris10-x86",
7271
                "builddir": "solaris10-x86",
7272
                "factory": f_sol10_64_bintar,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
7273
                "nextBuild": myNextBuild,
533 by Daniel Bartholomew
automatic maria-master.cfg commit
7274
                "category": "main",
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
7275
                }
7276
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
7277
567 by Daniel Bartholomew
Added sol10-sparc builder. Currently it is just lightly modified duplicate of the sol10-64 builder
7278
7279
7280
#-------------------------------------------------------------------------------
7281
# Solaris Sparc Bintar Builder
7282
#-------------------------------------------------------------------------------
7283
7284
f_sol10_sparc_bintar = factory.BuildFactory()
7285
f_sol10_sparc_bintar.addStep(FileDownload(mastersrc=WithProperties("%(tarballpath)s"),
7286
                                       slavedest=WithProperties("%(distname)s"),
7287
                                       blocksize=524288,
7288
))
7289
f_sol10_sparc_bintar.addStep(ShellCommand(
7290
        description="untarring", descriptionDone="untar",
7291
        command=["sh", "-c", WithProperties("rm -Rf %(distdirname)s && gzip -dc %(distname)s | gtar xf -")]))
575 by Daniel Bartholomew
Modifications to sol10-sparc builder
7292
634 by Sergei Golubchik
fix compilation on sparc
7293
f_sol10_sparc_bintar.addStep(getCompileStep(["sh", "-c",
7294
        WithProperties("cd %(distdirname)s && "
7295
                       "cmake . -L"
7296
                            " -DCMAKE_BUILD_TYPE=Release"
7297
                            " -DCMAKE_C_COMPILER=cc"
7298
                            " -DCMAKE_CXX_COMPILER=CC"
7299
                            " -DCMAKE_C_FLAGS_RELEASE='-DNDEBUG -xtarget=ultra2 -xarch=sparcvis -xO4 -xstrconst -mt'"
7300
                            " -DCMAKE_CXX_FLAGS_RELEASE='-DNDEBUG -xtarget=ultra2 -xarch=sparcvis -xO4 -noex -mt'"
7301
                            " -DCMAKE_INSTALL_PREFIX=/opt/fli/mysql"
7302
                            " -DINSTALL_SBINDIR=sbin "
7303
                            " -DDEFAULT_SYSCONFDIR=/opt/fli/mysql/etc"
7304
                            " -DENABLED_LOCAL_INFILE=1"
7305
                            " -DMYSQL_UNIX_ADDR=/tmp/.mysql.sock"
7306
                            " -DWITH_EXTRA_CHARSETS=complex"
7307
                            " -DWITH_MYSQLD_LDFLAGS=-lmtmalloc"
7308
                       " && gmake -j6 VERBOSE=1")],
567 by Daniel Bartholomew
Added sol10-sparc builder. Currently it is just lightly modified duplicate of the sol10-64 builder
7309
                                         subdir="%(distdirname)s/",
7310
                                         logfiles={"config.log" : WithProperties("%(distdirname)s/config.log")},
634 by Sergei Golubchik
fix compilation on sparc
7311
                                         env={"LDFLAGS": "-s", "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}))
575 by Daniel Bartholomew
Modifications to sol10-sparc builder
7312
7313
#f_sol10_sparc_bintar.addStep(getCompileStep(["sh", "-c", WithProperties("cd %(distdirname)s && BUILD/compile-solaris-sparc --extra-configs=--without-plugin_innodb_plugin")],
7314
#                                         subdir="%(distdirname)s/",
7315
#                                         logfiles={"config.log" : WithProperties("%(distdirname)s/config.log")},
7316
#                                         env={"EXTRA_FLAGS": "-DFORCE_INIT_OF_VARS",
7317
#                                              "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}))
7318
567 by Daniel Bartholomew
Added sol10-sparc builder. Currently it is just lightly modified duplicate of the sol10-64 builder
7319
f_sol10_sparc_bintar.addStep(ShellCommand(
7320
        description="packaging", descriptionDone="package",
7321
        command=["sh", "-c", WithProperties("""
7322
set -ex
7323
cd %(distdirname)s
7324
scripts/make_binary_distribution
7325
ORIG_TAR="`echo mariadb-*.tar.gz`"
7326
ORIG_DIR="`basename ${ORIG_TAR} .tar.gz`"
7327
NEW_DIR="`echo "${ORIG_DIR}" | sed -e 's/-MariaDB//'`"
7328
NEW_TAR="${NEW_DIR}.tar.gz"
7329
if [ "$ORIG_DIR" != "$NEW_DIR" ] ; then
7330
  rm -Rf $ORIG_DIR
7331
  gtar zxf $ORIG_TAR
7332
  mv $ORIG_DIR "${NEW_DIR}"
7333
  gtar zcf "${NEW_TAR}" "${NEW_DIR}/"
7334
fi
7335
echo "${NEW_TAR}" > ../bindistname.txt
7336
""")]))
7337
f_sol10_sparc_bintar.addStep(SetPropertyFromCommand(
7338
        property="bindistname",
7339
        command=["cat", "bindistname.txt"],
7340
        ))
7341
addPackageArchiveStep(f_sol10_sparc_bintar, '"%(distdirname)s/%(bindistname)s"', "%(tarbuildnum)s")
7342
f_sol10_sparc_bintar.addStep(getMTR(
7343
        test_type="nm",
7344
        test_info="Normal run, no --ps-protocol",
7345
        env={"MTR_FEEDBACK_PLUGIN": "1"},
7346
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3 ")],
7347
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
7348
7349
bld_sol10_sparc = {"name": "sol10-sparc",
7350
                "slavename": "solaris-sparc",
7351
                "builddir": "solaris-sparc",
7352
                "factory": f_sol10_sparc_bintar,
7353
                "nextBuild": myNextBuild,
654 by Daniel Bartholomew
automatic maria-master.cfg commit
7354
                "category": "experimental",
567 by Daniel Bartholomew
Added sol10-sparc builder. Currently it is just lightly modified duplicate of the sol10-64 builder
7355
                }
7356
7357
721 by Daniel Bartholomew
automatic maria-master.cfg commit
7358
#-------------------------------------------------------------------------------
7359
# Labrador Mac Builder
7360
#-------------------------------------------------------------------------------
7361
# mac mini server 8GB, 10.7
7362
7363
#test_labrador = getMTR(
7364
#    test_type="nm",
7365
#    test_info="Normal run, no --ps-protocol",
7366
#    env={"MTR_FEEDBACK_PLUGIN": "1",
7367
#         "LC_ALL": "en_GB.UTF-8"},
7368
#    command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3  --max-save-core=0 --max-save-datadir=1"])
7369
7370
f_dbg_labrador = factory.BuildFactory()
7371
f_dbg_labrador.addStep(maybe_bzr_checkout)
7372
f_dbg_labrador.addStep(maybe_git_checkout)
7373
f_dbg_labrador.addStep(
7374
     getCompileStep(["sh", "-c", "cmake . -DBUILD_CONFIG=mysql_release -DWITH_SSL=yes -DWITH_JEMALLOC=no && make -j4 package"],
7375
     env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
7376
          "CXX": "g++",
7377
          "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"},
7378
     doStepIf=branch_is_5_5_or_later)
7379
)
7380
7381
f_dbg_labrador.addStep(SetPropertyFromCommand(
7382
    property="bindistname",
7383
    command=["sh", "-c", WithProperties("basename `ls mariadb*tar.gz`")],
7384
    ))
7385
7386
f_dbg_labrador.addStep(SetPropertyFromCommand(
7387
    property="distdirname",
7388
    command=["sh", "-c", WithProperties("pwd")],
7389
    ))
7390
7391
addPackageUploadStep(f_dbg_labrador, '"%(bindistname)s"')
7392
7393
f_dbg_labrador.addStep(test_mac)
7394
7395
bld_labrador = {"name": "labrador",
7396
                 "slavename": "labrador",
7397
                 "builddir": "labrador",
7398
                 "factory": f_dbg_labrador,
7399
                 "nextBuild": myNextBuild,
7400
                 "category": "main",
7401
                 }
7402
753 by Daniel Bartholomew
automatic maria-master.cfg commit
7403
#-------------------------------------------------------------------------------
7404
# dbart Mac Builder
7405
#-------------------------------------------------------------------------------
7406
# Mac Mini, MacOS 10.12
7407
7408
f_mac_1012_bintar = factory.BuildFactory()
7409
f_mac_1012_bintar.addStep(maybe_bzr_checkout)
7410
f_mac_1012_bintar.addStep(maybe_git_checkout)
7411
f_mac_1012_bintar.addStep(
757 by Daniel Bartholomew
automatic maria-master.cfg commit
7412
     getCompileStep(["sh", "-c", "cmake . -DBUILD_CONFIG=mysql_release -DWITH_SSL=yes -DTOKUDB_OK=0 -DWITH_JEMALLOC=no && make -j4 package"],
753 by Daniel Bartholomew
automatic maria-master.cfg commit
7413
     env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
7414
          "CXX": "g++",
7415
          "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"},
7416
     doStepIf=branch_is_5_5_or_later)
7417
)
7418
7419
f_mac_1012_bintar.addStep(SetPropertyFromCommand(
7420
    property="bindistname",
7421
    command=["sh", "-c", WithProperties("basename `ls mariadb*tar.gz`")],
7422
    ))
7423
7424
f_mac_1012_bintar.addStep(SetPropertyFromCommand(
7425
    property="distdirname",
7426
    command=["sh", "-c", WithProperties("pwd")],
7427
    ))
7428
7429
addPackageUploadStep(f_mac_1012_bintar, '"%(bindistname)s"')
7430
7431
f_mac_1012_bintar.addStep(test_mac)
7432
7433
bld_mac_1012_bintar = {"name": "mac-1012-bintar",
7434
                 "slavename": "db-mac-1012",
7435
                 "builddir": "mac-1012-bintar",
7436
                 "factory": f_mac_1012_bintar,
7437
                 "nextBuild": myNextBuild,
755 by Daniel Bartholomew
automatic maria-master.cfg commit
7438
                 "category": "experimental",
753 by Daniel Bartholomew
automatic maria-master.cfg commit
7439
                 }
574 by Daniel Bartholomew
Add initial IBM System Z builders
7440
7441
#-------------------------------------------------------------------------------
7442
# IBM System Z RHEL6 Bintar Builder
7443
#-------------------------------------------------------------------------------
7444
f_ibmz_rhel6_bintar = factory.BuildFactory()
7445
f_ibmz_rhel6_bintar.addStep(maybe_bzr_checkout)
7446
f_ibmz_rhel6_bintar.addStep(maybe_git_checkout)
7447
f_ibmz_rhel6_bintar.addStep(
610 by Daniel Bartholomew
automatic maria-master.cfg commit
7448
    getCompileStep(["sh", "-c", "git clean -dfX && cmake . -DBUILD_CONFIG=mysql_release -DWITH_SSL=system -DWITHOUT_CONNECT=ON -DWITH_WSREP=no -DWITH_JEMALLOC=no && make -j4 package"],
574 by Daniel Bartholomew
Add initial IBM System Z builders
7449
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
7450
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
7451
)
7452
7453
f_ibmz_rhel6_bintar.addStep(SetPropertyFromCommand(
7454
        property="bindistname",
7455
        command=["sh", "-c", WithProperties("basename `ls mariadb*tar.gz`")],
7456
        ))
7457
7458
f_ibmz_rhel6_bintar.addStep(SetPropertyFromCommand(
7459
        property="distdirname",
7460
        command=["sh", "-c", WithProperties("pwd")],
7461
        ))
7462
7463
addPackageUploadStep(f_ibmz_rhel6_bintar, '"%(bindistname)s"')
7464
7465
f_ibmz_rhel6_bintar.addStep(getMTR(
7466
        test_type="nm",
7467
        test_info="Normal run, no --ps-protocol",
7468
        env={"MTR_FEEDBACK_PLUGIN": "1"},
7469
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --parallel=4 ")],
7470
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
7471
7472
f_ibmz_rhel6_bintar.addStep(getMTR(
7473
        test_type="xtra-big",
7474
        test_info="Some additional test suites, with --big",
7475
        env={"MTR_FEEDBACK_PLUGIN": "1"},
7476
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
7477
                       "--verbose-restart --force --parallel=4  " +
7478
                       "--suite=funcs_1,funcs_2,stress,jp --big " +
7479
                       "--testcase-timeout=45")],
7480
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
7481
7482
f_ibmz_rhel6_bintar.addStep(RemoveDirectory(
7483
    name="remove_build", 
7484
    dir=WithProperties("%(distdirname)s"),
7485
    alwaysRun=True));
7486
7487
bld_ibmz_rhel6_bintar = {"name": "ibmz-rhel6-bintar",
7488
                "slavename": "ibmz-rhel6",
7489
                "builddir": "ibmz-rhel6-bintar",
7490
                "factory": f_ibmz_rhel6_bintar,
7491
                "nextBuild": myNextBuild,
580 by Daniel Bartholomew
Moved IBM System Z builders to experimental category
7492
                "category": "experimental",
574 by Daniel Bartholomew
Add initial IBM System Z builders
7493
                }
7494
7495
7496
7497
#-------------------------------------------------------------------------------
7498
# IBM System Z RHEL 6 RPM Builder
7499
#-------------------------------------------------------------------------------
7500
f_ibmz_rhel6_rpm = factory.BuildFactory()
7501
f_ibmz_rhel6_rpm.addStep(maybe_bzr_checkout)
7502
f_ibmz_rhel6_rpm.addStep(maybe_git_checkout)
7503
f_ibmz_rhel6_rpm.addStep(
610 by Daniel Bartholomew
automatic maria-master.cfg commit
7504
    getCompileStep(["sh", "-c", "git clean -dfX && export PATH=/opt/at7.0/bin:$PATH && cmake . -DBUILD_CONFIG=mysql_release -DWITH_WSREP=no -DWITH_JEMALLOC=no -DRPM=rhel6 && make -j4 package VERBOSE=1"],
574 by Daniel Bartholomew
Add initial IBM System Z builders
7505
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
7506
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
7507
)
7508
7509
f_ibmz_rhel6_rpm.addStep(SetPropertyFromCommand(
7510
        property="distdirname",
7511
        command=["sh", "-c", WithProperties("pwd")],
7512
        ))
7513
7514
f_ibmz_rhel6_rpm.addStep(ShellCommand(
7515
    description=["archiving"],
7516
    descriptionDone=["archive"],
7517
    command=["sh", "-c", WithProperties("""
7518
set -ex
7519
rm -Rf rpms
7520
mkdir -p rpms
7521
""" + 'cp -rp *.rpm rpms/\n' + """
7522
cd rpms
7523
find . -type f \! -name md5sums.txt|xargs md5sum > md5sums.txt
7524
""")]))
7525
7526
addPackageUploadStep(f_ibmz_rhel6_rpm, 'rpms')
7527
7528
f_ibmz_rhel6_rpm.addStep(RemoveDirectory(
7529
        name="remove_build", 
7530
        dir=WithProperties("%(distdirname)s"),
7531
        alwaysRun=True));
7532
7533
bld_ibmz_rhel6_rpm = {"name": "ibmz-rhel6-rpm",
7534
                "slavename": "ibmz-rhel6",
7535
                "builddir": "ibmz-rhel6-rpm",
7536
                "factory": f_ibmz_rhel6_rpm,
7537
                "nextBuild": myNextBuild,
580 by Daniel Bartholomew
Moved IBM System Z builders to experimental category
7538
                "category": "experimental",
574 by Daniel Bartholomew
Add initial IBM System Z builders
7539
                }
7540
7541
7542
7543
#-------------------------------------------------------------------------------
7544
# IBM System Z SLES11 Bintar Builder
7545
#-------------------------------------------------------------------------------
7546
f_ibmz_sles11_bintar = factory.BuildFactory()
7547
f_ibmz_sles11_bintar.addStep(maybe_bzr_checkout)
7548
f_ibmz_sles11_bintar.addStep(maybe_git_checkout)
7549
f_ibmz_sles11_bintar.addStep(
610 by Daniel Bartholomew
automatic maria-master.cfg commit
7550
    getCompileStep(["sh", "-c", "git clean -dfX && cmake . -DBUILD_CONFIG=mysql_release -DWITH_SSL=system -DWITHOUT_CONNECT=ON -DWITH_WSREP=no -DWITH_JEMALLOC=no && make -j4 package"],
574 by Daniel Bartholomew
Add initial IBM System Z builders
7551
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
7552
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
7553
)
7554
7555
f_ibmz_sles11_bintar.addStep(SetPropertyFromCommand(
7556
        property="bindistname",
7557
        command=["sh", "-c", WithProperties("basename `ls mariadb*tar.gz`")],
7558
        ))
7559
7560
f_ibmz_sles11_bintar.addStep(SetPropertyFromCommand(
7561
        property="distdirname",
7562
        command=["sh", "-c", WithProperties("pwd")],
7563
        ))
7564
7565
addPackageUploadStep(f_ibmz_sles11_bintar, '"%(bindistname)s"')
7566
7567
f_ibmz_sles11_bintar.addStep(getMTR(
7568
        test_type="nm",
7569
        test_info="Normal run, no --ps-protocol",
7570
        env={"MTR_FEEDBACK_PLUGIN": "1"},
7571
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --parallel=4 ")],
7572
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
7573
7574
f_ibmz_sles11_bintar.addStep(getMTR(
7575
        test_type="xtra-big",
7576
        test_info="Some additional test suites, with --big",
7577
        env={"MTR_FEEDBACK_PLUGIN": "1"},
7578
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
7579
                       "--verbose-restart --force --parallel=4  " +
7580
                       "--suite=funcs_1,funcs_2,stress,jp --big " +
7581
                       "--testcase-timeout=45")],
7582
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
7583
7584
f_ibmz_sles11_bintar.addStep(RemoveDirectory(
7585
    name="remove_build", 
7586
    dir=WithProperties("%(distdirname)s"),
7587
    alwaysRun=True));
7588
7589
bld_ibmz_sles11_bintar = {"name": "ibmz-sles11-bintar",
7590
                "slavename": "ibmz-sles11",
7591
                "builddir": "ibmz-sles11-bintar",
7592
                "factory": f_ibmz_sles11_bintar,
7593
                "nextBuild": myNextBuild,
580 by Daniel Bartholomew
Moved IBM System Z builders to experimental category
7594
                "category": "experimental",
574 by Daniel Bartholomew
Add initial IBM System Z builders
7595
                }
7596
7597
7598
7599
#-------------------------------------------------------------------------------
7600
# IBM System Z SLES 11 RPM Builder
7601
#-------------------------------------------------------------------------------
7602
f_ibmz_sles11_rpm = factory.BuildFactory()
7603
f_ibmz_sles11_rpm.addStep(maybe_bzr_checkout)
7604
f_ibmz_sles11_rpm.addStep(maybe_git_checkout)
7605
f_ibmz_sles11_rpm.addStep(
610 by Daniel Bartholomew
automatic maria-master.cfg commit
7606
    getCompileStep(["sh", "-c", "git clean -dfX && export PATH=/opt/at7.0/bin:$PATH && cmake . -DBUILD_CONFIG=mysql_release -DWITH_WSREP=no -DWITH_JEMALLOC=no -DRPM=sles11 && make -j4 package VERBOSE=1"],
574 by Daniel Bartholomew
Add initial IBM System Z builders
7607
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
7608
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
7609
)
7610
7611
f_ibmz_sles11_rpm.addStep(SetPropertyFromCommand(
7612
        property="distdirname",
7613
        command=["sh", "-c", WithProperties("pwd")],
7614
        ))
7615
7616
f_ibmz_sles11_rpm.addStep(ShellCommand(
7617
    description=["archiving"],
7618
    descriptionDone=["archive"],
7619
    command=["sh", "-c", WithProperties("""
7620
set -ex
7621
rm -Rf rpms
7622
mkdir -p rpms
7623
""" + 'cp -rp *.rpm rpms/\n' + """
7624
cd rpms
7625
find . -type f \! -name md5sums.txt|xargs md5sum > md5sums.txt
7626
""")]))
7627
7628
addPackageUploadStep(f_ibmz_sles11_rpm, 'rpms')
7629
7630
f_ibmz_sles11_rpm.addStep(RemoveDirectory(
7631
        name="remove_build", 
7632
        dir=WithProperties("%(distdirname)s"),
7633
        alwaysRun=True));
7634
7635
bld_ibmz_sles11_rpm = {"name": "ibmz-sles11-rpm",
7636
                "slavename": "ibmz-sles11",
7637
                "builddir": "ibmz-sles11-rpm",
7638
                "factory": f_ibmz_sles11_rpm,
7639
                "nextBuild": myNextBuild,
580 by Daniel Bartholomew
Moved IBM System Z builders to experimental category
7640
                "category": "experimental",
574 by Daniel Bartholomew
Add initial IBM System Z builders
7641
                }
7642
7643
7644
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
7645
#-------------------------------------------------------------------------------
397 by Daniel Bartholomew
automatic maria-master.cfg commit
7646
# RHEL 6 P8 ppc64 Bintar Builder
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
7647
#-------------------------------------------------------------------------------
265 by Daniel Bartholomew
Add Power8 builder to buildbot
7648
f_p8_rhel6_bintar = factory.BuildFactory()
7649
f_p8_rhel6_bintar.addStep(maybe_bzr_checkout)
7650
f_p8_rhel6_bintar.addStep(maybe_git_checkout)
905 by Daniel Bartholomew
automatic maria-master.cfg commit
7651
7652
f_p8_rhel6_bintar.addStep(SetPropertyFromCommand(
7653
        property="distdirname",
7654
        command=["sh", "-c", WithProperties("pwd")],
7655
        alwaysRun=True))
7656
265 by Daniel Bartholomew
Add Power8 builder to buildbot
7657
f_p8_rhel6_bintar.addStep(
530 by Daniel Bartholomew
automatic maria-master.cfg commit
7658
    getCompileStep(["sh", "-c", "git clean -dfX && export PATH=/opt/at7.0/bin:$PATH && cmake . -DBUILD_CONFIG=mysql_release -DWITH_SSL=system -DWITHOUT_CONNECT=ON -DWITH_JEMALLOC=yes && make -j4 package"],
265 by Daniel Bartholomew
Add Power8 builder to buildbot
7659
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
283 by Daniel Bartholomew
comment out -mminimal-toc line for bintar-trusty-p8 and bintar-rhel6-p8 builders
7660
#        "CXX": "g++ -mminimal-toc",
358 by Sergei Golubchik
buildbot: remove unused or useless doStepIf filters.
7661
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
265 by Daniel Bartholomew
Add Power8 builder to buildbot
7662
)
7663
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
7664
f_p8_rhel6_bintar.addStep(SetPropertyFromCommand(
265 by Daniel Bartholomew
Add Power8 builder to buildbot
7665
        property="bindistname",
270 by Daniel Bartholomew
Added function so power8 builder can upload to hasky. Other changes to the p8
7666
        command=["sh", "-c", WithProperties("basename `ls mariadb*tar.gz`")],
7667
        ))
7668
285 by Daniel Bartholomew
automatic maria-master.cfg commit
7669
addPackageUploadStep(f_p8_rhel6_bintar, '"%(bindistname)s"')
270 by Daniel Bartholomew
Added function so power8 builder can upload to hasky. Other changes to the p8
7670
285 by Daniel Bartholomew
automatic maria-master.cfg commit
7671
## If needed, here is a step that archives builds locally under
7672
## /opt/buildbot/builds/:
7673
#f_p8_rhel6_bintar.addStep(ShellCommand(
7674
#        description=["archiving"],
7675
#        descriptionDone=["archive"],
430 by Sergei Golubchik
support for wildcards in savedPackageBranches
7676
#        doStepIf=in_savedPackageBranches,
285 by Daniel Bartholomew
automatic maria-master.cfg commit
7677
#        command=["sh", "-c", WithProperties("""
7678
#set -ex
7679
#rm -Rf "./%(revision)s"
7680
#mkdir -p "%(revision)s"
7681
#chmod 755 "%(revision)s"
7682
#""" + 'cp -rp ' + '"%(bindistname)s"' + ' "%(revision)s/"\n' + """
7683
#cd "%(revision)s"
7684
#find . -type f \! -name md5sums.txt|xargs md5sum > md5sums.txt
7685
#find . -type f|xargs chmod 644
7686
#cd ..
7687
#if [ ! -e "/opt/buildbot/%(branch)s/%(revision)s/%(buildername)s" ]
7688
#then
7689
#mkdir -p "/opt/buildbot/builds/%(branch)s/%(revision)s/%(buildername)s"
7690
#fi
7691
#rsync -a %(revision)s/ /opt/buildbot/builds/%(branch)s/%(revision)s/%(buildername)s/
7692
#""")]))
265 by Daniel Bartholomew
Add Power8 builder to buildbot
7693
847 by Daniel Bartholomew
automatic maria-master.cfg commit
7694
f_p8_rhel6_bintar.addStep(ShellCommand(
7695
    name="cleanup",
7696
    description=["cleanup"],
7697
    descriptionDone=["cleanup"],
7698
    command=["sh", "-c", "rm -rf /dev/shm/var_*"]))
7699
265 by Daniel Bartholomew
Add Power8 builder to buildbot
7700
f_p8_rhel6_bintar.addStep(getMTR(
7701
        test_type="nm",
7702
        test_info="Normal run, no --ps-protocol",
7703
        env={"MTR_FEEDBACK_PLUGIN": "1"},
847 by Daniel Bartholomew
automatic maria-master.cfg commit
7704
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --parallel=4 --mem ")],
265 by Daniel Bartholomew
Add Power8 builder to buildbot
7705
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
7706
299 by Daniel Bartholomew
automatic maria-master.cfg commit
7707
532 by Daniel Bartholomew
automatic maria-master.cfg commit
7708
## Here and for other p8 builders, commented as requested in MDEV-7439
530 by Daniel Bartholomew
automatic maria-master.cfg commit
7709
#f_p8_rhel6_bintar.addStep(getMTR(
7710
#        test_type="xtra",
7711
#        test_info="Some additional test suites",
7712
#        env={"MTR_FEEDBACK_PLUGIN": "1"},
7713
#        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
7714
#                       "--verbose-restart --force --parallel=4  " +
7715
#                       "--suite=funcs_1,funcs_2,stress,jp ")],
7716
#                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
299 by Daniel Bartholomew
automatic maria-master.cfg commit
7717
7718
f_p8_rhel6_bintar.addStep(getMTR(
7719
        test_type="xtra-big",
7720
        test_info="Some additional test suites, with --big",
7721
        env={"MTR_FEEDBACK_PLUGIN": "1"},
7722
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
595 by Daniel Bartholomew
automatic maria-master.cfg commit
7723
                       "--verbose-restart --force --parallel=4 " +
847 by Daniel Bartholomew
automatic maria-master.cfg commit
7724
                       "--suite=funcs_1,funcs_2,stress,jp --big --mem " +
299 by Daniel Bartholomew
automatic maria-master.cfg commit
7725
                       "--testcase-timeout=45")],
7726
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
7727
530 by Daniel Bartholomew
automatic maria-master.cfg commit
7728
f_p8_rhel6_bintar.addStep(RemoveDirectory(
7729
	name="remove_build", 
7730
	dir=WithProperties("%(distdirname)s"),
7731
	alwaysRun=True));
7732
299 by Daniel Bartholomew
automatic maria-master.cfg commit
7733
356 by Daniel Bartholomew
automatic maria-master.cfg commit
7734
bld_p8_rhel6_bintar = {"name": "p8-rhel6-bintar",
682 by Daniel Bartholomew
automatic maria-master.cfg commit
7735
#                "slavename": "power8-vlp01",
7736
                "slavenames": ["power8-vlp01", "p8-rhel6-bb"],
7737
                "builddir": "p8-rhel6-bintar",
265 by Daniel Bartholomew
Add Power8 builder to buildbot
7738
                "factory": f_p8_rhel6_bintar,
7739
                "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
7740
                "category": "main",
265 by Daniel Bartholomew
Add Power8 builder to buildbot
7741
                }
7742
7743
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
7744
#-------------------------------------------------------------------------------
397 by Daniel Bartholomew
automatic maria-master.cfg commit
7745
# RHEL 6 P8 ppc64 Bintar Debug Builder
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
7746
#-------------------------------------------------------------------------------
288 by Daniel Bartholomew
Added p8 debug builders for rhel6 and Ubuntu trusty
7747
f_p8_rhel6_bintar_debug = factory.BuildFactory()
7748
f_p8_rhel6_bintar_debug.addStep(maybe_bzr_checkout)
7749
f_p8_rhel6_bintar_debug.addStep(maybe_git_checkout)
612 by Daniel Bartholomew
automatic maria-master.cfg commit
7750
905 by Daniel Bartholomew
automatic maria-master.cfg commit
7751
f_p8_rhel6_bintar_debug.addStep(SetPropertyFromCommand(
7752
        property="distdirname",
7753
        command=["sh", "-c", WithProperties("pwd")],
7754
        alwaysRun=True))
7755
612 by Daniel Bartholomew
automatic maria-master.cfg commit
7756
f_p8_rhel6_bintar_debug.addStep(ShellCommand(
7757
    description=["diskspace", "before", "build"],
7758
    descriptionDone=["diskspace", "before", "build"],
7759
    command=["sh", "-c", WithProperties("""df -k""")]))
7760
288 by Daniel Bartholomew
Added p8 debug builders for rhel6 and Ubuntu trusty
7761
f_p8_rhel6_bintar_debug.addStep(
289 by Daniel Bartholomew
automatic maria-master.cfg commit
7762
#    getCompileStep(["sh", "-c", "export PATH=/opt/at7.0/bin:$PATH && BUILD/compile-ppc-debug-max"],
530 by Daniel Bartholomew
automatic maria-master.cfg commit
7763
    getCompileStep(["sh", "-c", "git clean -dfX && export PATH=/opt/at7.0/bin:$PATH && cmake . -DCMAKE_BUILD_TYPE=Debug -DMYSQL_MAINTAINER_MODE=ON -DWITHOUT_CONNECT=ON && make -j4 package"],
288 by Daniel Bartholomew
Added p8 debug builders for rhel6 and Ubuntu trusty
7764
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
7765
        "EXTRA_CONFIGS": "--with-embedded-privilege-control",
358 by Sergei Golubchik
buildbot: remove unused or useless doStepIf filters.
7766
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
288 by Daniel Bartholomew
Added p8 debug builders for rhel6 and Ubuntu trusty
7767
)
7768
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
7769
f_p8_rhel6_bintar_debug.addStep(SetPropertyFromCommand(
288 by Daniel Bartholomew
Added p8 debug builders for rhel6 and Ubuntu trusty
7770
        property="bindistname",
7771
        command=["sh", "-c", WithProperties("basename `ls mariadb*tar.gz`")],
7772
        ))
7773
7774
addPackageUploadStep(f_p8_rhel6_bintar_debug, '"%(bindistname)s"')
7775
612 by Daniel Bartholomew
automatic maria-master.cfg commit
7776
f_p8_rhel6_bintar_debug.addStep(ShellCommand(
7777
    description=["diskspace", "before", "test"],
7778
    descriptionDone=["diskspace", "before", "test"],
7779
    command=["sh", "-c", WithProperties("""df -k""")]))
7780
846 by Daniel Bartholomew
automatic maria-master.cfg commit
7781
f_p8_rhel6_bintar_debug.addStep(ShellCommand(
7782
    name="cleanup",
7783
    description=["cleanup"],
7784
    descriptionDone=["cleanup"],
7785
    command=["sh", "-c", "rm -rf /dev/shm/var_*"]))
7786
288 by Daniel Bartholomew
Added p8 debug builders for rhel6 and Ubuntu trusty
7787
f_p8_rhel6_bintar_debug.addStep(getMTR(
7788
        test_type="nm",
7789
        test_info="Normal run, no --ps-protocol",
7790
        env={"MTR_FEEDBACK_PLUGIN": "1"},
846 by Daniel Bartholomew
automatic maria-master.cfg commit
7791
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --parallel=4 --mem ")],
288 by Daniel Bartholomew
Added p8 debug builders for rhel6 and Ubuntu trusty
7792
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
7793
530 by Daniel Bartholomew
automatic maria-master.cfg commit
7794
#f_p8_rhel6_bintar_debug.addStep(getMTR(
7795
#        test_type="xtra",
7796
#        test_info="Some additional test suites",
7797
#        env={"MTR_FEEDBACK_PLUGIN": "1"},
7798
#        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
7799
#                       "--verbose-restart --force --parallel=4  " +
7800
#                       "--suite=funcs_1,funcs_2,stress,jp ")],
7801
#                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
300 by Daniel Bartholomew
automatic maria-master.cfg commit
7802
7803
f_p8_rhel6_bintar_debug.addStep(getMTR(
7804
        test_type="xtra-big",
7805
        test_info="Some additional test suites, with --big",
7806
        env={"MTR_FEEDBACK_PLUGIN": "1"},
7807
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
316 by Daniel Bartholomew
automatic maria-master.cfg commit
7808
                       "--verbose-restart --force --parallel=4  " +
846 by Daniel Bartholomew
automatic maria-master.cfg commit
7809
                       "--suite=funcs_1,funcs_2,stress,jp --big --mem " +
300 by Daniel Bartholomew
automatic maria-master.cfg commit
7810
                       "--testcase-timeout=45")],
7811
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
7812
612 by Daniel Bartholomew
automatic maria-master.cfg commit
7813
f_p8_rhel6_bintar_debug.addStep(ShellCommand(
7814
    description=["diskspace", "after", "test"],
7815
    descriptionDone=["diskspace", "after", "test"],
7816
    command=["sh", "-c", WithProperties("""df -k""")],
7817
    alwaysRun=True))
7818
7819
530 by Daniel Bartholomew
automatic maria-master.cfg commit
7820
f_p8_rhel6_bintar_debug.addStep(RemoveDirectory(
7821
        name="remove_build", 
7822
        dir=WithProperties("%(distdirname)s"),
7823
        alwaysRun=True));
7824
356 by Daniel Bartholomew
automatic maria-master.cfg commit
7825
bld_p8_rhel6_bintar_debug = {"name": "p8-rhel6-bintar-debug",
682 by Daniel Bartholomew
automatic maria-master.cfg commit
7826
#                "slavename": "power8-vlp01",
7827
                "slavenames": ["power8-vlp01", "p8-rhel6-bb"],
7828
                "builddir": "p8-rhel6-bintar-debug",
288 by Daniel Bartholomew
Added p8 debug builders for rhel6 and Ubuntu trusty
7829
                "factory": f_p8_rhel6_bintar_debug,
7830
                "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
7831
                "category": "main",
288 by Daniel Bartholomew
Added p8 debug builders for rhel6 and Ubuntu trusty
7832
                }
7833
7834
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
7835
#-------------------------------------------------------------------------------
397 by Daniel Bartholomew
automatic maria-master.cfg commit
7836
# RHEL 6 P8 ppc64 RPM Builder
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
7837
#-------------------------------------------------------------------------------
7838
f_p8_rhel6_rpm = factory.BuildFactory()
7839
f_p8_rhel6_rpm.addStep(maybe_bzr_checkout)
7840
f_p8_rhel6_rpm.addStep(maybe_git_checkout)
905 by Daniel Bartholomew
automatic maria-master.cfg commit
7841
7842
f_p8_rhel6_rpm.addStep(SetPropertyFromCommand(
7843
        property="distdirname",
7844
        command=["sh", "-c", WithProperties("pwd")],
7845
        alwaysRun=True))
7846
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
7847
f_p8_rhel6_rpm.addStep(
530 by Daniel Bartholomew
automatic maria-master.cfg commit
7848
    getCompileStep(["sh", "-c", "git clean -dfX && export PATH=/opt/at7.0/bin:$PATH && cmake . -DBUILD_CONFIG=mysql_release -DWITH_JEMALLOC=yes -DRPM=rhel6 && make -j4 package VERBOSE=1"],
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
7849
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
358 by Sergei Golubchik
buildbot: remove unused or useless doStepIf filters.
7850
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
7851
)
7852
348 by Daniel Bartholomew
Fix for uploading P8 rpm packages
7853
f_p8_rhel6_rpm.addStep(ShellCommand(
7854
    description=["archiving"],
7855
    descriptionDone=["archive"],
7856
    command=["sh", "-c", WithProperties("""
7857
set -ex
7858
rm -Rf rpms
7859
mkdir -p rpms
7860
""" + 'cp -rp *.rpm rpms/\n' + """
7861
cd rpms
7862
find . -type f \! -name md5sums.txt|xargs md5sum > md5sums.txt
7863
""")]))
347 by Daniel Bartholomew
automatic maria-master.cfg commit
7864
348 by Daniel Bartholomew
Fix for uploading P8 rpm packages
7865
addPackageUploadStep(f_p8_rhel6_rpm, 'rpms')
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
7866
530 by Daniel Bartholomew
automatic maria-master.cfg commit
7867
f_p8_rhel6_rpm.addStep(RemoveDirectory(
7868
        name="remove_build", 
7869
        dir=WithProperties("%(distdirname)s"),
7870
        alwaysRun=True));
7871
356 by Daniel Bartholomew
automatic maria-master.cfg commit
7872
bld_p8_rhel6_rpm = {"name": "p8-rhel6-rpm",
682 by Daniel Bartholomew
automatic maria-master.cfg commit
7873
#                "slavename": "power8-vlp01",
7874
                "slavenames": ["power8-vlp01", "p8-rhel6-bb"],
7875
                "builddir": "p8-rhel6-rpm",
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
7876
                "factory": f_p8_rhel6_rpm,
7877
                "nextBuild": myNextBuild,
533 by Daniel Bartholomew
automatic maria-master.cfg commit
7878
                "category": "main",
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
7879
                }
7880
7881
7882
#-------------------------------------------------------------------------------
625 by Daniel Bartholomew
automatic maria-master.cfg commit
7883
# RHEL 6 P8 ppc64 RPM Builder for Galera
7884
#-------------------------------------------------------------------------------
7885
7886
f_p8_rhel6_rpm_gal = factory.BuildFactory()
7887
905 by Daniel Bartholomew
automatic maria-master.cfg commit
7888
f_p8_rhel6_rpm_gal.addStep(SetPropertyFromCommand(
7889
        property="distdirname",
7890
        command=["sh", "-c", WithProperties("pwd")],
7891
        alwaysRun=True))
7892
625 by Daniel Bartholomew
automatic maria-master.cfg commit
7893
f_p8_rhel6_rpm_gal.addStep(Compile(
7894
        description=["making", "rpms"],
7895
        descriptionDone=["make", "rpms"],
7896
        timeout=7200,
7897
        warningPattern=gccWarningPattern,
7898
        warningExtractor=Compile.warnExtractFromRegexpGroups,
7899
        suppressionFile=WithProperties("compiler_warnings.supp"),
7900
        env={"TERM": "vt102"},
7901
        command=["sh", "-c", WithProperties("""
7902
set -ex
7903
rm -Rf rpms build
7904
mkdir rpms
7905
git clone -b %(branch)s "https://github.com/MariaDB/galera.git" build
7906
cd build
7907
export PATH=/opt/at7.0/bin:$PATH
7908
./scripts/build.sh -p
7909
cp `find *.rpm -maxdepth 1 -type f` ../rpms
7910
cd ..
7911
        """),
7912
        ]))
7913
7914
f_p8_rhel6_rpm_gal.addStep(ShellCommand(
7915
        description=["archiving"],
7916
        descriptionDone=["archive"],
7917
        command=["sh", "-c", WithProperties("""
7918
set -ex
7919
cd rpms
7920
find . -type f \! -name md5sums.txt|xargs md5sum > md5sums.txt
7921
""")]))
7922
7923
addPackageUploadStep(f_p8_rhel6_rpm_gal, 'rpms')
7924
7925
f_p8_rhel6_rpm_gal.addStep(RemoveDirectory(
7926
        name="remove_build", 
7927
        dir=WithProperties("%(distdirname)s"),
7928
        alwaysRun=True));
7929
7930
gal_bld_p8_rhel6_rpm = {"name": "p8-rhel6-rpm-gal",
682 by Daniel Bartholomew
automatic maria-master.cfg commit
7931
#                "slavename": "power8-vlp01",
7932
                "slavenames": ["power8-vlp01", "p8-rhel6-bb"],
7933
                "builddir": "p8-rhel6-rpm-gal",
625 by Daniel Bartholomew
automatic maria-master.cfg commit
7934
                "factory": f_p8_rhel6_rpm_gal,
7935
                "nextBuild": myNextBuild,
7936
                "category": "galera",
7937
                }
7938
7939
#-------------------------------------------------------------------------------
397 by Daniel Bartholomew
automatic maria-master.cfg commit
7940
# Ubuntu Trusty P8 ppc64le Bintar Builder
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
7941
#-------------------------------------------------------------------------------
282 by Daniel Bartholomew
add bintar-trusty-p8 builder
7942
f_p8_trusty_bintar = factory.BuildFactory()
7943
f_p8_trusty_bintar.addStep(maybe_bzr_checkout)
7944
f_p8_trusty_bintar.addStep(maybe_git_checkout)
905 by Daniel Bartholomew
automatic maria-master.cfg commit
7945
7946
f_p8_trusty_bintar.addStep(SetPropertyFromCommand(
7947
        property="distdirname",
7948
        command=["sh", "-c", WithProperties("pwd")],
7949
        alwaysRun=True))
7950
282 by Daniel Bartholomew
add bintar-trusty-p8 builder
7951
f_p8_trusty_bintar.addStep(
726 by Daniel Bartholomew
automatic maria-master.cfg commit
7952
    getCompileStep(["sh", "-c", "git clean -dfX && export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-ppc64el && export PATH=/opt/at8.0/bin:$PATH && cmake . -DBUILD_CONFIG=mysql_release -DWITHOUT_OQGRAPH=ON -DWITH_SSL=system && make -j4 package"],
282 by Daniel Bartholomew
add bintar-trusty-p8 builder
7953
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
283 by Daniel Bartholomew
comment out -mminimal-toc line for bintar-trusty-p8 and bintar-rhel6-p8 builders
7954
#        "CXX": "g++ -mminimal-toc",
358 by Sergei Golubchik
buildbot: remove unused or useless doStepIf filters.
7955
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
282 by Daniel Bartholomew
add bintar-trusty-p8 builder
7956
)
7957
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
7958
f_p8_trusty_bintar.addStep(SetPropertyFromCommand(
282 by Daniel Bartholomew
add bintar-trusty-p8 builder
7959
        property="bindistname",
7960
        command=["sh", "-c", WithProperties("basename `ls mariadb*tar.gz`")],
7961
        ))
7962
7963
addPackageUploadStep(f_p8_trusty_bintar, '"%(bindistname)s"')
7964
847 by Daniel Bartholomew
automatic maria-master.cfg commit
7965
f_p8_trusty_bintar.addStep(ShellCommand(
7966
    name="cleanup",
7967
    description=["cleanup"],
7968
    descriptionDone=["cleanup"],
7969
    command=["sh", "-c", "rm -rf /dev/shm/var_*"]))
7970
282 by Daniel Bartholomew
add bintar-trusty-p8 builder
7971
f_p8_trusty_bintar.addStep(getMTR(
7972
        test_type="nm",
7973
        test_info="Normal run, no --ps-protocol",
7974
        env={"MTR_FEEDBACK_PLUGIN": "1"},
847 by Daniel Bartholomew
automatic maria-master.cfg commit
7975
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --parallel=4 --mem ")],
282 by Daniel Bartholomew
add bintar-trusty-p8 builder
7976
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
7977
530 by Daniel Bartholomew
automatic maria-master.cfg commit
7978
#f_p8_trusty_bintar.addStep(getMTR(
7979
#        test_type="xtra",
7980
#        test_info="Some additional test suites",
7981
#        env={"MTR_FEEDBACK_PLUGIN": "1"},
7982
#        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
7983
#                       "--verbose-restart --force --parallel=4  " +
7984
#                       "--suite=funcs_1,funcs_2,stress,jp ")],
7985
#                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
300 by Daniel Bartholomew
automatic maria-master.cfg commit
7986
7987
f_p8_trusty_bintar.addStep(getMTR(
7988
        test_type="xtra-big",
7989
        test_info="Some additional test suites, with --big",
7990
        env={"MTR_FEEDBACK_PLUGIN": "1"},
7991
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
316 by Daniel Bartholomew
automatic maria-master.cfg commit
7992
                       "--verbose-restart --force --parallel=4  " +
847 by Daniel Bartholomew
automatic maria-master.cfg commit
7993
                       "--suite=funcs_1,funcs_2,stress,jp --big --mem " +
300 by Daniel Bartholomew
automatic maria-master.cfg commit
7994
                       "--testcase-timeout=45")],
7995
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
7996
530 by Daniel Bartholomew
automatic maria-master.cfg commit
7997
f_p8_trusty_bintar.addStep(RemoveDirectory(
7998
        name="remove_build", 
7999
        dir=WithProperties("%(distdirname)s"),
8000
        alwaysRun=True));
8001
356 by Daniel Bartholomew
automatic maria-master.cfg commit
8002
bld_p8_trusty_bintar = {"name": "p8-trusty-bintar",
682 by Daniel Bartholomew
automatic maria-master.cfg commit
8003
#                "slavename": "power8-vlp04",
8004
                "slavenames": ["power8-vlp04", "p8-trusty-bb"],
8005
                "builddir": "p8-trusty-bintar",
282 by Daniel Bartholomew
add bintar-trusty-p8 builder
8006
                "factory": f_p8_trusty_bintar,
8007
                "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
8008
                "category": "main",
282 by Daniel Bartholomew
add bintar-trusty-p8 builder
8009
                }
8010
8011
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
8012
#-------------------------------------------------------------------------------
397 by Daniel Bartholomew
automatic maria-master.cfg commit
8013
# Ubuntu Trusty P8 ppc64le Bintar Debug Builder
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
8014
#-------------------------------------------------------------------------------
292 by Daniel Bartholomew
- Add new Power8 Ubuntu 14.04 "trusty" builder, power8-vlp04. This builder replaces power8-vlp02.
8015
f_p8_trusty_bintar_debug = factory.BuildFactory()
8016
f_p8_trusty_bintar_debug.addStep(maybe_bzr_checkout)
8017
f_p8_trusty_bintar_debug.addStep(maybe_git_checkout)
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8018
8019
f_p8_trusty_bintar_debug.addStep(SetPropertyFromCommand(
8020
        property="distdirname",
8021
        command=["sh", "-c", WithProperties("pwd")],
8022
        alwaysRun=True))
8023
292 by Daniel Bartholomew
- Add new Power8 Ubuntu 14.04 "trusty" builder, power8-vlp04. This builder replaces power8-vlp02.
8024
f_p8_trusty_bintar_debug.addStep(
726 by Daniel Bartholomew
automatic maria-master.cfg commit
8025
    getCompileStep(["sh", "-c", "git clean -dfX && export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-ppc64el && export PATH=/opt/at8.0/bin:$PATH && cmake . -DCMAKE_BUILD_TYPE=Debug -DWITHOUT_OQGRAPH=ON -DMYSQL_MAINTAINER_MODE=ON && make -j4 package"],
292 by Daniel Bartholomew
- Add new Power8 Ubuntu 14.04 "trusty" builder, power8-vlp04. This builder replaces power8-vlp02.
8026
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
8027
        "EXTRA_CONFIGS": "--with-embedded-privilege-control",
358 by Sergei Golubchik
buildbot: remove unused or useless doStepIf filters.
8028
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
292 by Daniel Bartholomew
- Add new Power8 Ubuntu 14.04 "trusty" builder, power8-vlp04. This builder replaces power8-vlp02.
8029
)
8030
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
8031
f_p8_trusty_bintar_debug.addStep(SetPropertyFromCommand(
292 by Daniel Bartholomew
- Add new Power8 Ubuntu 14.04 "trusty" builder, power8-vlp04. This builder replaces power8-vlp02.
8032
        property="bindistname",
8033
        command=["sh", "-c", WithProperties("basename `ls mariadb*tar.gz`")],
8034
        ))
8035
8036
addPackageUploadStep(f_p8_trusty_bintar_debug, '"%(bindistname)s"')
8037
846 by Daniel Bartholomew
automatic maria-master.cfg commit
8038
f_p8_trusty_bintar_debug.addStep(ShellCommand(
8039
    name="cleanup",
8040
    description=["cleanup"],
8041
    descriptionDone=["cleanup"],
8042
    command=["sh", "-c", "rm -rf /dev/shm/var_*"]))
8043
292 by Daniel Bartholomew
- Add new Power8 Ubuntu 14.04 "trusty" builder, power8-vlp04. This builder replaces power8-vlp02.
8044
f_p8_trusty_bintar_debug.addStep(getMTR(
8045
        test_type="nm",
8046
        test_info="Normal run, no --ps-protocol",
8047
        env={"MTR_FEEDBACK_PLUGIN": "1"},
846 by Daniel Bartholomew
automatic maria-master.cfg commit
8048
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --parallel=4 --mem ")],
292 by Daniel Bartholomew
- Add new Power8 Ubuntu 14.04 "trusty" builder, power8-vlp04. This builder replaces power8-vlp02.
8049
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
8050
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8051
#f_p8_trusty_bintar_debug.addStep(getMTR(
8052
#        test_type="xtra",
8053
#        test_info="Some additional test suites",
8054
#        env={"MTR_FEEDBACK_PLUGIN": "1"},
8055
#        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
8056
#                       "--verbose-restart --force --parallel=4  " +
8057
#                       "--suite=funcs_1,funcs_2,stress,jp ")],
8058
#                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
300 by Daniel Bartholomew
automatic maria-master.cfg commit
8059
8060
f_p8_trusty_bintar_debug.addStep(getMTR(
8061
        test_type="xtra-big",
8062
        test_info="Some additional test suites, with --big",
8063
        env={"MTR_FEEDBACK_PLUGIN": "1"},
8064
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
846 by Daniel Bartholomew
automatic maria-master.cfg commit
8065
                       "--verbose-restart --force --parallel=4 --mem " +
300 by Daniel Bartholomew
automatic maria-master.cfg commit
8066
                       "--suite=funcs_1,funcs_2,stress,jp --big " +
8067
                       "--testcase-timeout=45")],
8068
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
8069
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8070
f_p8_trusty_bintar_debug.addStep(RemoveDirectory(
8071
        name="remove_build", 
8072
        dir=WithProperties("%(distdirname)s"),
8073
        alwaysRun=True));
8074
356 by Daniel Bartholomew
automatic maria-master.cfg commit
8075
bld_p8_trusty_bintar_debug = {"name": "p8-trusty-bintar-debug",
682 by Daniel Bartholomew
automatic maria-master.cfg commit
8076
#                "slavename": "power8-vlp04",
8077
                "slavenames": ["power8-vlp04", "p8-trusty-bb"],
8078
                "builddir": "p8-trusty-bintar-debug",
292 by Daniel Bartholomew
- Add new Power8 Ubuntu 14.04 "trusty" builder, power8-vlp04. This builder replaces power8-vlp02.
8079
                "factory": f_p8_trusty_bintar_debug,
8080
                "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
8081
                "category": "main",
292 by Daniel Bartholomew
- Add new Power8 Ubuntu 14.04 "trusty" builder, power8-vlp04. This builder replaces power8-vlp02.
8082
                }
288 by Daniel Bartholomew
Added p8 debug builders for rhel6 and Ubuntu trusty
8083
349 by Daniel Bartholomew
initial P8 Ubuntu Trusty DEB builder
8084
#-------------------------------------------------------------------------------
397 by Daniel Bartholomew
automatic maria-master.cfg commit
8085
# Ubuntu Trusty P8 ppc64le DEB Builder
349 by Daniel Bartholomew
initial P8 Ubuntu Trusty DEB builder
8086
#-------------------------------------------------------------------------------
8087
f_p8_trusty_deb = factory.BuildFactory()
8088
f_p8_trusty_deb.addStep(maybe_bzr_checkout)
8089
f_p8_trusty_deb.addStep(maybe_git_checkout)
531 by Daniel Bartholomew
automatic maria-master.cfg commit
8090
8091
f_p8_trusty_deb.addStep(SetPropertyFromCommand(
8092
        property="distdirname",
8093
        command=["sh", "-c", WithProperties("pwd")],
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8094
        alwaysRun=True))
531 by Daniel Bartholomew
automatic maria-master.cfg commit
8095
349 by Daniel Bartholomew
initial P8 Ubuntu Trusty DEB builder
8096
f_p8_trusty_deb.addStep(
726 by Daniel Bartholomew
automatic maria-master.cfg commit
8097
    getCompileStep(["sh", "-c", 'git clean -dfX && export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-ppc64el && export PATH=/opt/at8.0/bin:$PATH && echo | MYSQL_BUILD_CC=/opt/at8.0/bin/gcc MYSQL_BUILD_CXX=/opt/at8.0/bin/g++ MYSQL_BUILD_PATH="/opt/at8.0/bin:$PATH" debian/autobake-deb.sh'],
349 by Daniel Bartholomew
initial P8 Ubuntu Trusty DEB builder
8098
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
358 by Sergei Golubchik
buildbot: remove unused or useless doStepIf filters.
8099
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
349 by Daniel Bartholomew
initial P8 Ubuntu Trusty DEB builder
8100
)
8101
8102
f_p8_trusty_deb.addStep(ShellCommand(
8103
    description=["archiving"],
8104
    descriptionDone=["archive"],
8105
    command=["sh", "-c", WithProperties("""
8106
set -ex
8107
rm -Rf debs
8108
mkdir -vp debs/binary
8109
mkdir -vp debs/source
362 by Daniel Bartholomew
automatic maria-master.cfg commit
8110
""" + 'mv -v $(find .. -maxdepth 1 -type f) debs/binary/\n' + """
349 by Daniel Bartholomew
initial P8 Ubuntu Trusty DEB builder
8111
cd debs
8112
dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz
8113
dpkg-scansources source /dev/null | gzip -9c > source/Sources.gz
8114
""")]))
8115
8116
addPackageUploadStep(f_p8_trusty_deb, 'debs')
8117
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8118
f_p8_trusty_deb.addStep(RemoveDirectory(
8119
        name="remove_build", 
8120
        dir=WithProperties("%(distdirname)s"),
8121
        alwaysRun=True));
8122
356 by Daniel Bartholomew
automatic maria-master.cfg commit
8123
bld_p8_trusty_deb = {"name": "p8-trusty-deb",
682 by Daniel Bartholomew
automatic maria-master.cfg commit
8124
#                "slavename": "power8-vlp04",
8125
                "slavenames": ["power8-vlp04", "p8-trusty-bb"],
8126
                "builddir": "p8-trusty-deb",
349 by Daniel Bartholomew
initial P8 Ubuntu Trusty DEB builder
8127
                "factory": f_p8_trusty_deb,
8128
                "nextBuild": myNextBuild,
533 by Daniel Bartholomew
automatic maria-master.cfg commit
8129
                "category": "main",
349 by Daniel Bartholomew
initial P8 Ubuntu Trusty DEB builder
8130
                }
288 by Daniel Bartholomew
Added p8 debug builders for rhel6 and Ubuntu trusty
8131
625 by Daniel Bartholomew
automatic maria-master.cfg commit
8132
8133
#-------------------------------------------------------------------------------
8134
# Ubuntu Trusty P8 ppc64le DEB Builder for Galera
8135
#-------------------------------------------------------------------------------
8136
f_p8_trusty_deb_gal = factory.BuildFactory()
8137
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8138
f_p8_trusty_deb_gal.addStep(SetPropertyFromCommand(
8139
        property="distdirname",
8140
        command=["sh", "-c", WithProperties("pwd")],
8141
        alwaysRun=True))
8142
625 by Daniel Bartholomew
automatic maria-master.cfg commit
8143
f_p8_trusty_deb_gal.addStep(Compile(
8144
        description=["making", "debs"],
8145
        descriptionDone=["make", "debs"],
8146
        timeout=3600,
8147
        warningPattern=gccWarningPattern,
8148
        warningExtractor=Compile.warnExtractFromRegexpGroups,
8149
        suppressionFile=WithProperties("compiler_warnings.supp"),
8150
        env={"TERM": "vt102"},
8151
        command=["sh", "-c", WithProperties("""
8152
set -ex
8153
rm -Rf debs build
8154
mkdir -p debs/binary debs/source
8155
git clone -b %(branch)s "https://github.com/MariaDB/galera.git" build
8156
cd build
8157
export PATH=/opt/at8.0/bin:$PATH
8158
./scripts/build.sh -p
8159
cp `find ../*.deb -maxdepth 1 -type f` ../debs/binary/
8160
cp `find ../*.changes -maxdepth 1 -type f` ../debs/binary/
8161
cd ../debs
8162
dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz
8163
dpkg-scansources source /dev/null | gzip -9c > source/Sources.gz
8164
""")]))
8165
8166
addPackageUploadStep(f_p8_trusty_deb_gal, 'debs')
8167
8168
f_p8_trusty_deb_gal.addStep(RemoveDirectory(
8169
        name="remove_build", 
8170
        dir=WithProperties("%(distdirname)s"),
8171
        alwaysRun=True));
8172
8173
gal_bld_p8_trusty_deb = {"name": "p8-trusty-deb-gal",
682 by Daniel Bartholomew
automatic maria-master.cfg commit
8174
#                "slavename": "power8-vlp04",
8175
                "slavenames": ["power8-vlp04", "p8-trusty-bb"],
8176
                "builddir": "p8-trusty-deb-gal",
625 by Daniel Bartholomew
automatic maria-master.cfg commit
8177
                "factory": f_p8_trusty_deb_gal,
8178
                "nextBuild": myNextBuild,
8179
                "category": "galera",
8180
                }
8181
8182
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
8183
#-------------------------------------------------------------------------------
679 by Daniel Bartholomew
automatic maria-master.cfg commit
8184
# Ubuntu Xenial P8 ppc64le Bintar Builder
8185
#-------------------------------------------------------------------------------
8186
f_p8_xenial_bintar = factory.BuildFactory()
8187
f_p8_xenial_bintar.addStep(maybe_bzr_checkout)
8188
f_p8_xenial_bintar.addStep(maybe_git_checkout)
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8189
8190
f_p8_xenial_bintar.addStep(SetPropertyFromCommand(
8191
        property="distdirname",
8192
        command=["sh", "-c", WithProperties("pwd")],
8193
        alwaysRun=True))
8194
679 by Daniel Bartholomew
automatic maria-master.cfg commit
8195
f_p8_xenial_bintar.addStep(
8196
#    getCompileStep(["sh", "-c", "git clean -dfX && export PATH=/opt/at8.0/bin:$PATH && cmake . -DBUILD_CONFIG=mysql_release -DWITHOUT_OQGRAPH=ON -DWITH_SSL=system && make -j4 package"],
726 by Daniel Bartholomew
automatic maria-master.cfg commit
8197
    getCompileStep(["sh", "-c", "git clean -dfX && export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-ppc64el && cmake . -DBUILD_CONFIG=mysql_release -DWITHOUT_OQGRAPH=ON -DWITH_SSL=system && make -j4 package"],
679 by Daniel Bartholomew
automatic maria-master.cfg commit
8198
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
8199
#        "CXX": "g++ -mminimal-toc",
8200
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
8201
)
8202
8203
f_p8_xenial_bintar.addStep(SetPropertyFromCommand(
8204
        property="bindistname",
8205
        command=["sh", "-c", WithProperties("basename `ls mariadb*tar.gz`")],
8206
        ))
8207
8208
addPackageUploadStep(f_p8_xenial_bintar, '"%(bindistname)s"')
8209
847 by Daniel Bartholomew
automatic maria-master.cfg commit
8210
f_p8_xenial_bintar.addStep(ShellCommand(
8211
    name="cleanup",
8212
    description=["cleanup"],
8213
    descriptionDone=["cleanup"],
8214
    command=["sh", "-c", "rm -rf /dev/shm/var_*"]))
8215
679 by Daniel Bartholomew
automatic maria-master.cfg commit
8216
f_p8_xenial_bintar.addStep(getMTR(
8217
        test_type="nm",
8218
        test_info="Normal run, no --ps-protocol",
8219
        env={"MTR_FEEDBACK_PLUGIN": "1"},
847 by Daniel Bartholomew
automatic maria-master.cfg commit
8220
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --parallel=4 --mem ")],
679 by Daniel Bartholomew
automatic maria-master.cfg commit
8221
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
8222
8223
f_p8_xenial_bintar.addStep(getMTR(
8224
        test_type="xtra-big",
8225
        test_info="Some additional test suites, with --big",
8226
        env={"MTR_FEEDBACK_PLUGIN": "1"},
8227
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
8228
                       "--verbose-restart --force --parallel=4  " +
847 by Daniel Bartholomew
automatic maria-master.cfg commit
8229
                       "--suite=funcs_1,funcs_2,stress,jp --big --mem " +
679 by Daniel Bartholomew
automatic maria-master.cfg commit
8230
                       "--testcase-timeout=45")],
8231
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
8232
8233
f_p8_xenial_bintar.addStep(RemoveDirectory(
8234
        name="remove_build",
8235
        dir=WithProperties("%(distdirname)s"),
8236
        alwaysRun=True));
8237
8238
bld_p8_xenial_bintar = {"name": "p8-xenial-bintar",
8239
                "slavename": "p8-xenial-bb",
8240
                "builddir": "p8-xenial-bintar",
8241
                "factory": f_p8_xenial_bintar,
8242
                "nextBuild": myNextBuild,
8243
                "category": "main",
8244
                }
8245
8246
#-------------------------------------------------------------------------------
8247
# Ubuntu Xenial P8 ppc64le Bintar Debug Builder
8248
#-------------------------------------------------------------------------------
8249
f_p8_xenial_bintar_debug = factory.BuildFactory()
8250
f_p8_xenial_bintar_debug.addStep(maybe_bzr_checkout)
8251
f_p8_xenial_bintar_debug.addStep(maybe_git_checkout)
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8252
8253
f_p8_xenial_bintar_debug.addStep(SetPropertyFromCommand(
8254
        property="distdirname",
8255
        command=["sh", "-c", WithProperties("pwd")],
8256
        alwaysRun=True))
8257
679 by Daniel Bartholomew
automatic maria-master.cfg commit
8258
f_p8_xenial_bintar_debug.addStep(
8259
#    getCompileStep(["sh", "-c", "git clean -dfX && export PATH=/opt/at8.0/bin:$PATH && cmake . -DCMAKE_BUILD_TYPE=Debug -DWITHOUT_OQGRAPH=ON -DMYSQL_MAINTAINER_MODE=ON && make -j4 package"],
726 by Daniel Bartholomew
automatic maria-master.cfg commit
8260
    getCompileStep(["sh", "-c", "git clean -dfX && export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-ppc64el && cmake . -DCMAKE_BUILD_TYPE=Debug -DWITHOUT_OQGRAPH=ON -DMYSQL_MAINTAINER_MODE=ON && make -j4 package"],
679 by Daniel Bartholomew
automatic maria-master.cfg commit
8261
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
8262
        "EXTRA_CONFIGS": "--with-embedded-privilege-control",
8263
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
8264
)
8265
8266
f_p8_xenial_bintar_debug.addStep(SetPropertyFromCommand(
8267
        property="bindistname",
8268
        command=["sh", "-c", WithProperties("basename `ls mariadb*tar.gz`")],
8269
        ))
8270
8271
addPackageUploadStep(f_p8_xenial_bintar_debug, '"%(bindistname)s"')
8272
846 by Daniel Bartholomew
automatic maria-master.cfg commit
8273
f_p8_xenial_bintar_debug.addStep(ShellCommand(
8274
    name="cleanup",
8275
    description=["cleanup"],
8276
    descriptionDone=["cleanup"],
8277
    command=["sh", "-c", "rm -rf /dev/shm/var_*"]))
8278
679 by Daniel Bartholomew
automatic maria-master.cfg commit
8279
f_p8_xenial_bintar_debug.addStep(getMTR(
8280
        test_type="nm",
8281
        test_info="Normal run, no --ps-protocol",
8282
        env={"MTR_FEEDBACK_PLUGIN": "1"},
846 by Daniel Bartholomew
automatic maria-master.cfg commit
8283
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --parallel=4 --mem ")],
679 by Daniel Bartholomew
automatic maria-master.cfg commit
8284
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
8285
8286
f_p8_xenial_bintar_debug.addStep(getMTR(
8287
        test_type="xtra-big",
8288
        test_info="Some additional test suites, with --big",
8289
        env={"MTR_FEEDBACK_PLUGIN": "1"},
8290
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
846 by Daniel Bartholomew
automatic maria-master.cfg commit
8291
                       "--verbose-restart --force --parallel=4 --mem " +
679 by Daniel Bartholomew
automatic maria-master.cfg commit
8292
                       "--suite=funcs_1,funcs_2,stress,jp --big " +
8293
                       "--testcase-timeout=45")],
8294
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
8295
8296
f_p8_xenial_bintar_debug.addStep(RemoveDirectory(
8297
        name="remove_build",
8298
        dir=WithProperties("%(distdirname)s"),
8299
        alwaysRun=True));
8300
8301
bld_p8_xenial_bintar_debug = {"name": "p8-xenial-bintar-debug",
8302
                "slavename": "p8-xenial-bb",
8303
                "builddir": "p8-xenial-bintar-debug",
8304
                "factory": f_p8_xenial_bintar_debug,
8305
                "nextBuild": myNextBuild,
8306
                "category": "main",
8307
                }
8308
8309
#-------------------------------------------------------------------------------
8310
# Ubuntu Xenial P8 ppc64le DEB Builder
8311
#-------------------------------------------------------------------------------
8312
f_p8_xenial_deb = factory.BuildFactory()
8313
f_p8_xenial_deb.addStep(maybe_bzr_checkout)
8314
f_p8_xenial_deb.addStep(maybe_git_checkout)
8315
8316
f_p8_xenial_deb.addStep(SetPropertyFromCommand(
8317
        property="distdirname",
8318
        command=["sh", "-c", WithProperties("pwd")],
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8319
        alwaysRun=True))
679 by Daniel Bartholomew
automatic maria-master.cfg commit
8320
8321
f_p8_xenial_deb.addStep(
680 by Daniel Bartholomew
automatic maria-master.cfg commit
8322
#    getCompileStep(["sh", "-c", 'git clean -dfX && export PATH=/opt/at8.0/bin:$PATH && echo | MYSQL_BUILD_CC=/opt/at8.0/bin/gcc MYSQL_BUILD_CXX=/opt/at8.0/bin/g++ MYSQL_BUILD_PATH="/opt/at8.0/bin:$PATH" debian/autobake-deb.sh'],
725 by Daniel Bartholomew
automatic maria-master.cfg commit
8323
    getCompileStep(["sh", "-c", 'git clean -dfX && export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-ppc64el && echo | debian/autobake-deb.sh'],
679 by Daniel Bartholomew
automatic maria-master.cfg commit
8324
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
8325
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
8326
)
8327
8328
f_p8_xenial_deb.addStep(ShellCommand(
8329
    description=["archiving"],
8330
    descriptionDone=["archive"],
8331
    command=["sh", "-c", WithProperties("""
8332
set -ex
8333
rm -Rf debs
8334
mkdir -vp debs/binary
8335
mkdir -vp debs/source
8336
""" + 'mv -v $(find .. -maxdepth 1 -type f) debs/binary/\n' + """
8337
cd debs
8338
dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz
8339
dpkg-scansources source /dev/null | gzip -9c > source/Sources.gz
8340
""")]))
8341
8342
addPackageUploadStep(f_p8_xenial_deb, 'debs')
8343
8344
f_p8_xenial_deb.addStep(RemoveDirectory(
8345
        name="remove_build",
8346
        dir=WithProperties("%(distdirname)s"),
8347
        alwaysRun=True));
8348
8349
bld_p8_xenial_deb = {"name": "p8-xenial-deb",
8350
                "slavename": "p8-xenial-bb",
8351
                "builddir": "p8-xenial-deb",
8352
                "factory": f_p8_xenial_deb,
8353
                "nextBuild": myNextBuild,
8354
                "category": "main",
8355
                }
8356
8357
#-------------------------------------------------------------------------------
8358
# Ubuntu Xenial P8 ppc64le DEB Builder for Galera
8359
#-------------------------------------------------------------------------------
8360
f_p8_xenial_deb_gal = factory.BuildFactory()
8361
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8362
f_p8_xenial_deb_gal.addStep(SetPropertyFromCommand(
8363
        property="distdirname",
8364
        command=["sh", "-c", WithProperties("pwd")],
8365
        alwaysRun=True))
8366
679 by Daniel Bartholomew
automatic maria-master.cfg commit
8367
f_p8_xenial_deb_gal.addStep(Compile(
8368
        description=["making", "debs"],
8369
        descriptionDone=["make", "debs"],
8370
        timeout=3600,
8371
        warningPattern=gccWarningPattern,
8372
        warningExtractor=Compile.warnExtractFromRegexpGroups,
8373
        suppressionFile=WithProperties("compiler_warnings.supp"),
8374
        env={"TERM": "vt102"},
8375
        command=["sh", "-c", WithProperties("""
8376
set -ex
8377
rm -Rf debs build
8378
mkdir -p debs/binary debs/source
8379
git clone -b %(branch)s "https://github.com/MariaDB/galera.git" build
8380
cd build
8381
export PATH=/opt/at8.0/bin:$PATH
8382
./scripts/build.sh -p
8383
cp `find ../*.deb -maxdepth 1 -type f` ../debs/binary/
8384
cp `find ../*.changes -maxdepth 1 -type f` ../debs/binary/
8385
cd ../debs
8386
dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz
8387
dpkg-scansources source /dev/null | gzip -9c > source/Sources.gz
8388
""")]))
8389
8390
addPackageUploadStep(f_p8_xenial_deb_gal, 'debs')
8391
8392
f_p8_xenial_deb_gal.addStep(RemoveDirectory(
8393
        name="remove_build",
8394
        dir=WithProperties("%(distdirname)s"),
8395
        alwaysRun=True));
8396
8397
gal_bld_p8_xenial_deb = {"name": "p8-xenial-deb-gal",
8398
                "slavename": "p8-xenial-bb",
8399
                "builddir": "p8-xenial-deb-gal",
8400
                "factory": f_p8_xenial_deb_gal,
8401
                "nextBuild": myNextBuild,
8402
                "category": "galera",
8403
                }
8404
8405
8406
8407
8408
8409
8410
#-------------------------------------------------------------------------------
397 by Daniel Bartholomew
automatic maria-master.cfg commit
8411
# RHEL 7 P8 ppc64 Bintar Builder
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
8412
#-------------------------------------------------------------------------------
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8413
f_p8_rhel7_bintar = factory.BuildFactory()
8414
f_p8_rhel7_bintar.addStep(maybe_bzr_checkout)
8415
f_p8_rhel7_bintar.addStep(maybe_git_checkout)
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8416
8417
f_p8_rhel7_bintar.addStep(SetPropertyFromCommand(
8418
        property="distdirname",
8419
        command=["sh", "-c", WithProperties("pwd")],
8420
        alwaysRun=True))
8421
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8422
f_p8_rhel7_bintar.addStep(
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8423
    getCompileStep(["sh", "-c", "git clean -dfX && export PATH=/opt/at8.0/bin:$PATH && cmake . -DBUILD_CONFIG=mysql_release -DWITH_SSL=system -DWITHOUT_CONNECT=ON -DWITH_JEMALLOC=yes && make -j4 package"],
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8424
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
358 by Sergei Golubchik
buildbot: remove unused or useless doStepIf filters.
8425
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8426
)
8427
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
8428
f_p8_rhel7_bintar.addStep(SetPropertyFromCommand(
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8429
        property="bindistname",
8430
        command=["sh", "-c", WithProperties("basename `ls mariadb*tar.gz`")],
8431
        ))
8432
8433
addPackageUploadStep(f_p8_rhel7_bintar, '"%(bindistname)s"')
8434
847 by Daniel Bartholomew
automatic maria-master.cfg commit
8435
f_p8_rhel7_bintar.addStep(ShellCommand(
8436
    name="cleanup",
8437
    description=["cleanup"],
8438
    descriptionDone=["cleanup"],
8439
    command=["sh", "-c", "rm -rf /dev/shm/var_*"]))
8440
8441
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8442
f_p8_rhel7_bintar.addStep(getMTR(
8443
        test_type="nm",
8444
        test_info="Normal run, no --ps-protocol",
8445
        env={"MTR_FEEDBACK_PLUGIN": "1"},
847 by Daniel Bartholomew
automatic maria-master.cfg commit
8446
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --parallel=4 --mem ")],
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8447
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
8448
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8449
#f_p8_rhel7_bintar.addStep(getMTR(
8450
#        test_type="xtra",
8451
#        test_info="Some additional test suites",
8452
#        env={"MTR_FEEDBACK_PLUGIN": "1"},
8453
#        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
8454
#                       "--verbose-restart --force --parallel=4  " +
8455
#                       "--suite=funcs_1,funcs_2,stress,jp ")],
8456
#                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
300 by Daniel Bartholomew
automatic maria-master.cfg commit
8457
8458
f_p8_rhel7_bintar.addStep(getMTR(
8459
        test_type="xtra-big",
8460
        test_info="Some additional test suites, with --big",
8461
        env={"MTR_FEEDBACK_PLUGIN": "1"},
8462
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
316 by Daniel Bartholomew
automatic maria-master.cfg commit
8463
                       "--verbose-restart --force --parallel=4  " +
847 by Daniel Bartholomew
automatic maria-master.cfg commit
8464
                       "--suite=funcs_1,funcs_2,stress,jp --big --mem " +
300 by Daniel Bartholomew
automatic maria-master.cfg commit
8465
                       "--testcase-timeout=45")],
8466
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
8467
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8468
f_p8_rhel7_bintar.addStep(RemoveDirectory(
8469
        name="remove_build", 
8470
        dir=WithProperties("%(distdirname)s"),
8471
        alwaysRun=True));
8472
356 by Daniel Bartholomew
automatic maria-master.cfg commit
8473
bld_p8_rhel7_bintar = {"name": "p8-rhel7-bintar",
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8474
                "slavename": "power8-vlp03",
345 by Daniel Bartholomew
changes to names of p8 factories to account for new rpm builders
8475
                "builddir": "power8-vlp03-bintar",
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8476
                "factory": f_p8_rhel7_bintar,
8477
                "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
8478
                "category": "main",
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8479
                }
8480
8481
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
8482
#-------------------------------------------------------------------------------
397 by Daniel Bartholomew
automatic maria-master.cfg commit
8483
# RHEL 7 P8 ppc64 Bintar Debug Builder
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
8484
#-------------------------------------------------------------------------------
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8485
f_p8_rhel7_bintar_debug = factory.BuildFactory()
8486
f_p8_rhel7_bintar_debug.addStep(maybe_bzr_checkout)
8487
f_p8_rhel7_bintar_debug.addStep(maybe_git_checkout)
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8488
8489
f_p8_rhel7_bintar_debug.addStep(SetPropertyFromCommand(
8490
        property="distdirname",
8491
        command=["sh", "-c", WithProperties("pwd")],
8492
        alwaysRun=True))
8493
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8494
f_p8_rhel7_bintar_debug.addStep(
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8495
    getCompileStep(["sh", "-c", "git clean -dfX && export PATH=/opt/at8.0/bin:$PATH && cmake . -DCMAKE_BUILD_TYPE=Debug -DMYSQL_MAINTAINER_MODE=ON -DWITHOUT_CONNECT=ON && make -j4 package"],
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8496
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
8497
        "EXTRA_CONFIGS": "--with-embedded-privilege-control",
358 by Sergei Golubchik
buildbot: remove unused or useless doStepIf filters.
8498
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8499
)
8500
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
8501
f_p8_rhel7_bintar_debug.addStep(SetPropertyFromCommand(
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8502
        property="bindistname",
8503
        command=["sh", "-c", WithProperties("basename `ls mariadb*tar.gz`")],
8504
        ))
8505
8506
addPackageUploadStep(f_p8_rhel7_bintar_debug, '"%(bindistname)s"')
8507
846 by Daniel Bartholomew
automatic maria-master.cfg commit
8508
f_p8_rhel7_bintar_debug.addStep(ShellCommand(
8509
    name="cleanup",
8510
    description=["cleanup"],
8511
    descriptionDone=["cleanup"],
8512
    command=["sh", "-c", "rm -rf /dev/shm/var_*"]))
8513
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8514
f_p8_rhel7_bintar_debug.addStep(getMTR(
8515
        test_type="nm",
8516
        test_info="Normal run, no --ps-protocol",
8517
        env={"MTR_FEEDBACK_PLUGIN": "1"},
846 by Daniel Bartholomew
automatic maria-master.cfg commit
8518
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --parallel=4 --mem ")],
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8519
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
8520
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8521
#f_p8_rhel7_bintar_debug.addStep(getMTR(
8522
#        test_type="xtra",
8523
#        test_info="Some additional test suites",
8524
#        env={"MTR_FEEDBACK_PLUGIN": "1"},
8525
#        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
8526
#                       "--verbose-restart --force --parallel=4  " +
8527
#                       "--suite=funcs_1,funcs_2,stress,jp ")],
8528
#                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
300 by Daniel Bartholomew
automatic maria-master.cfg commit
8529
8530
f_p8_rhel7_bintar_debug.addStep(getMTR(
8531
        test_type="xtra-big",
8532
        test_info="Some additional test suites, with --big",
8533
        env={"MTR_FEEDBACK_PLUGIN": "1"},
8534
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
316 by Daniel Bartholomew
automatic maria-master.cfg commit
8535
                       "--verbose-restart --force --parallel=4  " +
846 by Daniel Bartholomew
automatic maria-master.cfg commit
8536
                       "--suite=funcs_1,funcs_2,stress,jp --big --mem " +
300 by Daniel Bartholomew
automatic maria-master.cfg commit
8537
                       "--testcase-timeout=45")],
8538
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
8539
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8540
f_p8_rhel7_bintar_debug.addStep(RemoveDirectory(
8541
        name="remove_build", 
8542
        dir=WithProperties("%(distdirname)s"),
8543
        alwaysRun=True));
8544
356 by Daniel Bartholomew
automatic maria-master.cfg commit
8545
bld_p8_rhel7_bintar_debug = {"name": "p8-rhel7-bintar-debug",
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8546
                "slavename": "power8-vlp03",
345 by Daniel Bartholomew
changes to names of p8 factories to account for new rpm builders
8547
                "builddir": "power8-vlp03-bintar-debug",
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8548
                "factory": f_p8_rhel7_bintar_debug,
8549
                "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
8550
                "category": "main",
291 by Daniel Bartholomew
Added power8-vlp03 builder. This is another virtual IBM power 8 builder. This
8551
                }
8552
8553
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
8554
#-------------------------------------------------------------------------------
397 by Daniel Bartholomew
automatic maria-master.cfg commit
8555
# RHEL 7 P8 ppc64 RPM Builder
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
8556
#-------------------------------------------------------------------------------
8557
f_p8_rhel7_rpm = factory.BuildFactory()
8558
f_p8_rhel7_rpm.addStep(maybe_bzr_checkout)
8559
f_p8_rhel7_rpm.addStep(maybe_git_checkout)
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8560
8561
f_p8_rhel7_rpm.addStep(SetPropertyFromCommand(
8562
        property="distdirname",
8563
        command=["sh", "-c", WithProperties("pwd")],
8564
        alwaysRun=True))
8565
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
8566
f_p8_rhel7_rpm.addStep(
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8567
    getCompileStep(["sh", "-c", "git clean -dfX && export PATH=/opt/at8.0/bin:$PATH && cmake . -DBUILD_CONFIG=mysql_release -DWITH_JEMALLOC=yes -DRPM=rhel7 && make -j4 package VERBOSE=1"],
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
8568
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
358 by Sergei Golubchik
buildbot: remove unused or useless doStepIf filters.
8569
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
8570
)
8571
348 by Daniel Bartholomew
Fix for uploading P8 rpm packages
8572
f_p8_rhel7_rpm.addStep(ShellCommand(
8573
    description=["archiving"],
8574
    descriptionDone=["archive"],
8575
    command=["sh", "-c", WithProperties("""
8576
set -ex
8577
rm -Rf rpms
8578
mkdir -p rpms
8579
""" + 'cp -rp *.rpm rpms/\n' + """
8580
cd rpms
8581
find . -type f \! -name md5sums.txt|xargs md5sum > md5sums.txt
8582
""")]))
8583
8584
addPackageUploadStep(f_p8_rhel7_rpm, 'rpms')
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
8585
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8586
f_p8_rhel7_rpm.addStep(RemoveDirectory(
8587
        name="remove_build", 
8588
        dir=WithProperties("%(distdirname)s"),
8589
        alwaysRun=True));
8590
356 by Daniel Bartholomew
automatic maria-master.cfg commit
8591
bld_p8_rhel7_rpm = {"name": "p8-rhel7-rpm",
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
8592
                "slavename": "power8-vlp03",
345 by Daniel Bartholomew
changes to names of p8 factories to account for new rpm builders
8593
                "builddir": "power8-vlp03-rpm",
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
8594
                "factory": f_p8_rhel7_rpm,
8595
                "nextBuild": myNextBuild,
533 by Daniel Bartholomew
automatic maria-master.cfg commit
8596
                "category": "main",
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
8597
                }
8598
8599
625 by Daniel Bartholomew
automatic maria-master.cfg commit
8600
#-------------------------------------------------------------------------------
8601
# RHEL 7 P8 ppc64 RPM Builder for Galera
8602
#-------------------------------------------------------------------------------
8603
8604
f_p8_rhel7_rpm_gal = factory.BuildFactory()
8605
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8606
f_p8_rhel7_rpm_gal.addStep(SetPropertyFromCommand(
8607
        property="distdirname",
8608
        command=["sh", "-c", WithProperties("pwd")],
8609
        alwaysRun=True))
8610
625 by Daniel Bartholomew
automatic maria-master.cfg commit
8611
f_p8_rhel7_rpm_gal.addStep(Compile(
8612
        description=["making", "rpms"],
8613
        descriptionDone=["make", "rpms"],
8614
        timeout=7200,
8615
        warningPattern=gccWarningPattern,
8616
        warningExtractor=Compile.warnExtractFromRegexpGroups,
8617
        suppressionFile=WithProperties("compiler_warnings.supp"),
8618
        env={"TERM": "vt102"},
8619
        command=["sh", "-c", WithProperties("""
8620
set -ex
8621
rm -Rf rpms build
8622
mkdir rpms
8623
git clone -b %(branch)s "https://github.com/MariaDB/galera.git" build
8624
cd build
8625
export PATH=/opt/at8.0/bin:$PATH
8626
./scripts/build.sh -p
8627
cp `find *.rpm -maxdepth 1 -type f` ../rpms
8628
cd ..
8629
        """),
8630
        ]))
8631
8632
f_p8_rhel7_rpm_gal.addStep(ShellCommand(
8633
        description=["archiving"],
8634
        descriptionDone=["archive"],
8635
        command=["sh", "-c", WithProperties("""
8636
set -ex
8637
cd rpms
8638
find . -type f \! -name md5sums.txt|xargs md5sum > md5sums.txt
8639
""")]))
8640
8641
addPackageUploadStep(f_p8_rhel7_rpm_gal, 'rpms')
8642
8643
f_p8_rhel7_rpm_gal.addStep(RemoveDirectory(
8644
        name="remove_build", 
8645
        dir=WithProperties("%(distdirname)s"),
8646
        alwaysRun=True));
8647
8648
gal_bld_p8_rhel7_rpm = {"name": "p8-rhel7-rpm-gal",
8649
                "slavename": "power8-vlp03",
8650
                "builddir": "power8-vlp03-rpm-gal",
8651
                "factory": f_p8_rhel7_rpm_gal,
8652
                "nextBuild": myNextBuild,
8653
                "category": "galera",
8654
                }
8655
8656
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8657
8658
#-------------------------------------------------------------------------------
397 by Daniel Bartholomew
automatic maria-master.cfg commit
8659
# RHEL 7.1 P8 ppc64le Bintar Builder
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8660
#-------------------------------------------------------------------------------
8661
f_p8_rhel71_bintar = factory.BuildFactory()
8662
f_p8_rhel71_bintar.addStep(maybe_bzr_checkout)
8663
f_p8_rhel71_bintar.addStep(maybe_git_checkout)
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8664
8665
f_p8_rhel71_bintar.addStep(SetPropertyFromCommand(
8666
        property="distdirname",
8667
        command=["sh", "-c", WithProperties("pwd")],
8668
        alwaysRun=True))
8669
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8670
# There is no epel repo for Red Hat 7.1 P8 LE (Little Endian), so there are no
8671
# jemalloc packages available, so that is disabled below -- dbart (2015-01-22)
709 by Daniel Bartholomew
automatic maria-master.cfg commit
8672
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8673
f_p8_rhel71_bintar.addStep(
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8674
    getCompileStep(["sh", "-c", "git clean -dfX && export PATH=/opt/at8.0/bin:$PATH && cmake . -DBUILD_CONFIG=mysql_release -DWITH_SSL=system -DWITHOUT_CONNECT=ON -DWITH_JEMALLOC=no && make -j4 package"],
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8675
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
8676
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
8677
)
8678
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
8679
f_p8_rhel71_bintar.addStep(SetPropertyFromCommand(
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8680
        property="bindistname",
8681
        command=["sh", "-c", WithProperties("basename `ls mariadb*tar.gz`")],
8682
        ))
8683
8684
addPackageUploadStep(f_p8_rhel71_bintar, '"%(bindistname)s"')
8685
847 by Daniel Bartholomew
automatic maria-master.cfg commit
8686
f_p8_rhel71_bintar.addStep(ShellCommand(
8687
    name="cleanup",
8688
    description=["cleanup"],
8689
    descriptionDone=["cleanup"],
8690
    command=["sh", "-c", "rm -rf /dev/shm/var_*"]))
8691
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8692
f_p8_rhel71_bintar.addStep(getMTR(
8693
        test_type="nm",
8694
        test_info="Normal run, no --ps-protocol",
8695
        env={"MTR_FEEDBACK_PLUGIN": "1"},
595 by Daniel Bartholomew
automatic maria-master.cfg commit
8696
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --parallel=2 --mem ")],
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8697
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
8698
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8699
#f_p8_rhel71_bintar.addStep(getMTR(
8700
#        test_type="xtra",
8701
#        test_info="Some additional test suites",
8702
#        env={"MTR_FEEDBACK_PLUGIN": "1"},
8703
#        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
8704
#                       "--verbose-restart --force --parallel=4  " +
8705
#                       "--suite=funcs_1,funcs_2,stress,jp ")],
8706
#                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8707
8708
f_p8_rhel71_bintar.addStep(getMTR(
8709
        test_type="xtra-big",
8710
        test_info="Some additional test suites, with --big",
8711
        env={"MTR_FEEDBACK_PLUGIN": "1"},
8712
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
595 by Daniel Bartholomew
automatic maria-master.cfg commit
8713
                       "--verbose-restart --force --parallel=2 --mem " +
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8714
                       "--suite=funcs_1,funcs_2,stress,jp --big " +
8715
                       "--testcase-timeout=45")],
8716
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
8717
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8718
f_p8_rhel71_bintar.addStep(RemoveDirectory(
8719
        name="remove_build", 
8720
        dir=WithProperties("%(distdirname)s"),
8721
        alwaysRun=True));
8722
595 by Daniel Bartholomew
automatic maria-master.cfg commit
8723
f_p8_rhel71_bintar.addStep(ShellCommand(
709 by Daniel Bartholomew
automatic maria-master.cfg commit
8724
    description=["Check shm"],
8725
        command=["sh", "-c", "ls -l /dev/shm/"]))
8726
8727
f_p8_rhel71_bintar.addStep(ShellCommand(
595 by Daniel Bartholomew
automatic maria-master.cfg commit
8728
    description=["Clean up shm"],
8729
        command=["sh", "-c", "rm -rf /dev/shm/var_auto*"]))
8730
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8731
bld_p8_rhel71_bintar = {"name": "p8-rhel71-bintar",
8732
                "slavename": "power8-vlp06",
8733
                "builddir": "power8-vlp06-bintar",
8734
                "factory": f_p8_rhel71_bintar,
8735
                "nextBuild": myNextBuild,
8736
                "category": "main",
8737
                }
8738
8739
8740
#-------------------------------------------------------------------------------
397 by Daniel Bartholomew
automatic maria-master.cfg commit
8741
# RHEL 7.1 P8 ppc64le Bintar Debug Builder
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8742
#-------------------------------------------------------------------------------
8743
f_p8_rhel71_bintar_debug = factory.BuildFactory()
8744
f_p8_rhel71_bintar_debug.addStep(maybe_bzr_checkout)
8745
f_p8_rhel71_bintar_debug.addStep(maybe_git_checkout)
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8746
8747
f_p8_rhel71_bintar_debug.addStep(SetPropertyFromCommand(
8748
        property="distdirname",
8749
        command=["sh", "-c", WithProperties("pwd")],
8750
        alwaysRun=True))
8751
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8752
f_p8_rhel71_bintar_debug.addStep(
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8753
    getCompileStep(["sh", "-c", "git clean -dfX && export PATH=/opt/at8.0/bin:$PATH && cmake . -DCMAKE_BUILD_TYPE=Debug -DMYSQL_MAINTAINER_MODE=ON -DWITHOUT_CONNECT=ON && make -j4 package"],
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8754
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
8755
        "EXTRA_CONFIGS": "--with-embedded-privilege-control",
8756
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
8757
)
8758
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
8759
f_p8_rhel71_bintar_debug.addStep(SetPropertyFromCommand(
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8760
        property="bindistname",
8761
        command=["sh", "-c", WithProperties("basename `ls mariadb*tar.gz`")],
8762
        ))
8763
8764
addPackageUploadStep(f_p8_rhel71_bintar_debug, '"%(bindistname)s"')
8765
846 by Daniel Bartholomew
automatic maria-master.cfg commit
8766
f_p8_rhel71_bintar_debug.addStep(ShellCommand(
8767
    name="cleanup",
8768
    description=["cleanup"],
8769
    descriptionDone=["cleanup"],
8770
    command=["sh", "-c", "rm -rf /dev/shm/var_*"]))
8771
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8772
f_p8_rhel71_bintar_debug.addStep(getMTR(
8773
        test_type="nm",
8774
        test_info="Normal run, no --ps-protocol",
8775
        env={"MTR_FEEDBACK_PLUGIN": "1"},
595 by Daniel Bartholomew
automatic maria-master.cfg commit
8776
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --parallel=2 --mem ")],
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8777
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
8778
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8779
#f_p8_rhel71_bintar_debug.addStep(getMTR(
8780
#        test_type="xtra",
8781
#        test_info="Some additional test suites",
8782
#        env={"MTR_FEEDBACK_PLUGIN": "1"},
8783
#        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
8784
#                       "--verbose-restart --force --parallel=4  " +
8785
#                       "--suite=funcs_1,funcs_2,stress,jp ")],
8786
#                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8787
8788
f_p8_rhel71_bintar_debug.addStep(getMTR(
8789
        test_type="xtra-big",
8790
        test_info="Some additional test suites, with --big",
8791
        env={"MTR_FEEDBACK_PLUGIN": "1"},
8792
        command=["sh", "-c", WithProperties("cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl " +
595 by Daniel Bartholomew
automatic maria-master.cfg commit
8793
                       "--verbose-restart --force --parallel=2 --mem " +
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8794
                       "--suite=funcs_1,funcs_2,stress,jp --big " +
8795
                       "--testcase-timeout=45")],
8796
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
8797
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8798
f_p8_rhel71_bintar_debug.addStep(RemoveDirectory(
8799
        name="remove_build", 
8800
        dir=WithProperties("%(distdirname)s"),
8801
        alwaysRun=True));
8802
595 by Daniel Bartholomew
automatic maria-master.cfg commit
8803
f_p8_rhel71_bintar_debug.addStep(ShellCommand(
8804
    description=["Clean up shm"],
8805
        command=["sh", "-c", "rm -rf /dev/shm/var_auto*"]))
8806
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8807
bld_p8_rhel71_bintar_debug = {"name": "p8-rhel71-bintar-debug",
8808
                "slavename": "power8-vlp06",
8809
                "builddir": "power8-vlp06-bintar-debug",
8810
                "factory": f_p8_rhel71_bintar_debug,
8811
                "nextBuild": myNextBuild,
8812
                "category": "main",
8813
                }
8814
8815
8816
#-------------------------------------------------------------------------------
397 by Daniel Bartholomew
automatic maria-master.cfg commit
8817
# RHEL 7.1 P8 ppc64le RPM Builder
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8818
#-------------------------------------------------------------------------------
8819
8820
f_p8_rhel71_rpm = factory.BuildFactory()
8821
f_p8_rhel71_rpm.addStep(maybe_bzr_checkout)
8822
f_p8_rhel71_rpm.addStep(maybe_git_checkout)
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8823
8824
f_p8_rhel71_rpm.addStep(SetPropertyFromCommand(
8825
        property="distdirname",
8826
        command=["sh", "-c", WithProperties("pwd")],
8827
        alwaysRun=True))
8828
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8829
# There is no epel repo for Red Hat 7.1 P8 LE (Little Endian), so there are no
8830
# jemalloc packages available, so that is disabled below -- dbart (2015-01-22)
8831
f_p8_rhel71_rpm.addStep(
397 by Daniel Bartholomew
automatic maria-master.cfg commit
8832
    #getCompileStep(["sh", "-c", "cmake . -DBUILD_CONFIG=mysql_release -DWITH_JEMALLOC=no -DRPM=rhel7 && make -j4 package VERBOSE=1"],
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8833
    getCompileStep(["sh", "-c", "git clean -dfX && export PATH=/opt/at8.0/bin:$PATH && cmake . -DBUILD_CONFIG=mysql_release -DWITH_JEMALLOC=no -DRPM=rhel7 && make -j4 package VERBOSE=1"],
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8834
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
8835
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
8836
)
8837
8838
f_p8_rhel71_rpm.addStep(ShellCommand(
8839
    description=["archiving"],
8840
    descriptionDone=["archive"],
8841
    command=["sh", "-c", WithProperties("""
8842
set -ex
8843
rm -Rf rpms
8844
mkdir -p rpms
8845
""" + 'cp -rp *.rpm rpms/\n' + """
8846
cd rpms
8847
find . -type f \! -name md5sums.txt|xargs md5sum > md5sums.txt
8848
""")]))
8849
8850
addPackageUploadStep(f_p8_rhel71_rpm, 'rpms')
8851
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8852
f_p8_rhel71_rpm.addStep(RemoveDirectory(
8853
        name="remove_build", 
8854
        dir=WithProperties("%(distdirname)s"),
8855
        alwaysRun=True));
8856
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8857
bld_p8_rhel71_rpm = {"name": "p8-rhel71-rpm",
8858
                "slavename": "power8-vlp06",
8859
                "builddir": "power8-vlp06-rpm",
8860
                "factory": f_p8_rhel71_rpm,
8861
                "nextBuild": myNextBuild,
456 by Daniel Bartholomew
automatic maria-master.cfg commit
8862
                "category": "main",
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8863
                }
8864
539 by Daniel Bartholomew
automatic maria-master.cfg commit
8865
#-------------------------------------------------------------------------------
8866
# RHEL 7.1 P8 ppc64le RPM Builder for Galera
8867
#-------------------------------------------------------------------------------
8868
8869
f_p8_rhel71_rpm_gal = factory.BuildFactory()
8870
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8871
f_p8_rhel71_rpm_gal.addStep(SetPropertyFromCommand(
8872
        property="distdirname",
8873
        command=["sh", "-c", WithProperties("pwd")],
8874
        alwaysRun=True))
8875
539 by Daniel Bartholomew
automatic maria-master.cfg commit
8876
f_p8_rhel71_rpm_gal.addStep(Compile(
8877
        description=["making", "rpms"],
8878
        descriptionDone=["make", "rpms"],
8879
        timeout=7200,
8880
        warningPattern=gccWarningPattern,
8881
        warningExtractor=Compile.warnExtractFromRegexpGroups,
8882
        suppressionFile=WithProperties("compiler_warnings.supp"),
8883
        env={"TERM": "vt102"},
8884
        command=["sh", "-c", WithProperties("""
8885
set -ex
625 by Daniel Bartholomew
automatic maria-master.cfg commit
8886
rm -Rf rpms build
618 by Daniel Bartholomew
automatic maria-master.cfg commit
8887
mkdir rpms
539 by Daniel Bartholomew
automatic maria-master.cfg commit
8888
git clone -b %(branch)s "https://github.com/MariaDB/galera.git" build
8889
cd build
8890
export PATH=/opt/at8.0/bin:$PATH
8891
./scripts/build.sh -p
8892
cp `find *.rpm -maxdepth 1 -type f` ../rpms
8893
cd ..
8894
        """),
8895
        ]))
8896
8897
f_p8_rhel71_rpm_gal.addStep(ShellCommand(
8898
        description=["archiving"],
8899
        descriptionDone=["archive"],
8900
        command=["sh", "-c", WithProperties("""
8901
set -ex
8902
cd rpms
8903
find . -type f \! -name md5sums.txt|xargs md5sum > md5sums.txt
8904
""")]))
8905
8906
addPackageUploadStep(f_p8_rhel71_rpm_gal, 'rpms')
8907
8908
f_p8_rhel71_rpm_gal.addStep(RemoveDirectory(
8909
        name="remove_build", 
8910
        dir=WithProperties("%(distdirname)s"),
8911
        alwaysRun=True));
8912
8913
gal_bld_p8_rhel71_rpm = {"name": "p8-rhel71-rpm-gal",
8914
                "slavename": "power8-vlp06",
8915
                "builddir": "power8-vlp06-rpm-gal",
8916
                "factory": f_p8_rhel71_rpm_gal,
8917
                "nextBuild": myNextBuild,
581 by Daniel Bartholomew
automatic maria-master.cfg commit
8918
                "category": "galera",
539 by Daniel Bartholomew
automatic maria-master.cfg commit
8919
                }
8920
392 by Daniel Bartholomew
automatic maria-master.cfg commit
8921
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
8922
#-------------------------------------------------------------------------------
353 by Daniel Bartholomew
Initial P8 SUSE 12 RPM builder
8923
# SUSE 12 P8 RPM Builder
8924
#-------------------------------------------------------------------------------
8925
f_p8_suse12_rpm = factory.BuildFactory()
8926
f_p8_suse12_rpm.addStep(maybe_bzr_checkout)
8927
f_p8_suse12_rpm.addStep(maybe_git_checkout)
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8928
8929
f_p8_suse12_rpm.addStep(SetPropertyFromCommand(
8930
        property="distdirname",
8931
        command=["sh", "-c", WithProperties("pwd")],
8932
        alwaysRun=True))
8933
353 by Daniel Bartholomew
Initial P8 SUSE 12 RPM builder
8934
f_p8_suse12_rpm.addStep(
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8935
    getCompileStep(["sh", "-c", "git clean -dfX && export PATH=/opt/at8.0/bin:$PATH && cmake . -DBUILD_CONFIG=mysql_release -DWITH_JEMALLOC=no -DRPM=suse12 && make -j4 package VERBOSE=1"],
353 by Daniel Bartholomew
Initial P8 SUSE 12 RPM builder
8936
    env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
358 by Sergei Golubchik
buildbot: remove unused or useless doStepIf filters.
8937
        "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"})
353 by Daniel Bartholomew
Initial P8 SUSE 12 RPM builder
8938
)
8939
8940
f_p8_suse12_rpm.addStep(ShellCommand(
8941
    description=["archiving"],
8942
    descriptionDone=["archive"],
8943
    command=["sh", "-c", WithProperties("""
8944
set -ex
8945
rm -Rf rpms
8946
mkdir -p rpms
8947
""" + 'cp -rp *.rpm rpms/\n' + """
8948
cd rpms
8949
find . -type f \! -name md5sums.txt|xargs md5sum > md5sums.txt
8950
""")]))
8951
8952
addPackageUploadStep(f_p8_suse12_rpm, 'rpms')
8953
530 by Daniel Bartholomew
automatic maria-master.cfg commit
8954
f_p8_suse12_rpm.addStep(RemoveDirectory(
8955
        name="remove_build", 
8956
        dir=WithProperties("%(distdirname)s"),
8957
        alwaysRun=True));
8958
353 by Daniel Bartholomew
Initial P8 SUSE 12 RPM builder
8959
bld_p8_suse12_rpm = {"name": "p8-suse12-rpm",
8960
                "slavename": "power8-vlp05",
8961
                "builddir": "power8-vlp05-rpm",
8962
                "factory": f_p8_suse12_rpm,
8963
                "nextBuild": myNextBuild,
456 by Daniel Bartholomew
automatic maria-master.cfg commit
8964
                "category": "main",
353 by Daniel Bartholomew
Initial P8 SUSE 12 RPM builder
8965
                }
8966
8967
8968
#-------------------------------------------------------------------------------
625 by Daniel Bartholomew
automatic maria-master.cfg commit
8969
# SUSE 12 P8 RPM Builder for Galera
8970
#-------------------------------------------------------------------------------
8971
8972
f_p8_suse12_rpm_gal = factory.BuildFactory()
8973
905 by Daniel Bartholomew
automatic maria-master.cfg commit
8974
f_p8_suse12_rpm_gal.addStep(SetPropertyFromCommand(
8975
        property="distdirname",
8976
        command=["sh", "-c", WithProperties("pwd")],
8977
        alwaysRun=True))
8978
625 by Daniel Bartholomew
automatic maria-master.cfg commit
8979
f_p8_suse12_rpm_gal.addStep(Compile(
8980
        description=["making", "rpms"],
8981
        descriptionDone=["make", "rpms"],
8982
        timeout=7200,
8983
        warningPattern=gccWarningPattern,
8984
        warningExtractor=Compile.warnExtractFromRegexpGroups,
8985
        suppressionFile=WithProperties("compiler_warnings.supp"),
8986
        env={"TERM": "vt102"},
8987
        command=["sh", "-c", WithProperties("""
8988
set -ex
8989
rm -Rf rpms build
8990
mkdir rpms
8991
git clone -b %(branch)s "https://github.com/MariaDB/galera.git" build
8992
cd build
8993
export PATH=/opt/at8.0/bin:$PATH
8994
./scripts/build.sh -p
8995
cp `find *.rpm -maxdepth 1 -type f` ../rpms
8996
cd ..
8997
        """),
8998
        ]))
8999
9000
f_p8_suse12_rpm_gal.addStep(ShellCommand(
9001
        description=["archiving"],
9002
        descriptionDone=["archive"],
9003
        command=["sh", "-c", WithProperties("""
9004
set -ex
9005
cd rpms
9006
find . -type f \! -name md5sums.txt|xargs md5sum > md5sums.txt
9007
""")]))
9008
9009
addPackageUploadStep(f_p8_suse12_rpm_gal, 'rpms')
9010
9011
f_p8_suse12_rpm_gal.addStep(RemoveDirectory(
9012
        name="remove_build", 
9013
        dir=WithProperties("%(distdirname)s"),
9014
        alwaysRun=True));
9015
9016
gal_bld_p8_suse12_rpm = {"name": "p8-suse12-rpm-gal",
9017
                "slavename": "power8-vlp05",
9018
                "builddir": "power8-vlp05-rpm-gal",
9019
                "factory": f_p8_suse12_rpm_gal,
9020
                "nextBuild": myNextBuild,
9021
                "category": "galera",
9022
                }
9023
9024
9025
#-------------------------------------------------------------------------------
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
9026
# BSD 9 Bintar Builder
9027
#-------------------------------------------------------------------------------
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
9028
f_bsd9_64_bintar = factory.BuildFactory()
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
9029
f_bsd9_64_bintar.addStep(
9030
  FileDownload(
9031
  mastersrc=WithProperties("%(tarballpath)s"),
9032
  slavedest=WithProperties("%(distname)s"),
385 by Kristian Nielsen
Increase upload block size in an attempt to get better transfer speed.
9033
  blocksize=524288,
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
9034
  doStepIf=branch_is_5_5_or_later
9035
))
9036
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
9037
f_bsd9_64_bintar.addStep(ShellCommand(
9038
        description="untarring", descriptionDone="untar",
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
9039
        doStepIf=branch_is_5_5_or_later,
9040
        command=["sh", "-c", 
9041
            WithProperties("rm -Rf %(distdirname)s && gzip -dc %(distname)s | gtar xf -")]))
9042
9043
f_bsd9_64_bintar.addStep(
9044
   Compile(command=["sh", "-c", WithProperties("cd %(distdirname)s && BUILD/compile-pentium64-max --extra-configs=--without-plugin_innodb_plugin")],
9045
      logfiles={"config.log" : WithProperties("%(distdirname)s/config.log")},
9046
      doStepIf=branch_is_5_5_or_later,
9047
      env={"EXTRA_FLAGS": "-DFORCE_INIT_OF_VARS",
9048
           "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}))
9049
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
9050
f_bsd9_64_bintar.addStep(ShellCommand(
9051
        description="packaging", descriptionDone="package",
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
9052
      doStepIf=branch_is_5_5_or_later,
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
9053
        command=["sh", "-c", WithProperties("""
9054
set -ex
9055
cd %(distdirname)s
9056
scripts/make_binary_distribution
9057
ORIG_TAR="`echo mariadb-*.tar.gz`"
9058
ORIG_DIR="`basename ${ORIG_TAR} .tar.gz`"
9059
NEW_DIR="`echo "${ORIG_DIR}" | sed -e 's/-MariaDB//'`"
9060
NEW_TAR="${NEW_DIR}.tar.gz"
9061
if [ "$ORIG_DIR" != "$NEW_DIR" ] ; then
9062
  rm -Rf $ORIG_DIR
9063
  gtar zxf $ORIG_TAR
9064
  mv $ORIG_DIR "${NEW_DIR}"
9065
  gtar zcf "${NEW_TAR}" "${NEW_DIR}/"
9066
fi
9067
echo "${NEW_TAR}" > ../bindistname.txt
9068
""")]))
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
9069
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
9070
f_bsd9_64_bintar.addStep(SetPropertyFromCommand(
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
9071
        property="bindistname",
9072
        command=["cat", "bindistname.txt"],
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
9073
        doStepIf=branch_is_5_5_or_later
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
9074
        ))
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
9075
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
9076
addPackageArchiveStep(f_bsd9_64_bintar, '"%(distdirname)s/%(bindistname)s"', "%(tarbuildnum)s",
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
9077
  branch_is_5_5_or_later)
9078
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
9079
f_bsd9_64_bintar.addStep(getMTR(
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
9080
        doStepIf=branch_is_5_5_or_later,
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
9081
        test_type="nm",
9082
        test_info="Normal run, no --ps-protocol",
9083
        env={"MTR_FEEDBACK_PLUGIN": "1"},
316 by Daniel Bartholomew
automatic maria-master.cfg commit
9084
        command=["sh", "-c", WithProperties("(killall mysqld || true) && cd %(distdirname)s/mysql-test && exec perl mysql-test-run.pl  --verbose-restart --force --retry=3 ")],
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
9085
                 mtr_subdir=WithProperties("%(distdirname)s/mysql-test")))
9086
9087
bld_bsd9_64 = {"name": "bsd9-64",
9088
                "slavename": "bsd9",
9089
                "builddir": "bsd9",
9090
                "factory": f_bsd9_64_bintar,
9091
                "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
9092
                "category": "experimental",
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
9093
                }
9094
343 by Daniel Bartholomew
Added initial P8 RHEL RPM builders
9095
#-------------------------------------------------------------------------------
9096
#-------------------------------------------------------------------------------
9097
#-------------------------------------------------------------------------------
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
9098
99 by Kristian Nielsen
RQG changes.
9099
f_kvm_dgcov_jaunty_amd64= factory.BuildFactory()
9100
f_kvm_dgcov_jaunty_amd64.addStep(Compile(
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
9101
        description=["compiling"],
9102
        descriptionDone=["compile"],
9103
        timeout = 3600,
99 by Kristian Nielsen
RQG changes.
9104
        logfiles={"kernel": "kernel_2250.log"},
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
9105
        warningPattern=gccWarningPattern,
9106
        warningExtractor=Compile.warnExtractFromRegexpGroups,
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
9107
        env={"TERM": "vt102"},
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
9108
        command=["runvm", "--port=2250", "--user=buildbot", "-cpu=qemu64", "--smp=4", "--logfile=kernel_2250.log", "/kvm/vms/vm-lucid-amd64-dgcov.qcow2",
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
9109
        WithProperties("""
9110
set -ex
9111
rm -Rf build
237 by Sergei Golubchik
misc changes
9112
time bzr co "lp:~maria-captains/maria/%(branch)s" build
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
9113
cd build
9114
BUILD/autorun.sh
9115
CFLAGS='-fprofile-arcs -ftest-coverage -DDISABLE_TAO_ASM -DHAVE_gcov -O0 -g  -Wno-unused-parameter' CXXFLAGS='-fprofile-arcs -ftest-coverage  -DDISABLE_TAO_ASM -DHAVE_gcov  -O0 -g  -Wno-unused-parameter' LDFLAGS='-fprofile-arcs -ftest-coverage' ./configure --enable-assembler --with-extra-charsets=complex --enable-thread-safe-client --with-big-tables --with-plugin-aria --with-aria-tmp-tables --with-readline --with-debug --with-ssl --with-plugins=max --with-embedded-server --with-libevent --with-zlib-dir=bundled --enable-local-infile
9116
make -j6
9117
""")]))
99 by Kristian Nielsen
RQG changes.
9118
f_kvm_dgcov_jaunty_amd64.addStep(Test(
95 by Kristian Nielsen
Increase buildCacheSize, giving an enormous speed boost for grid display.
9119
            description=["unit", "testing"],
9120
            descriptionDone=["unit", "test"],
99 by Kristian Nielsen
RQG changes.
9121
            logfiles={"kernel": "kernel_2250.log"},
9122
            timeout=7200,
148 by Kristian Nielsen
Some Buildbot fixes for 5.5
9123
            doStepIf=branch_is_5_123,
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
9124
            env={"TERM": "vt102"},
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
9125
            command=["runvm", "--port=2250", "--user=buildbot", "--cpu=qemu64", "--smp=4", "--logfile=kernel_2250.log", "/kvm/vms/vm-lucid-amd64-dgcov.qcow2",
95 by Kristian Nielsen
Increase buildCacheSize, giving an enormous speed boost for grid display.
9126
                     "cd build && make test-unit"]))
99 by Kristian Nielsen
RQG changes.
9127
f_kvm_dgcov_jaunty_amd64.addStep(getMTR(
95 by Kristian Nielsen
Increase buildCacheSize, giving an enormous speed boost for grid display.
9128
            test_type="emb",
99 by Kristian Nielsen
RQG changes.
9129
            test_info="Embedded with",
9130
            logfiles={"kernel": "kernel_2250.log"},
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
9131
            env={"TERM": "vt102"},
143 by Kristian Nielsen
Slave naming.
9132
            command=["runvm", "--port=2250", "--memory=3072", "--user=buildbot", "--cpu=qemu64", "--smp=4", "--logfile=kernel_2250.log", "/kvm/vms/vm-lucid-amd64-dgcov.qcow2",
212 by Kristian Nielsen
Misc. changes to buildbot config.
9133
                     "cd build/mysql-test && perl mysql-test-run.pl  --verbose-restart --embedded-server --mem --force --retry=3 --parallel=2 --testcase-timeout=45"]))
168.1.5 by Kristian Nielsen
Windows package upload.
9134
#f_kvm_dgcov_jaunty_amd64.addStep(getMTR(
9135
#            test_type="pbxt",
9136
#            test_info="PBXT test suite with",
9137
#            doStepIf=branch_is_5_123,
9138
#            logfiles={"kernel": "kernel_2250.log"},
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
9139
#            env={"TERM": "vt102"},
168.1.5 by Kristian Nielsen
Windows package upload.
9140
#            command=["runvm", "--port=2250", "--memory=3072", "--user=buildbot", "--cpu=qemu64", "--smp=4", "--logfile=kernel_2250.log", "/kvm/vms/vm-lucid-amd64-dgcov.qcow2",
212 by Kristian Nielsen
Misc. changes to buildbot config.
9141
#                     "cd build/mysql-test && perl mysql-test-run.pl  --verbose-restart --suite=pbxt --mysqld=--default-storage-engine=pbxt --mem --parallel=2 --force --retry=3"]))
99 by Kristian Nielsen
RQG changes.
9142
f_kvm_dgcov_jaunty_amd64.addStep(getMTR(
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
9143
            test_type="nm",
99 by Kristian Nielsen
RQG changes.
9144
            test_info="Normal run, no --ps-protocol",
9145
            logfiles={"kernel": "kernel_2250.log"},
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
9146
            env={"TERM": "vt102"},
143 by Kristian Nielsen
Slave naming.
9147
            command=["runvm", "--port=2250", "--memory=3072", "--user=buildbot", "--cpu=qemu64", "--smp=4", "--logfile=kernel_2250.log", "/kvm/vms/vm-lucid-amd64-dgcov.qcow2",
212 by Kristian Nielsen
Misc. changes to buildbot config.
9148
                     "cd build/mysql-test && MTR_FEEDBACK_PLUGIN=1 perl mysql-test-run.pl  --verbose-restart --mem --testcase-timeout=45 --parallel=2 --force --retry=3 --max-save-core=0 --max-save-datadir=1"]))
99 by Kristian Nielsen
RQG changes.
9149
f_kvm_dgcov_jaunty_amd64.addStep(getMTR(
95 by Kristian Nielsen
Increase buildCacheSize, giving an enormous speed boost for grid display.
9150
            test_type="pm",
9151
            test_info="Normal run, with --ps-protocol",
99 by Kristian Nielsen
RQG changes.
9152
            logfiles={"kernel": "kernel_2250.log"},
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
9153
            env={"TERM": "vt102"},
143 by Kristian Nielsen
Slave naming.
9154
            command=["runvm", "--port=2250", "--memory=3072", "--user=buildbot", "--cpu=qemu64", "--smp=4", "--logfile=kernel_2250.log", "/kvm/vms/vm-lucid-amd64-dgcov.qcow2",
212 by Kristian Nielsen
Misc. changes to buildbot config.
9155
                     "cd build/mysql-test && perl mysql-test-run.pl  --verbose-restart --ps-protocol --mem --parallel=2 --force --retry=3 --max-save-core=0 --max-save-datadir=1"]))
99 by Kristian Nielsen
RQG changes.
9156
f_kvm_dgcov_jaunty_amd64.addStep(getMTR(
95 by Kristian Nielsen
Increase buildCacheSize, giving an enormous speed boost for grid display.
9157
            test_type="xtra",
99 by Kristian Nielsen
RQG changes.
9158
            test_info="Some additional test suites",
9159
            logfiles={"kernel": "kernel_2250.log"},
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
9160
            env={"TERM": "vt102"},
143 by Kristian Nielsen
Slave naming.
9161
            command=["runvm", "--port=2250", "--memory=3072", "--user=buildbot", "--cpu=qemu64", "--smp=4", "--logfile=kernel_2250.log", "/kvm/vms/vm-lucid-amd64-dgcov.qcow2",
212 by Kristian Nielsen
Misc. changes to buildbot config.
9162
                     "cd build/mysql-test && perl mysql-test-run.pl  --verbose-restart --suite=funcs_1,funcs_2,stress,jp --mem --parallel=2 --force --retry=3 --testcase-timeout=45 --max-save-core=0 --max-save-datadir=1"]))
99 by Kristian Nielsen
RQG changes.
9163
f_kvm_dgcov_jaunty_amd64.addStep(Test(
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
9164
        description=["dgcov'ing"],
9165
        descriptionDone=["dgcov"],
99 by Kristian Nielsen
RQG changes.
9166
        logfiles={"kernel": "kernel_2250.log"},
335.1.1 by Kristian Nielsen
When dgcov.pl finds not covered lines, mark that as a warning but not a
9167
        haltOnFailure=False, flunkOnFailure=False, warnOnFailure=True,
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
9168
        env={"TERM": "vt102"},
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
9169
        command=["runvm", "--port=2250", "--user=buildbot", "--cpu=qemu64", "--smp=4", "--logfile=kernel_2250.log", "/kvm/vms/vm-lucid-amd64-dgcov.qcow2",
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
9170
                 "cd build && dgcov.pl last:1"]))
9171
9172
bld_kvm_dgcov_jaunty_i386 = {"name": "kvm-dgcov-jaunty-i386",
212 by Kristian Nielsen
Misc. changes to buildbot config.
9173
                             "slavenames": kvm_slaves,
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
9174
                             "builddir": "kvm-dgcov-jaunty-i386",
99 by Kristian Nielsen
RQG changes.
9175
                             "factory": f_kvm_dgcov_jaunty_amd64,
120 by Kristian Nielsen
Buildbot: configure some basic priority scheduling of slaves, builders, and builds.
9176
                             "nextBuild": myNextBuild,
746 by Daniel Bartholomew
automatic maria-master.cfg commit
9177
                             "category": "experimental",
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
9178
                             }
9179
322 by Daniel Bartholomew
automatic maria-master.cfg commit
9180
def getFulltest(buildcmd, vm_img, port, slavenames=kvm_slaves):
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9181
    kvm_log = "kernel_"+port+".log"
9182
    kvm_args = ["/usr/local/bin/runvm",
9183
                "--port="+port, "--user=buildbot",
9184
                "--smp=4", "--cpu=qemu64",
9185
                "--logfile="+kvm_log,
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9186
                "--memory=3584",
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9187
                "--kvm=-hdb", "--kvm=vm-blank-20G.qcow2",
9188
                ]
9189
    tmp_img = "vm-tmp-"+port+".qcow2"
725 by Daniel Bartholomew
automatic maria-master.cfg commit
9190
266 by Nirbhay Choubey
* Modified "apt-get install" command to install
9191
    def mtr_step(type, info, args, doRun= True):
334 by Daniel Bartholomew
automatic maria-master.cfg commit
9192
        return getMTR(
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9193
          test_type=type, test_info=info,
9194
          logfiles={"kernel": kvm_log},
9195
          mtr_subdir=".",    # Where we scp vardir to
168.1.5 by Kristian Nielsen
Windows package upload.
9196
          timeout=5000,
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
9197
          env={"TERM": "vt102"},
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9198
          command=kvm_args + [tmp_img,
9199
            WithProperties("""
9200
set -ex
9201
sudo mount /dev/sdb1 /mnt
9202
sudo sysctl fs.aio-max-nr=1048576
9203
cd "buildbot/build/%(distdirname)s/mysql-test"
9204
""" +
212 by Kristian Nielsen
Misc. changes to buildbot config.
9205
              "MTR_FEEDBACK_PLUGIN=1 perl mysql-test-run.pl  --verbose-restart " +
168.1.6 by Kristian Nielsen
dd 10.0 main tree.
9206
              "--force --retry=3 --max-save-core=0 --max-save-datadir=1 " + args + "\n"),
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9207
            WithProperties(
9208
              "!= rm -Rf var/ ; scp -rp -P " + port + " " + kvm_scpopt +
168.1.4 by Kristian Nielsen
Move RPM and bintar builders to the "cloud" approach, automatically rsync'ing
9209
              " buildbot@localhost:buildbot/build/%(distdirname)s/mysql-test/var/ . || :")
266 by Nirbhay Choubey
* Modified "apt-get install" command to install
9210
          ],
9211
          doStepIf=doRun)
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9212
9213
    f= factory.BuildFactory()
9214
9215
    # Delete ../build/* rather than simply * just to be a little safer if we
9216
    # somehow end up running in wrong directory!
9217
    f.addStep(ShellCommand(
9218
        description=["cleaning", "build", "dir"],
9219
        descriptionDone=["clean", "build", "dir"],
9220
        command=["sh", "-c", "rm -Rf ../build/*"]))
9221
9222
    f.addStep(ShellCommand(
9223
        description=["rsyncing", "VM"],
9224
        descriptionDone=["rsync", "VM"],
302 by Daniel Bartholomew
Change kvm rsync host from terrier.askmonty.org to bb01.mariadb.net
9225
        doStepIf=(lambda(step): step.getProperty("slavename") != "bb01"),
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9226
        haltOnFailure=True,
471 by Daniel Bartholomew
automatic maria-master.cfg commit
9227
        command=["rsync", "-a", "-v", "-L",
302 by Daniel Bartholomew
Change kvm rsync host from terrier.askmonty.org to bb01.mariadb.net
9228
                 "bb01.mariadb.net::kvm/vms/"+vm_img,
9229
                 "bb01.mariadb.net::kvm/vms/vm-blank-20G.qcow2",
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9230
                 "/kvm/vms/"]))
9231
9232
    f.addStep(FileDownload(
9233
        mastersrc=WithProperties("%(tarballpath)s"),
385 by Kristian Nielsen
Increase upload block size in an attempt to get better transfer speed.
9234
        slavedest=WithProperties("%(distname)s"),
9235
        blocksize=524288,
9236
        ))
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9237
9238
    # Extract the compiler warning suppressions file from the source tarball.
9239
    f.addStep(ShellCommand(
9240
        description=["getting", ".supp"],
9241
        descriptionDone=["get", ".supp"],
9242
        command=["sh", "-c", WithProperties("""
9243
qemu-img create -b /kvm/vms/vm-blank-20G.qcow2 -f qcow2 vm-blank-20G.qcow2
688 by Daniel Bartholomew
automatic maria-master.cfg commit
9244
#tar zxf "%(distname)s" --strip 2 "$(basename %(distname)s .tar.gz)/support-files/compiler_warnings.supp"
9245
tar zxf "/tmp/buildcache/%(tarbuildnum)s:%(distname)s" --strip 2 "$(basename %(distname)s .tar.gz)/support-files/compiler_warnings.supp"
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9246
exit 0  # best-effort, not fatal if no suppression file
9247
""")]))
9248
9249
    f.addStep(Compile(
744 by Daniel Bartholomew
automatic maria-master.cfg commit
9250
	timeout=7200,
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9251
        description=["building"],
9252
        descriptionDone=["build"],
9253
        logfiles={"kernel": kvm_log},
9254
        warningPattern=gccWarningPattern,
9255
        warningExtractor=Compile.warnExtractFromRegexpGroups,
9256
        suppressionFile=WithProperties("compiler_warnings.supp"),
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
9257
        env={"TERM": "vt102"},
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9258
        command= kvm_args +
9259
        ["--base-image=/kvm/vms/"+vm_img, tmp_img,
9260
        "rm -Rf buildbot && sudo mount /dev/sdb1 /mnt && sudo mkdir /mnt/buildbot && sudo chown buildbot:buildbot /mnt/buildbot && ln -s /mnt/buildbot buildbot",
9261
        WithProperties("= scp "+kvm_scpopt+" -P "+port+" %(distname)s buildbot@localhost:buildbot/"),
9262
        WithProperties("""
9263
set -ex
9264
mkdir buildbot/build
9265
cd buildbot/build
9266
tar zxf "../%(distname)s"
9267
cd "%(distdirname)s"
9268
""" + buildcmd + "\n"),
9269
         ]))
9270
9271
    f.addStep(Test(
9272
        timeout=14400,
9273
        description=["unit", "testing"],
9274
        descriptionDone=["unit", "test"],
9275
        doStepIf=branch_is_5_123,
9276
        logfiles={"kernel": kvm_log},
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
9277
        env={"TERM": "vt102"},
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9278
        command=kvm_args + [tmp_img,
9279
        WithProperties("""
9280
set -ex
9281
sudo mount /dev/sdb1 /mnt
9282
cd "buildbot/build/%(distdirname)s"
9283
make test-unit
9284
""")]))
9285
9286
    f.addStep(mtr_step("emb", "Embedded",
266 by Nirbhay Choubey
* Modified "apt-get install" command to install
9287
        "--mem --embedded-server --parallel=4",
279 by Daniel Bartholomew
automatic maria-master.cfg commit
9288
        branch_is_not_galera))
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9289
9290
    f.addStep(mtr_step("n", "Normal (no --ps-protocol)",
9291
        "--mem --parallel=4"))
9292
9293
    f.addStep(mtr_step("p", "ps-protocol",
9294
        "--mem --parallel=4 --ps-protocol"))
9295
9296
    f.addStep(mtr_step("xtra", "Some additional test suites",
9297
        "--mem --suite=funcs_1,funcs_2,stress,jp --mem --parallel=4"))
393 by Daniel Bartholomew
Addition for MDEV-5139
9298
    
9299
    f.addStep(mtr_step("ps-embedded", "--ps --embedded",
9300
        "--ps --embedded --mem --parallel=4"))
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9301
9302
    return f
9303
9304
744 by Daniel Bartholomew
automatic maria-master.cfg commit
9305
def getBigtest(buildcmd, vm_img, port, slavenames=kvm_slaves):
9306
    kvm_log = "kernel_"+port+".log"
9307
    kvm_args = ["/usr/local/bin/runvm",
9308
                "--port="+port, "--user=buildbot",
9309
                "--smp=4", "--cpu=qemu64",
9310
                "--logfile="+kvm_log,
9311
                "--memory=3584",
9312
                "--kvm=-hdb", "--kvm=vm-blank-20G.qcow2",
9313
                ]
9314
    tmp_img = "vm-tmp-"+port+".qcow2"
9315
9316
    def mtr_step(type, info, args, doRun= True):
9317
        return getMTR(
9318
          test_type=type, test_info=info,
9319
          logfiles={"kernel": kvm_log},
9320
          mtr_subdir=".",    # Where we scp vardir to
9321
          timeout=5000,
9322
          env={"TERM": "vt102"},
9323
          command=kvm_args + [tmp_img,
9324
            WithProperties("""
9325
set -ex
9326
sudo mount /dev/sdb1 /mnt
9327
sudo sysctl fs.aio-max-nr=1048576
9328
cd "buildbot/build/%(distdirname)s/mysql-test"
9329
""" +
9330
              "MTR_FEEDBACK_PLUGIN=1 perl mysql-test-run.pl  --verbose-restart " +
9331
              "--force --retry=3 --max-save-core=0 --max-save-datadir=1 " + args + "\n"),
9332
            WithProperties(
9333
              "!= rm -Rf var/ ; scp -rp -P " + port + " " + kvm_scpopt +
9334
              " buildbot@localhost:buildbot/build/%(distdirname)s/mysql-test/var/ . || :")
9335
          ],
9336
          doStepIf=doRun)
9337
9338
    f= factory.BuildFactory()
9339
9340
    # Delete ../build/* rather than simply * just to be a little safer if we
9341
    # somehow end up running in wrong directory!
9342
    f.addStep(ShellCommand(
9343
        description=["cleaning", "build", "dir"],
9344
        descriptionDone=["clean", "build", "dir"],
9345
        command=["sh", "-c", "rm -Rf ../build/*"]))
9346
9347
    f.addStep(ShellCommand(
9348
        description=["rsyncing", "VM"],
9349
        descriptionDone=["rsync", "VM"],
9350
        doStepIf=(lambda(step): step.getProperty("slavename") != "bb01"),
9351
        haltOnFailure=True,
9352
        command=["rsync", "-a", "-v", "-L",
9353
                 "bb01.mariadb.net::kvm/vms/"+vm_img,
9354
                 "bb01.mariadb.net::kvm/vms/vm-blank-20G.qcow2",
9355
                 "/kvm/vms/"]))
9356
9357
    f.addStep(FileDownload(
9358
        mastersrc=WithProperties("%(tarballpath)s"),
9359
        slavedest=WithProperties("%(distname)s"),
9360
        blocksize=524288,
9361
        ))
9362
9363
    # Extract the compiler warning suppressions file from the source tarball.
9364
    f.addStep(ShellCommand(
9365
        description=["getting", ".supp"],
9366
        descriptionDone=["get", ".supp"],
9367
        command=["sh", "-c", WithProperties("""
9368
qemu-img create -b /kvm/vms/vm-blank-20G.qcow2 -f qcow2 vm-blank-20G.qcow2
9369
#tar zxf "%(distname)s" --strip 2 "$(basename %(distname)s .tar.gz)/support-files/compiler_warnings.supp"
9370
tar zxf "/tmp/buildcache/%(tarbuildnum)s:%(distname)s" --strip 2 "$(basename %(distname)s .tar.gz)/support-files/compiler_warnings.supp"
9371
exit 0  # best-effort, not fatal if no suppression file
9372
""")]))
9373
9374
    f.addStep(Compile(
9375
	timeout=7200,
9376
        description=["building"],
9377
        descriptionDone=["build"],
9378
        logfiles={"kernel": kvm_log},
9379
        warningPattern=gccWarningPattern,
9380
        warningExtractor=Compile.warnExtractFromRegexpGroups,
9381
        suppressionFile=WithProperties("compiler_warnings.supp"),
9382
        env={"TERM": "vt102"},
9383
        command= kvm_args +
9384
        ["--base-image=/kvm/vms/"+vm_img, tmp_img,
9385
        "rm -Rf buildbot && sudo mount /dev/sdb1 /mnt && sudo mkdir /mnt/buildbot && sudo chown buildbot:buildbot /mnt/buildbot && ln -s /mnt/buildbot buildbot",
9386
        WithProperties("= scp "+kvm_scpopt+" -P "+port+" %(distname)s buildbot@localhost:buildbot/"),
9387
        WithProperties("""
9388
set -ex
9389
mkdir buildbot/build
9390
cd buildbot/build
9391
tar zxf "../%(distname)s"
9392
cd "%(distdirname)s"
9393
""" + buildcmd + "\n"),
9394
         ]))
9395
9396
    f.addStep(mtr_step("emb-big", "Embedded with --big",
9397
        "--embedded-server --big --big --parallel=2 --testcase-timeout=120",
9398
        branch_is_not_galera))
9399
9400
    f.addStep(mtr_step("n-big", "Big (no --ps-protocol)",
9401
        "--big --big --parallel=2 --testcase-timeout=120"))
9402
9403
    f.addStep(mtr_step("p-big", "ps-protocol big)",
9404
        "--big --big --ps-protocol --parallel=2 --testcase-timeout=120"))
9405
9406
    f.addStep(mtr_step("xtra-big", "Some additional test suites, with --big",
9407
        "--suite=funcs_1,funcs_2,stress,jp --big --big --parallel=2 " +
9408
                       "--testcase-timeout=120"))
9409
9410
    return f
9411
9412
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9413
f_kvm_fulltest= getFulltest(
903 by Sergei Golubchik
switch fulltest builders from precise to xenial
9414
    'cmake . -DBUILD_CONFIG=mysql_release -DWITH_SSL=system -DWITH_JEMALLOC=auto -DHAVE_EMBEDDED_PRIVILEGE_CONTROL=1 && make VERBOSE=1',
9415
    "vm-xenial-amd64-build.qcow2",
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9416
    "2271"
9417
    )
9418
168.1.6 by Kristian Nielsen
dd 10.0 main tree.
9419
# Somehow terrier2 does not seem to be able to shutdown cleanly the VM and
9420
# ends up corrupting the build, causing wierd failures about missing
9421
# my_safe_process in MTR runs. So don't use that host.
686 by Daniel Bartholomew
automatic maria-master.cfg commit
9422
9423
# We tried to add bb04 to the list of slaves, but it didn't work, 
9424
# see MDEV-10254 for more details
790 by Daniel Bartholomew
automatic maria-master.cfg commit
9425
# There was bb05 here, removed (temporarily?)
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9426
bld_kvm_fulltest= {
9427
    "name": "kvm-fulltest",
790 by Daniel Bartholomew
automatic maria-master.cfg commit
9428
    "slavenames": ["bb03", "bb04", "knielsen-kvm-x86", "centos56-quality2"],
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9429
    "builddir": "kvm-fulltest",
9430
    "factory": f_kvm_fulltest,
9431
    "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
9432
    "category": "main",
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9433
    }
9434
322 by Daniel Bartholomew
automatic maria-master.cfg commit
9435
# Omit terrier2 from the list of buildslaves. The VM image does not work
9436
# on terrier2 for some reason.
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9437
f_kvm_fulltest2= getFulltest(
729 by Daniel Bartholomew
automatic maria-master.cfg commit
9438
    'cmake . -DCMAKE_BUILD_TYPE=Debug -DWITH_EMBEDDED_SERVER=1 -DHAVE_EMBEDDED_PRIVILEGE_CONTROL=1 && make VERBOSE=1',
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9439
    "vm-precise-i386-fulltest.qcow2",
735 by Daniel Bartholomew
automatic maria-master.cfg commit
9440
    "2272"
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9441
    )
9442
790 by Daniel Bartholomew
automatic maria-master.cfg commit
9443
# There was bb05 here, removed (temporarily?)
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9444
bld_kvm_fulltest2= {
9445
    "name": "kvm-fulltest2",
790 by Daniel Bartholomew
automatic maria-master.cfg commit
9446
    "slavenames": ["knielsen-kvm-x86", "centos56-quality2", "bb03", "bb04"],
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9447
    "builddir": "kvm-fulltest2",
9448
    "factory": f_kvm_fulltest2,
9449
    "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
9450
    "category": "main",
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9451
    }
9452
744 by Daniel Bartholomew
automatic maria-master.cfg commit
9453
f_kvm_fulltest_big= getBigtest(
903 by Sergei Golubchik
switch fulltest builders from precise to xenial
9454
    'cmake . -DBUILD_CONFIG=mysql_release -DWITH_SSL=system -DWITH_JEMALLOC=auto -DHAVE_EMBEDDED_PRIVILEGE_CONTROL=1 -DWITH_ASAN=ON && make VERBOSE=1',
9455
    "vm-xenial-amd64-build.qcow2",
744 by Daniel Bartholomew
automatic maria-master.cfg commit
9456
    "2327"
9457
    )
9458
9459
bld_kvm_fulltest_big= {
9460
    "name": "kvm-fulltest-big",
9461
    "slavenames": ["knielsen-kvm-x86", "centos56-quality2"],
9462
    "builddir": "kvm-fulltest-big",
9463
    "factory": f_kvm_fulltest_big,
9464
    "nextBuild": myNextBuild,
9465
    "category": "main",
9466
    }
9467
9468
f_kvm_fulltest2_big= getBigtest(
9469
    'cmake . -DCMAKE_BUILD_TYPE=Debug -DWITH_EMBEDDED_SERVER=1 -DHAVE_EMBEDDED_PRIVILEGE_CONTROL=1 && make VERBOSE=1',
9470
    "vm-precise-i386-fulltest.qcow2",
9471
    "2328"
9472
    )
9473
9474
bld_kvm_fulltest2_big= {
9475
    "name": "kvm-fulltest2-big",
9476
    "slavenames": ["knielsen-kvm-x86", "centos56-quality2"],
9477
    "builddir": "kvm-fulltest2-big",
9478
    "factory": f_kvm_fulltest2_big,
9479
    "nextBuild": myNextBuild,
9480
    "category": "main",
9481
    }
9482
9483
725 by Daniel Bartholomew
automatic maria-master.cfg commit
9484
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9485
def getConnectorCBuilder(name, kvm_image, port, cpu):
9486
    bin_fact = factory.BuildFactory()
9487
    # Delete ../build/* rather than simply * just to be a little safer if we
9488
    # somehow end up running in wrong directory!
9489
    bin_fact.addStep(ShellCommand(
9490
        description=["cleaning", "build", "dir"],
9491
        descriptionDone=["clean", "build", "dir"],
9492
        command=["sh", "-c", "rm -Rf ../build/*"]))
9493
    bin_fact.addStep(ShellCommand(
9494
        description=["rsyncing", "VMs"],
9495
        descriptionDone=["rsync", "VMs"],
302 by Daniel Bartholomew
Change kvm rsync host from terrier.askmonty.org to bb01.mariadb.net
9496
        doStepIf=(lambda(step): step.getProperty("slavename") != "bb01"),
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9497
        haltOnFailure=True,
471 by Daniel Bartholomew
automatic maria-master.cfg commit
9498
        command=["rsync", "-a", "-v", "-L",
302 by Daniel Bartholomew
Change kvm rsync host from terrier.askmonty.org to bb01.mariadb.net
9499
                 "bb01.mariadb.net::kvm/vms/"+kvm_image+"-build.qcow2",
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9500
                 "/kvm/vms/"]))
9501
    bin_fact.addStep(Compile(
9502
        description=["making", "bintar"],
9503
        descriptionDone=["make", "bintar"],
9504
        timeout=3600,
9505
        logfiles={"kernel": "kernel_"+port+".log"},
213 by Kristian Nielsen
Set TERM=vt102for runvm invocations, to avoid./mtr thinking that it's running in an xterm and messing up the log with attempts at progress report escape sequences.
9506
        env={"TERM": "vt102"},
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9507
        command=["runvm", "--port="+port, "--user=buildbot", "--cpu="+cpu, "--smp=4", "--logfile=kernel_"+port+".log", "--base-image=/kvm/vms/"+kvm_image+"-build.qcow2", "--work-image=/dev/shm/vm-tmp-"+port+".qcow2", "vm-tmp-"+port+".qcow2",
9508
        "rm -Rf buildbot && mkdir buildbot",
9509
        WithProperties("""
9510
set -ex
9511
cd buildbot
9512
rm -Rf build
9513
bzr co lp:mariadb-native-client build
9514
cd build
9515
cmake .
9516
make package
198 by Daniel Bartholomew
Various additions and modifications to add new trees, fix issues, and so on.
9517
echo *.tar.gz > ../bindistname.txt
9518
#mv "$(cat ../../bindistname.txt)" ../
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9519
"""),
9520
        WithProperties("= scp -P "+port+" "+kvm_scpopt+" 'buildbot@localhost:buildbot/build/*.tar.gz' ."),
9521
        "= scp -P "+port+" "+kvm_scpopt+" buildbot@localhost:buildbot/bindistname.txt .",
9522
]))
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
9523
    bin_fact.addStep(SetPropertyFromCommand(
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9524
        property="bindistname",
9525
        command=["cat", "bindistname.txt"],
9526
        ))
198 by Daniel Bartholomew
Various additions and modifications to add new trees, fix issues, and so on.
9527
    addPackageArchiveStep(bin_fact, '"%(bindistname)s"', "%(revision)s")
381 by Kristian Nielsen
Buildbot: Disable all use of buildslave "terrier2".
9528
    return {'name': name, 'slavenames': ["knielsen-kvm-x86", "centos56-quality2"], 'builddir': name, 'factory': bin_fact,
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9529
            "nextBuild": myNextBuild,
581 by Daniel Bartholomew
automatic maria-master.cfg commit
9530
            "category": "connectors" }
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9531
9532
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
9533
#bld_kvm_connectorc_precise_x86 = getConnectorCBuilder("kvm-connectorc-precise-x86", "vm-precise-i386", "2268", "qemu64")
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9534
9535
250 by Sergei Golubchik
comment out unsed builder configs
9536
#f_freebsd_amd64 = factory.BuildFactory()
9537
#f_freebsd_amd64.addStep(bzr_checkout)
9538
#f_freebsd_amd64.addStep(getCompileStep(["BUILD/compile-pentium64-max"],
9539
#                                       env={"EXTRA_FLAGS": "-O2 -Wuninitialized -DFORCE_INIT_OF_VARS",
9540
#                                            "AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}))
9541
#f_freebsd_amd64.addStep(getMTR(
9542
#        test_type="nm",
9543
#        test_info="Normal run, mixed-mode binlogging",
316 by Daniel Bartholomew
automatic maria-master.cfg commit
9544
#        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --parallel=2 --force --retry=3 "]))
250 by Sergei Golubchik
comment out unsed builder configs
9545
#
9546
#bld_freebsd_amd64 = {'name': "freebsd-amd64",
9547
#                     'slavename': "jakob-freebsd",
9548
#                     'builddir': "jakob-freebsd",
9549
#                     'factory': f_freebsd_amd64,
9550
#                     "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
9551
#                     "category": "experimental",
250 by Sergei Golubchik
comment out unsed builder configs
9552
#                     }
9553
9554
9555
#f_adutko3 = factory.BuildFactory()
9556
#f_adutko3.addStep(bzr_checkout)
9557
#f_adutko3.addStep(getCompileStep(["BUILD/compile-pentium64-valgrind-max"],
9558
#                                  env={"AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}))
9559
#f_adutko3.addStep(getMTR(
9560
#        test_type="nm",
9561
#        test_info="Normal run, mixed-mode binlogging",
9562
#        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --parallel=2 --force --retry=3"]))
9563
#
9564
#bld_adutko3 = {'name': "adutko-generic",
9565
#               'slavename': "adutko3",
9566
#               'builddir': "adutko3",
9567
#               'factory': f_adutko3,
9568
#               "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
9569
#               "category": "experimental",
250 by Sergei Golubchik
comment out unsed builder configs
9570
#               }
9571
9572
#f_aps82_204 = factory.BuildFactory()
9573
#f_aps82_204.addStep(bzr_checkout)
9574
#f_aps82_204.addStep(getCompileStep(["BUILD/compile-pentium64-valgrind-max"],
9575
#                                    env={"AM_EXTRA_MAKEFLAGS": "VERBOSE=1"}))
9576
#f_aps82_204.addStep(getMTR(
9577
#        test_type="nm",
9578
#        test_info="Normal run, mixed-mode binlogging",
9579
#        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --parallel=2 --force --retry=3"]))
9580
#
9581
#bld_aps82_204 = {'name': "aps82-204-generic",
9582
#                'slavename': "aps82-204",
9583
#                'builddir': "aps82_204",
9584
#                'factory': f_aps82_204,
9585
#                "nextBuild": myNextBuild,
335.1.2 by Kristian Nielsen
Buildbot: Use categories to distinguish between stable and unstable builders.
9586
#                "category": "experimental",
250 by Sergei Golubchik
comment out unsed builder configs
9587
#                }
156 by Kristian Nielsen
New slave "aps82-204".
9588
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
9589
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9590
f_dan_debug = factory.BuildFactory()
251 by Sergei Golubchik
github support #3: checkout from github
9591
f_dan_debug.addStep(maybe_bzr_checkout)
9592
f_dan_debug.addStep(maybe_git_checkout)
745 by Daniel Bartholomew
automatic maria-master.cfg commit
9593
f_dan_debug.addStep(getCompileStep(["sh", "-c", "cmake . -DCMAKE_BUILD_TYPE=Debug && make"]))
9594
#f_dan_debug.addStep(getCompileStep(["cmake -DCMAKE_BUILD_TYPE=Debug ."]))
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9595
f_dan_debug.addStep(getMTR(
9596
        test_type="nm",
9597
        test_info="Debug run, no --ps-protocol",
392 by Daniel Bartholomew
automatic maria-master.cfg commit
9598
        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --parallel=2 --force --retry=3 --testcase-timeout=60  --suite-timeout=1200 --max-test-fail=100 --max-save-core=0 --max-save-datadir=1"],
9599
        parallel=2))
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9600
9601
f_dan_debug.addStep(getMTR(
9602
        test_type="pm",
9603
        test_info="Debug run, --ps-protocol",
392 by Daniel Bartholomew
automatic maria-master.cfg commit
9604
        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --ps-protocol --parallel=2 --force --retry=3 --testcase-timeout=60  --suite-timeout=1200 --max-test-fail=100 --max-save-core=0 --max-save-datadir=1"],
9605
        parallel=2))
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9606
9607
bld_dan_debug = {'name': "bld-dan-debug",
392 by Daniel Bartholomew
automatic maria-master.cfg commit
9608
                'slavenames': ["dan_demeter1", "dan_demeter2"],
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9609
                'builddir': "dan_demeter1",
9610
                'factory': f_dan_debug,
9611
                "nextBuild": myNextBuild,
730 by Daniel Bartholomew
automatic maria-master.cfg commit
9612
                "category": "experimental",
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9613
                }
9614
9615
9616
f_dan_release = factory.BuildFactory()
251 by Sergei Golubchik
github support #3: checkout from github
9617
f_dan_release.addStep(maybe_bzr_checkout)
9618
f_dan_release.addStep(maybe_git_checkout)
877 by Sergei Golubchik
fix dan_release to really build without P_S, not just try to
9619
#f_dan_release.addStep(getCompileStep(["sh", "-c", "cmake . -DBUILD_CONFIG=mysql_release -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DENABLE_ASSEMBLER=1 -DWITH_EXTRA_CHARSETS=complex -DENABLE_THREAD_SAFE_CLIENT=1 -DWITH_BIG_TABLES=1 -DWITH_PLUGIN_ARIA=1 -DWITH_ARIA_TMP_TABLES=1 -DWITH_SSL=bundled -DWITH_MAX=AUTO -DWITH_EMBEDDED_SERVER=1 -DWITH_LIBEVENT=bundled -DPLUGIN_PLUGIN_FILE_KEY_MANAGEMENT=NO -DENABLE_LOCAL_INFILE=1 -DPLUGIN_PERFSCHEMA=NO -DCMAKE_VERBOSE_MAKEFILE=1 -DWITH_JEMALLOC=auto && make"],
745 by Daniel Bartholomew
automatic maria-master.cfg commit
9620
#f_dan_release.addStep(getCompileStep(["cmake -DBUILD_CONFIG=mysql_release . && make"]))
877 by Sergei Golubchik
fix dan_release to really build without P_S, not just try to
9621
f_dan_release.addStep(getCompileStep(["sh", "-c", "cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DWITH_EXTRA_CHARSETS=complex -DWITH_SSL=bundled -DPLUGIN_PERFSCHEMA=NO -DCMAKE_VERBOSE_MAKEFILE=1 && make -j3"]))
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9622
f_dan_release.addStep(getMTR(
9623
        test_type="nm",
9624
        test_info="Non-debug run, no --ps-protocol",
363 by Kristian Nielsen
Buildbot: Reduce parallelism and increase timeouts for test on bld-dan-release.
9625
        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --parallel=2 --force --retry=3  --max-test-fail=100 --max-save-core=0 --max-save-datadir=1 --testcase-timeout=60 --suite-timeout=1200"],
9626
        timeout=14400,
9627
        parallel=2))
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9628
9629
f_dan_release.addStep(getMTR(
9630
        test_type="pm",
9631
        test_info="Non-debug run, --ps-protocol",
363 by Kristian Nielsen
Buildbot: Reduce parallelism and increase timeouts for test on bld-dan-release.
9632
        command=["sh", "-c", "cd mysql-test && exec perl mysql-test-run.pl  --verbose-restart --ps-protocol --parallel=2 --force --retry=3  --max-test-fail=100 --max-save-core=0 --max-save-datadir=1 --testcase-timeout=60 --suite-timeout=1200"],
9633
        timeout=14400,
9634
        parallel=2))
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9635
9636
bld_dan_release = {'name': "bld-dan-release",
392 by Daniel Bartholomew
automatic maria-master.cfg commit
9637
                'slavenames': ["dan_demeter1", "dan_demeter2"],
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9638
                'builddir': "dan_demeter2",
9639
                'factory': f_dan_release,
9640
                "nextBuild": myNextBuild,
730 by Daniel Bartholomew
automatic maria-master.cfg commit
9641
                "category": "experimental",
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9642
                }
9643
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9644
c['builders'] = [
9645
                bld_work_valgrind, bld_gcov, 
755 by Daniel Bartholomew
automatic maria-master.cfg commit
9646
                bld_xenial_valgrind,
138 by Kristian Nielsen
New trees.
9647
		bld_compile_connectors, bld_test_handlersocket, bld_customer_data,
54 by Kristian Nielsen
Tree updates.
9648
#                 bld_valgrind_32, bld_rel_amd64,
128 by Kristian Nielsen
Buildbot changes:
9649
#                 bld_dbg_x86,
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
9650
#                 bld_archivist_amd64, bld_archivist_cnc,
95 by Kristian Nielsen
Increase buildCacheSize, giving an enormous speed boost for grid display.
9651
#                 bld_dbg2_x86,
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9652
#                 bld_sol_sparc_32,
99 by Kristian Nielsen
RQG changes.
9653
		bld_rqg_mariaengine, 
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
9654
		bld_rqg_replication, bld_rqg_replication_checksum,
99.1.1 by Kristian Nielsen
Add new buildslave for Jakob Lorberblatt.
9655
		bld_rqg_optimizer,
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
9656
#                 bld_toby_amd64, bld_toby_sparc32, bld_toby_sparc64,
9657
#                 bld_linux_debug,
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
9658
#                 bld_adutko_amd64, bld_adutko_alpha,
45 by Kristian Nielsen
Comment out (remove) lots of builders on slaves that are never
9659
#                 bld_sanja_gentoo_amd64,
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
9660
#                 bld_valgrind, 
9661
                 bld_kvm_tarbake_jaunty_x86,
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
9662
#                 bld_kvm_zip_winxp_x86,
900 by Sergei Golubchik
disable builders and buildslaves that are offline anyway
9663
#                bld_opensolaris_511_bintar,
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
9664
#                 bld_kvm_rpm_centos5_x86, bld_kvm_rpm_centos5_amd64,
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
9665
                 bld_kvm_rpm_centos6_x86, bld_kvm_rpm_centos6_amd64,
303 by Daniel Bartholomew
automatic maria-master.cfg commit
9666
#                 bld_kvm_rpm_centos7_0_x86,
387 by Daniel Bartholomew
automatic maria-master.cfg commit
9667
#                 bld_kvm_rpm_centos7_0_x86_64,
9668
                 bld_kvm_rpm_centos7_amd64,
888 by Daniel Bartholomew
automatic maria-master.cfg commit
9669
                 bld_kvm_rpm_centos73_amd64,
890 by Daniel Bartholomew
Add kvm-rpm-centos73-ppc64 and kvm-rpm-centos73-ppc64le builders
9670
                 bld_kvm_rpm_centos73_ppc64,
9671
                 bld_kvm_rpm_centos73_ppc64le,
387 by Daniel Bartholomew
automatic maria-master.cfg commit
9672
#                 bld_kvm_zyp_opensuse13_1_x86, bld_kvm_zyp_opensuse13_1_x86_64,
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
9673
#                 bld_kvm_zyp_opensuse13_x86, bld_kvm_zyp_opensuse13_amd64,
820 by Daniel Bartholomew
Add opensuse42-amd64 builder
9674
                 bld_kvm_zyp_opensuse42_amd64,
379 by Daniel Bartholomew
automatic maria-master.cfg commit
9675
                 bld_kvm_zyp_sles11_x86,
387 by Daniel Bartholomew
automatic maria-master.cfg commit
9676
#                 bld_kvm_zyp_sles11_x86_64,
9677
                 bld_kvm_zyp_sles11_amd64,
602 by Daniel Bartholomew
automatic maria-master.cfg commit
9678
                 bld_kvm_zyp_sles11sp1_amd64,
387 by Daniel Bartholomew
automatic maria-master.cfg commit
9679
#                 bld_kvm_zyp_sles12_x86_64,
9680
                 bld_kvm_zyp_sles12_amd64,
180 by Daniel Bartholomew
Remove Debian 5, Ubuntu Maverick, Ubuntu Natty, and Fedora 16 builds from buildbot
9681
#                 bld_kvm_rpm_fedora16_x86, bld_kvm_rpm_fedora16_amd64,
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
9682
#                 bld_kvm_rpm_fedora17_x86, bld_kvm_rpm_fedora17_amd64,
216 by Daniel Bartholomew
removed fedora18 builders as they are now deprecated
9683
#                 bld_kvm_rpm_fedora18_x86, bld_kvm_rpm_fedora18_amd64,
490 by Daniel Bartholomew
Deactivate Fedora19 rpm builders
9684
#                 bld_kvm_rpm_fedora19_x86, bld_kvm_rpm_fedora19_amd64,
585 by Daniel Bartholomew
disable Fedora20 builds
9685
#                 bld_kvm_rpm_fedora20_x86, bld_kvm_rpm_fedora20_amd64,
617 by Daniel Bartholomew
automatic maria-master.cfg commit
9686
#                 bld_kvm_rpm_fedora21_x86, bld_kvm_rpm_fedora21_amd64,
720 by Daniel Bartholomew
automatic maria-master.cfg commit
9687
#                 bld_kvm_rpm_fedora22_x86, bld_kvm_rpm_fedora22_amd64,
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
9688
#                 bld_kvm_rpm_fedora23_x86, bld_kvm_rpm_fedora23_amd64,
702 by Daniel Bartholomew
add Fedora24
9689
                 bld_kvm_rpm_fedora24_x86, bld_kvm_rpm_fedora24_amd64,
811 by Daniel Bartholomew
Add Fedora 25 builder
9690
                 bld_kvm_rpm_fedora25_x86, bld_kvm_rpm_fedora25_amd64,
168.1.3 by Kristian Nielsen
Change package archival to use DirectoryUpload, so no longer dependent on NFS.
9691
#                 bld_kvm_rpm_opensuse12_x86, bld_kvm_rpm_opensuse12_amd64,
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
9692
#                 bld_kvm_rpm_rhel6_x86, # Some kvm images are missing
9693
#                 bld_kvm_rpm_rhel6_amd64,
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
9694
#                 bld_kvm_rpm_rhel5_x86,
9695
#                 bld_kvm_rpm_rhel5_amd64,
46 by Kristian Nielsen
New trees (and remove some old).
9696
#                 bld_kvm_deb_debian4_amd64, bld_kvm_deb_debian4_x86,
180 by Daniel Bartholomew
Remove Debian 5, Ubuntu Maverick, Ubuntu Natty, and Fedora 16 builds from buildbot
9697
#                 bld_kvm_deb_debian5_amd64, bld_kvm_deb_debian5_x86,
647 by Daniel Bartholomew
automatic maria-master.cfg commit
9698
#                 bld_kvm_deb_debian6_amd64, bld_kvm_deb_debian6_x86,
168.1.1 by Kristian Nielsen
New "labrador" mac slave.
9699
                 bld_kvm_deb_wheezy_amd64, bld_kvm_deb_wheezy_x86,
468 by Daniel Bartholomew
Activate Debian Jessie and Ubuntu Vivid builders
9700
                 bld_kvm_deb_jessie_amd64, bld_kvm_deb_jessie_x86,
778 by Daniel Bartholomew
automatic maria-master.cfg commit
9701
                 bld_kvm_deb_jessie_ppc64le,
771 by Daniel Bartholomew
automatic maria-master.cfg commit
9702
                 bld_kvm_deb_stretch_amd64, bld_kvm_deb_stretch_x86,
815 by Daniel Bartholomew
Add stretch-ppc64le builder
9703
                 bld_kvm_deb_stretch_ppc64le,
222 by Daniel Bartholomew
add Debian Sid to buildbot
9704
                 bld_kvm_deb_sid_amd64, bld_kvm_deb_sid_x86,
191 by Daniel Bartholomew
Removed (commented out) the hardy and oneiric builders. They have been
9705
#                 bld_kvm_deb_hardy_amd64, bld_kvm_deb_hardy_x86,
62.1.1 by Kristian Nielsen
New mac mini builder.
9706
#                 bld_kvm_deb_intrepid_amd64, bld_kvm_deb_intrepid_x86,
114.1.1 by Kristian Nielsen
New builder terrier2, to share kvm builds with existing build slave.
9707
#                 bld_kvm_deb_jaunty_amd64, bld_kvm_deb_jaunty_x86,
147 by Kristian Nielsen
Add package builders for 5.5 tree.
9708
#                 bld_kvm_deb_karmic_amd64, bld_kvm_deb_karmic_x86,
489 by Daniel Bartholomew
Deactivate Ubuntu 10.04 LTS "Lucid" builders
9709
#                 bld_kvm_deb_lucid_amd64, bld_kvm_deb_lucid_x86,
180 by Daniel Bartholomew
Remove Debian 5, Ubuntu Maverick, Ubuntu Natty, and Fedora 16 builds from buildbot
9710
#                 bld_kvm_deb_maverick_amd64, bld_kvm_deb_maverick_x86,
9711
#                 bld_kvm_deb_natty_amd64, bld_kvm_deb_natty_x86,
191 by Daniel Bartholomew
Removed (commented out) the hardy and oneiric builders. They have been
9712
#                 bld_kvm_deb_oneiric_amd64, bld_kvm_deb_oneiric_x86,
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
9713
                 bld_kvm_deb_precise_amd64, bld_kvm_deb_precise_x86,
268 by Daniel Bartholomew
Stop Ubuntu Quantal .deb builds (that release is now deprecated).
9714
#                 bld_kvm_deb_quantal_amd64, bld_kvm_deb_quantal_x86,
215 by Daniel Bartholomew
removed raring builders as it is now deprecated
9715
#                 bld_kvm_deb_raring_amd64, bld_kvm_deb_raring_x86,
321 by Daniel Bartholomew
automatic maria-master.cfg commit
9716
#                 bld_kvm_deb_saucy_amd64, bld_kvm_deb_saucy_x86,
218 by Daniel Bartholomew
add Ubuntu 14.04 'trusty' to buildbot
9717
                 bld_kvm_deb_trusty_amd64, bld_kvm_deb_trusty_x86,
823 by Daniel Bartholomew
add kvm-deb-trusty-ppc64le builder
9718
                 bld_kvm_deb_trusty_ppc64le,
584 by Daniel Bartholomew
Disable Ubuntu 14.10 Utopic builders as it has been deprecated
9719
#                 bld_kvm_deb_utopic_amd64, bld_kvm_deb_utopic_x86,
647 by Daniel Bartholomew
automatic maria-master.cfg commit
9720
#                 bld_kvm_deb_vivid_amd64, bld_kvm_deb_vivid_x86,
710 by Daniel Bartholomew
automatic maria-master.cfg commit
9721
#                 bld_kvm_deb_wily_amd64, bld_kvm_deb_wily_x86,
660 by Daniel Bartholomew
automatic maria-master.cfg commit
9722
                 bld_kvm_deb_xenial_amd64, bld_kvm_deb_xenial_x86,
777 by Daniel Bartholomew
automatic maria-master.cfg commit
9723
                 bld_kvm_deb_xenial_ppc64le,
754 by Daniel Bartholomew
automatic maria-master.cfg commit
9724
                 bld_kvm_deb_yakkety_amd64, bld_kvm_deb_yakkety_x86,
908 by Daniel Bartholomew
Add Ubuntu 17.04 "zesty" VMs
9725
                 bld_kvm_deb_zesty_amd64, bld_kvm_deb_zesty_x86,
311 by Daniel Bartholomew
automatic maria-master.cfg commit
9726
#                 bld_kvm_bintar_hardy_amd64, bld_kvm_bintar_hardy_x86,
200 by Daniel Bartholomew
Disable precise bintar
9727
#                 bld_kvm_bintar_precise_amd64, bld_kvm_bintar_precise_x86,
822 by Daniel Bartholomew
automatic maria-master.cfg commit
9728
                 bld_kvm_bintar_trusty_amd64, bld_kvm_bintar_trusty_x86,
199 by Daniel Bartholomew
Added quantal bintar
9729
                 bld_kvm_bintar_quantal_amd64, bld_kvm_bintar_quantal_x86,
203 by Daniel Bartholomew
add centos5 bintar builder
9730
                 bld_kvm_bintar_centos5_amd64, bld_kvm_bintar_centos5_x86,
853 by Daniel Bartholomew
Added FreeBSD MariaDB build factory, and freebsd11-amd64/i386 builders
9731
                 bld_kvm_freebsd11_amd64, bld_kvm_freebsd11_x86,
89 by Kristian Nielsen
Add Daniel's solaris slave.
9732
#                bld_opensolaris_511_x86,
128 by Kristian Nielsen
Buildbot changes:
9733
#                 bld_mac_mini_x86_dbg,
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
9734
#                 bld_fedora13_x86_dbg,
99 by Kristian Nielsen
RQG changes.
9735
#                bld_win7_x86,	# can not run 24/7
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
9736
               bld_winx64_packages,
9737
               bld_win32_packages,
665 by Daniel Bartholomew
automatic maria-master.cfg commit
9738
		bld_win32_debug,
9739
		bld_winx64_debug,
168.1.1 by Kristian Nielsen
New "labrador" mac slave.
9740
 
89 by Kristian Nielsen
Add Daniel's solaris slave.
9741
#                bld_upgrade_mysql51_mariadb52_bintar,
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
9742
                 bld_sol10_64,
900 by Sergei Golubchik
disable builders and buildslaves that are offline anyway
9743
#                 bld_sol10_sparc,
659 by Daniel Bartholomew
automatic maria-master.cfg commit
9744
#                 bld_bsd9_64,
93 by Kristian Nielsen
Configure kvm builders for new terrier buildslave.
9745
                 bld_kvm_dgcov_jaunty_i386,
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9746
                 bld_kvm_fulltest,
9747
                 bld_kvm_fulltest2,
744 by Daniel Bartholomew
automatic maria-master.cfg commit
9748
                 bld_kvm_fulltest_big,
9749
                 bld_kvm_fulltest2_big,
158 by Kristian Nielsen
Split some schedulers into pre-5.5 and post-5.5, to give some more fredom to
9750
#                 bld_freebsd_amd64,
9751
#                 bld_adutko3,
168.1.2 by Kristian Nielsen
Add new fulltest builders, using kvm.
9752
#                 bld_macintosh,
166 by Daniel Bartholomew
various updates to rqg tests and a couple of new slaves
9753
                 bld_labrador,
753 by Daniel Bartholomew
automatic maria-master.cfg commit
9754
                 bld_mac_1012_bintar,
162 by Daniel Bartholomew
Updated maria-master.cfg with several changes, including:
9755
#                 bld_aps82_204,
207 by Elena Stepanova
Various modifications by different people to add new trees, fix issues, etc.
9756
                 bld_win_rqg_se,
677 by Daniel Bartholomew
automatic maria-master.cfg commit
9757
                bld_kvm_qa_linux,
793 by Daniel Bartholomew
automatic maria-master.cfg commit
9758
                bld_qa_bb_experiments,
375 by Daniel Bartholomew
automatic maria-master.cfg commit
9759
                bld_win_jdbc,
400 by Daniel Bartholomew
automatic maria-master.cfg commit
9760
                bld_win_connector_c,
566 by Daniel Bartholomew
automatic maria-master.cfg commit
9761
                bld_win_connector_c_3,
633 by Daniel Bartholomew
automatic maria-master.cfg commit
9762
                bld_freebsd_x64_connector_c,
850 by Daniel Bartholomew
Added FreeBSD 11 builders for Connector/C
9763
                bld_freebsd11_x64_connector_c,
9764
                bld_freebsd11_x86_connector_c,
400 by Daniel Bartholomew
automatic maria-master.cfg commit
9765
                bld_linux_x64_connector_c,
9766
                bld_linux_x86_connector_c,
501 by Daniel Bartholomew
automatic maria-master.cfg commit
9767
                bld_centos6_i386_connector_c,
782 by Daniel Bartholomew
automatic maria-master.cfg commit
9768
                # Current ga c/odbc version
9769
                bld_win_connector_odbc,
404 by Daniel Bartholomew
automatic maria-master.cfg commit
9770
                bld_linux_x64_connector_odbc,
9771
                bld_linux_x86_connector_odbc,
902 by Daniel Bartholomew
automatic maria-master.cfg commit
9772
                bld_centos7_x86_connector_odbc,
570 by Daniel Bartholomew
automatic maria-master.cfg commit
9773
                bld_centos7_x64_connector_odbc,
572 by Daniel Bartholomew
automatic maria-master.cfg commit
9774
                bld_jessie_x86_connector_odbc,
9775
                bld_jessie_x64_connector_odbc,
576 by Daniel Bartholomew
Various updates to bld_linux_connector_oddbc builder
9776
                bld_generic_x86_connector_odbc,
9777
                bld_generic_x64_connector_odbc,
782 by Daniel Bartholomew
automatic maria-master.cfg commit
9778
                # Current "new" c/odbc version
799 by Daniel Bartholomew
automatic maria-master.cfg commit
9779
                bld_win_connector_odbc_new,
782 by Daniel Bartholomew
automatic maria-master.cfg commit
9780
                bld_linux_x64_connector_odbc_new,
9781
                bld_linux_x86_connector_odbc_new,
9782
                bld_centos7_x64_connector_odbc_new,
9783
                bld_jessie_x86_connector_odbc_new,
9784
                bld_jessie_x64_connector_odbc_new,
9785
                bld_generic_x86_connector_odbc_new,
9786
                bld_generic_x64_connector_odbc_new,
902 by Daniel Bartholomew
automatic maria-master.cfg commit
9787
                bld_centos7_x86_connector_odbc_new,
413 by Daniel Bartholomew
changes made for the upgrade from buildbot 0.8.5 -> 0.8.8
9788
#                bld_kvm_connectorc_precise_x86,
184 by Daniel Bartholomew
Updated to latest version of maria-master.cfg
9789
                bld_dan_debug,
9790
                bld_dan_release,
900 by Sergei Golubchik
disable builders and buildslaves that are offline anyway
9791
#                bld_raspberrypi,
550 by Daniel Bartholomew
Remove power01 builder
9792
#                bld_power01,
356 by Daniel Bartholomew
automatic maria-master.cfg commit
9793
                bld_p8_rhel6_bintar,
9794
                bld_p8_rhel6_bintar_debug,
9795
                bld_p8_trusty_bintar,
9796
                bld_p8_trusty_bintar_debug,
679 by Daniel Bartholomew
automatic maria-master.cfg commit
9797
                bld_p8_xenial_bintar,
9798
                bld_p8_xenial_bintar_debug,
356 by Daniel Bartholomew
automatic maria-master.cfg commit
9799
                bld_p8_rhel7_bintar,
9800
                bld_p8_rhel7_bintar_debug,
392 by Daniel Bartholomew
automatic maria-master.cfg commit
9801
                bld_p8_rhel71_bintar,
9802
                bld_p8_rhel71_bintar_debug,
356 by Daniel Bartholomew
automatic maria-master.cfg commit
9803
                bld_p8_trusty_deb,
679 by Daniel Bartholomew
automatic maria-master.cfg commit
9804
                bld_p8_xenial_deb,
356 by Daniel Bartholomew
automatic maria-master.cfg commit
9805
                bld_p8_rhel6_rpm,
9806
                bld_p8_rhel7_rpm,
392 by Daniel Bartholomew
automatic maria-master.cfg commit
9807
                bld_p8_rhel71_rpm,
353 by Daniel Bartholomew
Initial P8 SUSE 12 RPM builder
9808
                bld_p8_suse12_rpm,
900 by Sergei Golubchik
disable builders and buildslaves that are offline anyway
9809
#               bld_ibmz_rhel6_bintar,
9810
#               bld_ibmz_rhel6_rpm,
9811
#               bld_ibmz_sles11_bintar,
9812
#               bld_ibmz_sles11_rpm,
539 by Daniel Bartholomew
automatic maria-master.cfg commit
9813
346 by Daniel Bartholomew
automatic maria-master.cfg commit
9814
                # galera package builders
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
9815
                #gal_bld_kvm_rpm_centos5_x86, gal_bld_kvm_rpm_centos5_amd64,
369 by Daniel Bartholomew
automatic maria-master.cfg commit
9816
                gal_bld_kvm_rpm_centos6_x86, gal_bld_kvm_rpm_centos6_amd64,
539 by Daniel Bartholomew
automatic maria-master.cfg commit
9817
                #gal_bld_kvm_rpm_centos7_0_x86_64,
387 by Daniel Bartholomew
automatic maria-master.cfg commit
9818
                gal_bld_kvm_rpm_centos7_amd64,
888 by Daniel Bartholomew
automatic maria-master.cfg commit
9819
                gal_bld_kvm_rpm_centos73_amd64,
890 by Daniel Bartholomew
Add kvm-rpm-centos73-ppc64 and kvm-rpm-centos73-ppc64le builders
9820
                gal_bld_kvm_rpm_centos73_ppc64,
9821
                gal_bld_kvm_rpm_centos73_ppc64le,
539 by Daniel Bartholomew
automatic maria-master.cfg commit
9822
                #gal_bld_kvm_rpm_fedora19_x86, gal_bld_kvm_rpm_fedora19_amd64,
585 by Daniel Bartholomew
disable Fedora20 builds
9823
                #gal_bld_kvm_rpm_fedora20_x86, gal_bld_kvm_rpm_fedora20_amd64,
617 by Daniel Bartholomew
automatic maria-master.cfg commit
9824
                #gal_bld_kvm_rpm_fedora21_x86, gal_bld_kvm_rpm_fedora21_amd64,
720 by Daniel Bartholomew
automatic maria-master.cfg commit
9825
                #gal_bld_kvm_rpm_fedora22_x86, gal_bld_kvm_rpm_fedora22_amd64,
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
9826
                #gal_bld_kvm_rpm_fedora23_x86, gal_bld_kvm_rpm_fedora23_amd64,
702 by Daniel Bartholomew
add Fedora24
9827
                gal_bld_kvm_rpm_fedora24_x86, gal_bld_kvm_rpm_fedora24_amd64,
811 by Daniel Bartholomew
Add Fedora 25 builder
9828
                gal_bld_kvm_rpm_fedora25_x86, gal_bld_kvm_rpm_fedora25_amd64,
618 by Daniel Bartholomew
automatic maria-master.cfg commit
9829
                #gal_bld_kvm_rpm_rhel5_x86, gal_bld_kvm_rpm_rhel5_amd64,
647 by Daniel Bartholomew
automatic maria-master.cfg commit
9830
                #gal_bld_kvm_deb_debian6_amd64, gal_bld_kvm_deb_debian6_x86,
369 by Daniel Bartholomew
automatic maria-master.cfg commit
9831
                gal_bld_kvm_deb_wheezy_amd64, gal_bld_kvm_deb_wheezy_x86,
542 by Daniel Bartholomew
automatic maria-master.cfg commit
9832
                gal_bld_kvm_deb_jessie_amd64, gal_bld_kvm_deb_jessie_x86,
778 by Daniel Bartholomew
automatic maria-master.cfg commit
9833
                gal_bld_kvm_deb_jessie_ppc64le,
771 by Daniel Bartholomew
automatic maria-master.cfg commit
9834
                gal_bld_kvm_deb_stretch_amd64, gal_bld_kvm_deb_stretch_x86,
815 by Daniel Bartholomew
Add stretch-ppc64le builder
9835
                gal_bld_kvm_deb_stretch_ppc64le,
369 by Daniel Bartholomew
automatic maria-master.cfg commit
9836
                gal_bld_kvm_deb_sid_amd64, gal_bld_kvm_deb_sid_x86,
539 by Daniel Bartholomew
automatic maria-master.cfg commit
9837
                #gal_bld_kvm_deb_lucid_amd64, gal_bld_kvm_deb_lucid_x86,
369 by Daniel Bartholomew
automatic maria-master.cfg commit
9838
                gal_bld_kvm_deb_precise_amd64, gal_bld_kvm_deb_precise_x86,
9839
                gal_bld_kvm_deb_trusty_amd64, gal_bld_kvm_deb_trusty_x86,
823 by Daniel Bartholomew
add kvm-deb-trusty-ppc64le builder
9840
                gal_bld_kvm_deb_trusty_ppc64le,
584 by Daniel Bartholomew
Disable Ubuntu 14.10 Utopic builders as it has been deprecated
9841
                #gal_bld_kvm_deb_utopic_amd64, gal_bld_kvm_deb_utopic_x86,
647 by Daniel Bartholomew
automatic maria-master.cfg commit
9842
                #gal_bld_kvm_deb_vivid_amd64, gal_bld_kvm_deb_vivid_x86,
710 by Daniel Bartholomew
automatic maria-master.cfg commit
9843
                #gal_bld_kvm_deb_wily_amd64, gal_bld_kvm_deb_wily_x86,
660 by Daniel Bartholomew
automatic maria-master.cfg commit
9844
                gal_bld_kvm_deb_xenial_amd64, gal_bld_kvm_deb_xenial_x86,
777 by Daniel Bartholomew
automatic maria-master.cfg commit
9845
                gal_bld_kvm_deb_xenial_ppc64le,
754 by Daniel Bartholomew
automatic maria-master.cfg commit
9846
                gal_bld_kvm_deb_yakkety_amd64, gal_bld_kvm_deb_yakkety_x86,
908 by Daniel Bartholomew
Add Ubuntu 17.04 "zesty" VMs
9847
                gal_bld_kvm_deb_zesty_amd64, gal_bld_kvm_deb_zesty_x86,
346 by Daniel Bartholomew
automatic maria-master.cfg commit
9848
                #gal_bld_kvm_bintar_quantal_amd64, gal_bld_kvm_bintar_quantal_x86,
9849
                #gal_bld_kvm_bintar_centos5_amd64, gal_bld_kvm_bintar_centos5_x86,
894 by Daniel Bartholomew
Remove CentOS 5, RHEL 5, OpenSUSE 13, and Fedora 23 builders
9850
                #gal_bld_kvm_zyp_opensuse13_x86, gal_bld_kvm_zyp_opensuse13_amd64,
820 by Daniel Bartholomew
Add opensuse42-amd64 builder
9851
                gal_bld_kvm_zyp_opensuse42_amd64,
539 by Daniel Bartholomew
automatic maria-master.cfg commit
9852
                gal_bld_kvm_zyp_sles11_x86, gal_bld_kvm_zyp_sles11_amd64,
632 by Daniel Bartholomew
automatic maria-master.cfg commit
9853
                gal_bld_kvm_zyp_sles12_amd64, gal_bld_kvm_zyp_sles11sp1_amd64,
625 by Daniel Bartholomew
automatic maria-master.cfg commit
9854
                # Power8
9855
                gal_bld_p8_rhel6_rpm, gal_bld_p8_rhel7_rpm,
9856
                gal_bld_p8_rhel71_rpm, gal_bld_p8_trusty_deb,
679 by Daniel Bartholomew
automatic maria-master.cfg commit
9857
                gal_bld_p8_suse12_rpm, gal_bld_p8_xenial_deb,
625 by Daniel Bartholomew
automatic maria-master.cfg commit
9858
                
346 by Daniel Bartholomew
automatic maria-master.cfg commit
9859
                ]
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
9860
9861
9862
####### STATUS TARGETS
9863
9864
# 'status' is a list of Status Targets. The results of each build will be
9865
# pushed to these targets. buildbot/status/*.py has a variety to choose from,
9866
# including web pages, email senders, and IRC bots.
9867
9868
c['status'] = []
9869
9870
from buildbot.status import html
246 by Sergei Golubchik
no need to enable github change web hook on the internal (non-public) buildbot view
9871
c['status'].append(html.WebStatus(http_port=8010, allowForce=True))
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
9872
62.1.1 by Kristian Nielsen
New mac mini builder.
9873
from buildbot.status import html
227 by Kristian Nielsen
Add debpkg builder for Otto; when new stuff is pushed to the .deb buildscripts repo on github, it pulls the changes and tries a build.
9874
c['status'].append(html.WebStatus(http_port=8011, allowForce=False,
415 by Daniel Bartholomew
automatic maria-master.cfg commit
9875
    change_hook_dialects={ 'github' : True },
9876
    change_hook_auth=["file:changehook.passwd"]))
62.1.1 by Kristian Nielsen
New mac mini builder.
9877
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
9878
from buildbot.status import words
9879
irc = words.IRC("irc.freenode.net", "mariabuildbot",
9880
                channels=["maria"],
9881
                password=configDict["cfg"]["ircPassword"],
9882
                notify_events={
9883
                  "exception": 1,
9884
                  "successToFailure": 1,
9885
                  "failureToSuccess": 1,
9886
                },
9887
                allowForce=True,
9888
                )
9889
# Disable it until we fix it to only notify about main trees.
9890
#c["status"].append(irc)
9891
        
9892
46 by Kristian Nielsen
New trees (and remove some old).
9893
from buildbot.status import mail
9894
c['status'].append(mail.MailNotifier(fromaddr="buildbot-reports@hasky.askmonty.org",
9895
                                      extraRecipients=["maria-buildbot-reports@lists.askmonty.org"],
9896
                                      sendToInterestedUsers=False))
9897
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
9898
# from buildbot.status import words
9899
# c['status'].append(words.IRC(host="irc.example.com", nick="bb",
9900
#                              channels=["#example"]))
9901
#
9902
# from buildbot.status import client
9903
# c['status'].append(client.PBListener(9988))
9904
9905
9906
####### DEBUGGING OPTIONS
9907
9908
# if you set 'debugPassword', then you can connect to the buildmaster with
9909
# the diagnostic tool in contrib/debugclient.py . From this tool, you can
9910
# manually force builds and inject changes, which may be useful for testing
9911
# your buildmaster without actually commiting changes to your repository (or
9912
# before you have a functioning 'sources' set up). The debug tool uses the
9913
# same port number as the slaves do: 'slavePortnum'.
9914
9915
#c['debugPassword'] = "debugpassword"
9916
9917
# if you set 'manhole', you can ssh into the buildmaster and get an
9918
# interactive python shell, which may be useful for debugging buildbot
9919
# internals. It is probably only useful for buildbot developers. You can also
9920
# use an authorized_keys file, or plain telnet.
9921
#from buildbot import manhole
9922
#c['manhole'] = manhole.PasswordManhole("tcp:9999:interface=127.0.0.1",
9923
#                                       "admin", "password")
9924
9925
9926
####### PROJECT IDENTITY
9927
9928
# the 'projectName' string will be used to describe the project that this
9929
# buildbot is working on. For example, it is used as the title of the
9930
# waterfall HTML page. The 'projectURL' string will be used to provide a link
9931
# from buildbot HTML pages to your project's home page.
9932
9933
c['projectName'] = "MariaDB"
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
9934
#c['projectURL'] = "https://launchpad.net/maria"
9935
c['projectURL'] = "http://mariadb.org/jira"
3 by knielsen at knielsen-hq
Import our Buildbot configuration.
9936
9937
# the 'buildbotURL' string should point to the location where the buildbot's
9938
# internal web server (usually the html.Waterfall page) is visible. This
9939
# typically uses the port number set in the Waterfall 'status' entry, but
9940
# with an externally-visible host name which the buildbot cannot figure out
9941
# without some help.
9942
414 by Daniel Bartholomew
more changes for buildbot 0.8.8 upgrade
9943
#c['buildbotURL'] = "http://askmonty.org/buildbot/"
9944
c['buildbotURL'] = "http://buildbot.askmonty.org/buildbot/"
52 by Kristian Nielsen
Tree configuration.
9945
9946
c['buildHorizon'] = 250
9947
c['logHorizon'] = 200
95 by Kristian Nielsen
Increase buildCacheSize, giving an enormous speed boost for grid display.
9948
c['buildCacheSize'] = 5000
9949
c['changeCacheSize'] = 10000