Upstream distributions have settled on using MariaDB instead of MySQL
and it's becoming more and more difficult to maintain on our end. As
such, we're removing support from this cookbook for MySQL and only leave
MariaDB as the supported platform.
Change-Id: I104de18ecab5ba64f08fd39314e565ab0483c558
This updates all references of let(:chef_run) to cached(:chef_run) to speed up
tests. By doing this, we have to create a new cached(:chef_run) block whenever
we need to adjust node attributes for testing. In addition, add missing spec
file for mysql-client-redhat.
Speed was been improved from 27.66 seconds to 20.78 seconds.
Change-Id: I8c095bb4ca298255e09fd59d0e43878423693636
- Replace git.openstack.org with opendev.org
- Update some documentation
- Move README.md to README.rst for better rendering
- Drop obsolete bootstrap.sh script
- Adopt default mysql dir from updated cookbook
Change-Id: I94a066975fe00a29ff6731021767b1eda294ba44
- mysql default version is 5.7 on Ubuntu 16.04
- included mysql devel headers for mysql2
- incremented mysql cookbook to 8.0
- incremented database cookbook to 6.0
- pinned mysql2 gem at 0.4.4
Depends-On: I57c8729e8732161ac34caa85259de8264e99c56d
Implements blueprint newton-xenial
Change-Id: I8ee882d5b154ec0d319e6c4186ebf9f8ae68f269
- deprecated Gemfile
- updated TESTING and README
- updated Rakefile to use chef exec instead of bundle exec
- replaced Runner by SoloRunner in specs
Change-Id: I2f2bf3e1f193cb43498d0d10da8500ff59a6f5aa
Adding more mysql tuning options to better support production-like
environments. These additional attribues have been set to default
values that match the mysql defaults. Including spec tests.
Change-Id: Iadb0746354ea93a6beef9ecbae5d1bdc5cec1d48
Closes-Bug: #1436481
mysql cookbook is now provider driven, and no longer has default
attributes, like server_root_password.
For the password, now always using the Common password methods.
For the other mysql attributes we used, these were moved into the
attributes mysql.rb file.
The attribute name space was changed from
[mysql][**attr**] and [mysql][tunable][**attr**] to
[openstack][mysql][**attr**]
This patch requires updates to the database and mysql-chef-gem cookbooks.mysql cookbook ver 6 changes
Change-Id: I05d27de80de0371503c5fa71591b4600bbeb2ca9
Implements: blueprint trusty-juno
* lookup mysql service resource instead of re-declaring it
* use unique name for flush resource as it's two separate uses
Change-Id: I8746e5001ea5cefc497049111f4d2e5e250f26de
Partial-Bug: #1409921
The default of 151 is very small for most openstack use cases.
Picked a higher recommended default that can be overridden as
necessary.
Added stub for newer postgresql cookbook level spec tests.
Change-Id: I0d7b0893d143202f55f04ddcdbc8618aaaacef25
Closes-Bug: #1398527
Set the mysql root password directly on the server resource, so it
does not need to be an attribute. This keeps passwords sourced from
encrypted data bags out of node attributes. Note that as indicated
in https://github.com/opscode-cookbooks/mysql/issues/215 all recipes
will be removed from the mysql cookbook in favor of having consumers
work with the resources directly, thereby providing more flexibility
in terms of how the various configuration settings are sourced.
Including the "server" recipe is not going to be a viable option
once that has happened, so this change not only addresses the
attribute issue, but it will also make upcoming changes to the
mysql cookbook more seamless. Note that the reference to the
default_version_for function had to be removed, because it is no
longer in the cookbook and therefore the build failed. It is no
longer necessary to set the version, as described in the README.md
file:
When [the version parameter is] omitted, it will install the
default MySQL version for the target platform.
Note that the code that sets node attributes in
spec/mysql-server_spec.rb was removed because it was interfering
with the new test and it did not seem to serve any purpose--there
were no failures after it was removed.
blueprint no-secret-attributes
Change-Id: I72be1e2131a107ddc43754bc5cf40a4ce7face95
Now depends on mysql ~> 5.3 and database ~> 2.2.
The mysql-server recipe now uses the mysql cookbook
wrapper method.
Blueprint: move-to-mysql-v5
Change-Id: I74111ead1555c46d32c3e096c380fec27b3ef593
Addresses: bug #1277041
By default mysql binds to 127.0.0.1. Setting the bind_ip attribute to
something else, as we do in the ops-database cookbook before calling the
mysql::server recipe, causes the my.cnf to be populated with the correct IP.
However, because of this bug in the upstream mysql cookbook:
https://tickets.opscode.com/browse/COOK-4161
mysql does not get restarted (it only gets reloaded)
and so the new bind_ip does not take effect.
This commit adds a workaround until the upstream bug is fixed. The
workaround directly modifies the template resource from the resource
collection to add a 'restart mysql' notification.
Change-Id: I4f59e9f7fecb5040532948d0bb07d49385280a48
- Update .rubocop.yml to include spec/**
- Update metadata.rb to be rubocop compliant
- Update spec files to be rubocop compliant
Change-Id: If059f01f46102282ffeed9323f6e06fa78f8597c
Addresses: blueprint rubocop-for-ops-database
Due to a bug in MySQL [1] -- or possibly the Ubuntu MySQL server
packages -- issuing a call to DROP USER fails consistently when
provisioning a node with the recipes/mysql-server.rb recipe.
This reworks the DROP USER to a DELETE call on the mysql.user
table. Note that the DROP USER is preferred over the call to
manually DELETE FROM mysql.user because Galera cluster does not
replicate DELETE events on MyISAM tables but does replicate
DROP USER events [2]. So, when the MySQL bug is fixed or a
workaround is found, we should revert this patch.
[1] http://bugs.mysql.com/bug.php?id=69644
[2] http://www.codership.com/wiki/doku.php?id=limitations
Change-Id: I0fab1a0f85d55eab96984064131d14a21b2236e3
Brought in openstack-common as a dep. Updated the tests to
better match what the recipes are doing (added tests where
missing). Updated attributes to match the format of our other
cookbooks. This is mostly some cleanups, to prepare for features.
Since this cookbook is not in use, made a larger commit than
would have if adding functionality to a released cookbook. Also,
upgraded to new Berkshelf which handles locking to cookbooks properly.
Change-Id: I8e4123d30012a9890ce3029184e1396d2083a6f1
This creates basic testing of the recipes as well as remove unused code such as
the fedora support and the use of passing attributes to openstack::packages.
Change-Id: Iece19811151fbdfd067e12d3b3163cfb78174e49