Skip to content

Commit e3c9932

Browse files
committed
Merge pull request #736 from igalic/no_server
[#puppethack] do not require mysql::server when using mysql::db
2 parents fd03318 + f44830c commit e3c9932

File tree

4 files changed

+22
-3
lines changed

4 files changed

+22
-3
lines changed

README.md

+15
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,21 @@ mysql::db { 'mydb':
146146
To add custom MySQL configuration, drop additional files into
147147
`includedir`. Dropping files into `includedir` allows you to override settings or add additional ones, which is helpful if you choose not to use `override_options` in `mysql::server`. The `includedir` location is by default set to /etc/mysql/conf.d.
148148

149+
###Working with an existing server
150+
151+
It is possible to use the MySQL module to instantiate databases and
152+
users on an existing MySQL server. For this to work, you will need an
153+
appropriate `.my.cnf` in `root`'s home directory containing the remote
154+
server address and credentials. For example:
155+
156+
[client]
157+
user=root
158+
host=localhost
159+
password=secret
160+
161+
When working with a remote server, you will *not* use the
162+
`mysql::server` class in your Puppet manifests.
163+
149164
##Reference
150165

151166
###Classes

lib/puppet/type/mysql_database.rb

+1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
ensurable
55

66
autorequire(:file) { '/root/.my.cnf' }
7+
autorequire(:class) { 'mysql::server' }
78

89
newparam(:name, :namevar => true) do
910
desc 'The name of the MySQL database to manage.'

lib/puppet/type/mysql_user.rb

+1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
ensurable
66

77
autorequire(:file) { '/root/.my.cnf' }
8+
autorequire(:class) { 'mysql::server' }
89

910
newparam(:name, :namevar => true) do
1011
desc "The name of the user. This uses the 'username@hostname' or username@hostname."

manifests/db.pp

+5-3
Original file line numberDiff line numberDiff line change
@@ -34,15 +34,14 @@
3434
charset => $charset,
3535
collate => $collate,
3636
provider => 'mysql',
37-
require => [ Class['mysql::server'], Class['mysql::client'] ],
37+
require => [ Class['mysql::client'] ],
3838
}
3939
ensure_resource('mysql_database', $dbname, $db_resource)
4040

4141
$user_resource = {
4242
ensure => $ensure,
4343
password_hash => mysql_password($password),
4444
provider => 'mysql',
45-
require => Class['mysql::server'],
4645
}
4746
ensure_resource('mysql_user', "${user}@${host}", $user_resource)
4847

@@ -52,7 +51,10 @@
5251
provider => 'mysql',
5352
user => "${user}@${host}",
5453
table => $table,
55-
require => [Mysql_database[$dbname], Mysql_user["${user}@${host}"], Class['mysql::server'] ],
54+
require => [
55+
Mysql_database[$dbname],
56+
Mysql_user["${user}@${host}"],
57+
],
5658
}
5759

5860
$refresh = ! $enforce_sql

0 commit comments

Comments
 (0)