1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- # == Class: nova::db::mysql
- #
- # Class that configures mysql for nova
- #
- # === Parameters:
- #
- # [*password*]
- # Password to use for the nova user
- #
- # [*dbname*]
- # (optional) The name of the database
- # Defaults to 'nova'
- #
- # [*user*]
- # (optional) The mysql user to create
- # Defaults to 'nova'
- #
- # [*host*]
- # (optional) The IP address of the mysql server
- # Defaults to '127.0.0.1'
- #
- # [*charset*]
- # (optional) The charset to use for the nova database
- # Defaults to 'utf8'
- #
- # [*collate*]
- # (optional) The collate to use for the nova database
- # Defaults to 'utf8_general_ci'
- #
- # [*allowed_hosts*]
- # (optional) Additional hosts that are allowed to access this DB
- # Defaults to undef
- #
- # [*setup_cell0*]
- # (optional) Setup a cell0 for the cell_v2 functionality. This option will
- # be set to true by default in Ocata when the cell v2 setup is mandatory.
- # Defaults to false
- #
- class nova::db::mysql(
- $password,
- $dbname = 'nova',
- $user = 'nova',
- $host = '127.0.0.1',
- $charset = 'utf8',
- $collate = 'utf8_general_ci',
- $allowed_hosts = undef,
- $setup_cell0 = true,
- ) {
- include ::nova::deps
- $setup_cell0_real = pick($::nova::db::mysql_api::setup_cell0, $setup_cell0)
- ::openstacklib::db::mysql { 'nova':
- user => $user,
- password_hash => mysql_password($password),
- dbname => $dbname,
- host => $host,
- charset => $charset,
- collate => $collate,
- allowed_hosts => $allowed_hosts,
- }
- if $setup_cell0_real {
- # need for cell_v2
- ::openstacklib::db::mysql { 'nova_cell0':
- user => $user,
- password_hash => mysql_password($password),
- dbname => "${dbname}_cell0",
- host => $host,
- charset => $charset,
- collate => $collate,
- allowed_hosts => $allowed_hosts,
- create_user => false,
- }
- }
- Anchor['nova::db::begin']
- ~> Class['nova::db::mysql']
- ~> Anchor['nova::db::end']
- }
|