decouple mysql setup from gerrit module

This commit moves the MySQL configuration from the gerrit puppet
module into a seperate mysql puppet module.  The purpose of
this change is to allow us to more easily customise gerrit's
mysql configuration for each instance of gerrit that we deploy..

Partial-Bug: 1083101
Change-Id: Ibcc31b3fce8af54229fd4de69a49842ac1c428ae
This commit is contained in:
Khai Do 2013-10-02 15:17:01 -07:00
parent 6ee3caea26
commit 6a2e31da4b
5 changed files with 50 additions and 31 deletions

View File

@ -67,8 +67,6 @@
#
class gerrit(
$war = '',
$mysql_password = '',
$mysql_root_password = '',
$email_private_key = '',
$vhost_name = $::fqdn,
$canonicalweburl = "https://${::fqdn}/",
@ -241,29 +239,6 @@ class gerrit(
require => File['/home/gerrit2/review_site/etc'],
}
# Set up MySQL.
class { 'mysql::server':
config_hash => {
'root_password' => $mysql_root_password,
'default_engine' => 'InnoDB',
'bind_address' => '127.0.0.1',
}
}
include mysql::server::account_security
mysql::db { 'reviewdb':
user => 'gerrit2',
password => $mysql_password,
host => 'localhost',
grant => ['all'],
charset => 'latin1',
require => [
Class['mysql::server'],
Class['mysql::server::account_security'],
],
}
# Set up apache.
apache::vhost { $vhost_name:

View File

@ -0,0 +1,32 @@
# == Class: gerrit::mysql
#
class gerrit::mysql(
$mysql_root_password = '',
$database_name = '',
$database_user = '',
$database_password = '',
) {
class { 'mysql::server':
config_hash => {
'root_password' => $mysql_root_password,
'default_engine' => 'InnoDB',
'bind_address' => '127.0.0.1',
}
}
include mysql::server::account_security
mysql::db { $database_name:
user => $database_user,
password => $database_password,
host => 'localhost',
grant => ['all'],
charset => 'latin1',
require => [
Class['mysql::server'],
Class['mysql::server::account_security'],
],
}
}
# vim:sw=2:ts=2:expandtab:textwidth=79

View File

@ -45,8 +45,6 @@ class openstack_project::gerrit (
$github_oauth_token = '',
$github_project_username = '',
$github_project_password = '',
$mysql_password = '',
$mysql_root_password = '',
$trivial_rebase_role_id = '',
$email_private_key = '',
$replicate_local = true,
@ -150,8 +148,6 @@ class openstack_project::gerrit (
contactstore_appsec => $contactstore_appsec,
contactstore_pubkey => $contactstore_pubkey,
contactstore_url => $contactstore_url,
mysql_password => $mysql_password,
mysql_root_password => $mysql_root_password,
email_private_key => $email_private_key,
replicate_local => $replicate_local,
replication => $replication,

View File

@ -70,6 +70,15 @@ class openstack_project::review (
$swift_username = '',
$swift_password = ''
) {
# Setup MySQL
class { 'gerrit::mysql':
mysql_root_password => $mysql_root_password,
database_name => 'reviewdb',
database_user => 'gerrit2',
database_password => $mysql_password,
}
class { 'openstack_project::gerrit':
ssl_cert_file =>
'/etc/ssl/certs/review.openstack.org.pem',

View File

@ -24,6 +24,15 @@ class openstack_project::review_dev (
$swift_username = '',
$swift_password = ''
) {
# Setup MySQL
class { 'gerrit::mysql':
mysql_root_password => $mysql_root_password,
database_name => 'reviewdb',
database_user => 'gerrit2',
database_password => $mysql_password,
}
class { 'openstack_project::gerrit':
vhost_name => 'review-dev.openstack.org',
canonicalweburl => 'https://review-dev.openstack.org/',
@ -53,8 +62,6 @@ class openstack_project::review_dev (
github_oauth_token => $github_oauth_token,
github_project_username => $github_project_username,
github_project_password => $github_project_password,
mysql_password => $mysql_password,
mysql_root_password => $mysql_root_password,
trivial_rebase_role_id =>
'trivial-rebase@review-dev.openstack.org',
email_private_key => $email_private_key,