Merge "Make components use PyMySQL as default DB driver"

This commit is contained in:
Jenkins 2016-11-08 18:19:36 +00:00 committed by Gerrit Code Review
commit c5e5a3062a
29 changed files with 42 additions and 30 deletions

View File

@ -265,7 +265,7 @@ The openstack::compute class deploys the following services:
fixed_range => '10.0.0.0/24',
network_manager => 'nova.network.manager.FlatDHCPManager',
multi_host => false,
database_connection => 'mysql://nova:nova_db_passwd@192.168.101.10/nova',
database_connection => 'mysql+pymysql://nova:nova_db_passwd@192.168.101.10/nova',
rabbit_host => '192.168.101.10',
glance_api_servers => '192.168.101.10:9292',
vncproxy_host => '192.168.101.10',

View File

@ -31,7 +31,7 @@ class openstack_tasks::aodh::aodh {
$database_vip = hiera('database_vip')
$db_type = pick($aodh_hash['db_type'], 'mysql')
$db_type = pick($aodh_hash['db_type'], 'mysql+pymysql')
$db_name = pick($aodh_hash['db_name'], 'aodh')
$db_user = pick($aodh_hash['db_user'], 'aodh')
$db_password = $aodh_hash['db_password']

View File

@ -5,7 +5,7 @@ class openstack_tasks::aodh::db {
$aodh_hash = hiera_hash('aodh', { 'db_password' => 'aodh' })
$database_vip = hiera('database_vip')
$db_type = pick($aodh_hash['db_type'], 'mysql')
$db_type = pick($aodh_hash['db_type'], 'mysql+pymysql')
$db_name = pick($aodh_hash['db_name'], 'aodh')
$db_user = pick($aodh_hash['db_user'], 'aodh')
$db_password = $aodh_hash['db_password']

View File

@ -64,7 +64,7 @@ class openstack_tasks::glance::glance {
}
$db_type = 'mysql'
$db_type = pick($glance_hash['db_type'], 'mysql+pymysql')
$db_host = pick($glance_hash['db_host'], $database_vip)
$db_user = pick($glance_hash['db_user'], 'glance')
$db_password = $glance_hash['db_password']

View File

@ -76,7 +76,7 @@ class openstack_tasks::heat::heat {
$storage_hash = hiera_hash('storage', {})
$db_type = 'mysql'
$db_type = pick($heat_hash['db_type'], 'mysql+pymysql')
$db_host = pick($heat_hash['db_host'], hiera('database_vip'))
$db_user = pick($heat_hash['db_user'], 'heat')
$db_password = $heat_hash['db_password']

View File

@ -27,7 +27,7 @@ class openstack_tasks::ironic::ironic {
$memcached_servers = hiera('memcached_servers')
$db_type = 'mysql'
$db_type = pick($ironic_hash['db_type'], 'mysql+pymysql')
$db_host = pick($ironic_hash['db_host'], $database_vip)
$db_user = pick($ironic_hash['db_user'], 'ironic')
$db_name = pick($ironic_hash['db_name'], 'ironic')

View File

@ -28,7 +28,7 @@ class openstack_tasks::ironic::ironic_compute {
$ironic_username = pick($ironic_hash['auth_name'],'ironic')
$ironic_user_password = pick($ironic_hash['user_password'],'ironic')
$db_type = 'mysql'
$db_type = pick($nova_hash['db_type'], 'mysql+pymysql')
$db_host = pick($nova_hash['db_host'], $database_vip)
$db_user = pick($nova_hash['db_user'], 'nova')
$db_name = pick($nova_hash['db_name'], 'nova')

View File

@ -45,7 +45,7 @@ class openstack_tasks::keystone::keystone {
$user_admin_role = hiera('user_admin_role')
$user_admin_domain = hiera('user_admin_domain')
$db_type = 'mysql'
$db_type = pick($keystone_hash['db_type'], 'mysql+pymysql')
$db_host = pick($keystone_hash['db_host'], $database_vip)
$db_password = $keystone_hash['db_password']
$db_name = pick($keystone_hash['db_name'], 'keystone')

View File

@ -53,7 +53,7 @@ class openstack_tasks::murano::murano {
$murano_user = pick($murano_hash['user'], 'murano')
$tenant = pick($murano_hash['tenant'], 'services')
$db_type = 'mysql'
$db_type = pick($murano_hash['db_type'], 'mysql+pymysql')
$db_user = pick($murano_hash['db_user'], 'murano')
$db_name = pick($murano_hash['db_name'], 'murano')
$db_password = pick($murano_hash['db_password'])

View File

@ -25,7 +25,7 @@ class openstack_tasks::openstack_cinder::openstack_cinder {
$kombu_compression = hiera('kombu_compression', $::os_service_default)
$memcached_servers = hiera('memcached_servers')
$default_volume_type = pick($cinder_hash['default_volume_type'], $::os_service_default)
$db_type = 'mysql'
$db_type = pick($cinder_hash['db_type'], 'mysql+pymysql')
$db_host = pick($cinder_hash['db_host'], hiera('database_vip'))
$db_user = pick($cinder_hash['db_user'], 'cinder')
$db_password = $cinder_hash[db_password]

View File

@ -105,7 +105,7 @@ class openstack_tasks::openstack_controller::openstack_controller {
$enable_cpu_pinning = false
}
$db_type = 'mysql'
$db_type = pick($nova_hash['db_type'], 'mysql+pymysql')
$db_host = pick($nova_hash['db_host'], hiera('database_vip'))
$db_user = pick($nova_hash['db_user'], 'nova')
$db_password = $nova_hash['db_password']

View File

@ -36,7 +36,7 @@ class openstack_tasks::openstack_network::server_config {
$primary_controller = roles_include($neutron_primary_controller_roles)
$compute = roles_include($neutron_compute_roles)
$db_type = 'mysql'
$db_type = try_get_value($neutron_config, 'database/type', 'mysql+pymysql')
$db_password = $neutron_config['database']['passwd']
$db_user = dig44($neutron_config, ['database', 'user'], 'neutron')
$db_name = dig44($neutron_config, ['database', 'name'], 'neutron')

View File

@ -27,7 +27,7 @@ class openstack_tasks::roles::cinder {
$keystone_user = pick($cinder_hash['user'], 'cinder')
$keystone_tenant = pick($cinder_hash['tenant'], 'services')
$db_type = 'mysql'
$db_type = pick($cinder_hash['db_type'], 'mysql+pymysql')
$db_host = pick($cinder_hash['db_host'], hiera('database_vip'))
$db_user = pick($cinder_hash['db_user'], 'cinder')
$db_password = $cinder_hash[db_password]

View File

@ -43,7 +43,7 @@ class openstack_tasks::roles::ironic_conductor {
$admin_identity_address = get_ssl_property($ssl_hash, {}, 'keystone', 'admin', 'hostname', [$service_endpoint, $management_vip])
$admin_identity_uri = "${admin_identity_protocol}://${admin_identity_address}:35357"
$db_type = 'mysql'
$db_type = pick($ironic_hash['db_type'], 'mysql+pymysql')
$db_host = pick($ironic_hash['db_host'], $database_vip)
$db_user = pick($ironic_hash['db_user'], 'ironic')
$db_name = pick($ironic_hash['db_name'], 'ironic')

View File

@ -55,7 +55,7 @@ class openstack_tasks::sahara::sahara {
$max_retries = '-1'
$idle_timeout = '3600'
$db_type = 'mysql'
$db_type = pick($sahara_hash['db_type'], 'mysql+pymysql')
$db_user = pick($sahara_hash['db_user'], 'sahara')
$db_name = pick($sahara_hash['db_name'], 'sahara')
$db_password = pick($sahara_hash['db_password'])

View File

@ -331,7 +331,7 @@ class osnailyfacter::globals::globals {
# TODO(aschultz): I don't think this is used so it should probably be
# deprecated and removed.
$sql_connection = os_database_connection({
'dialect' => 'mysql',
'dialect' => 'mysql+pymysql',
'host' => $database_vip,
'database' => 'nova',
'username' => 'nova',

View File

@ -44,6 +44,7 @@ describe manifest do
api_pecan_debug = aodh_hash.fetch('debug', debug)
db_host = Noop.hiera 'database_vip'
db_type = Noop.hiera_structure 'aodh/db_type', 'mysql+pymysql'
db_name = aodh_hash.fetch('db_name', 'aodh')
db_user = aodh_hash.fetch('db_user', 'aodh')
db_password = aodh_hash['db_password']
@ -139,7 +140,7 @@ describe manifest do
db_params = '?charset=utf8'
end
should contain_aodh_config('database/connection').with(:value => "mysql://#{db_user}:#{db_password}@#{db_host}/#{db_name}#{db_params}")
should contain_aodh_config('database/connection').with(:value => "#{db_type}://#{db_user}:#{db_password}@#{db_host}/#{db_name}#{db_params}")
end
it 'should configure alarm ttl' do

View File

@ -38,6 +38,7 @@ describe manifest do
pipeline = 'keystone'
end
database_vip = Noop.hiera('database_vip')
glance_db_type = Noop.hiera_structure 'glance/db_type', 'mysql+pymysql'
glance_db_password = Noop.hiera_structure 'glance/db_password', 'glance'
glance_db_user = Noop.hiera_structure 'glance/db_user', 'glance'
glance_db_name = Noop.hiera_structure 'glance/db_name', 'glance'
@ -109,7 +110,7 @@ describe manifest do
extra_params = '?charset=utf8'
end
db_connection = "mysql://#{glance_db_user}:#{glance_db_password}@#{database_vip}/#{glance_db_name}#{extra_params}"
db_connection = "#{glance_db_type}://#{glance_db_user}:#{glance_db_password}@#{database_vip}/#{glance_db_name}#{extra_params}"
should contain_class('glance::api').with(:database_connection => db_connection)
should contain_class('glance::registry').with(:database_connection => db_connection)
should contain_class('glance::glare::db').with(:database_connection => db_connection)

View File

@ -67,6 +67,7 @@ describe manifest do
storage_hash = Noop.hiera_hash 'storage'
database_vip = Noop.hiera('database_vip')
heat_db_type = Noop.hiera_structure 'heat/db_type', 'mysql+pymysql'
heat_db_password = Noop.hiera_structure 'heat/db_password', 'heat'
heat_db_user = Noop.hiera_structure 'heat/db_user', 'heat'
heat_db_name = Noop.hiera('heat_db_name', 'heat')
@ -107,7 +108,7 @@ describe manifest do
extra_params = '?charset=utf8'
end
should contain_class('heat').with(
:database_connection => "mysql://#{heat_db_user}:#{heat_db_password}@#{database_vip}/#{heat_db_name}#{extra_params}"
:database_connection => "#{heat_db_type}://#{heat_db_user}:#{heat_db_password}@#{database_vip}/#{heat_db_name}#{extra_params}"
)
end

View File

@ -22,6 +22,7 @@ describe manifest do
ironic_enabled = Noop.hiera_structure 'ironic/enabled'
database_vip = Noop.hiera('database_vip')
nova_db_type = Noop.hiera_structure 'nova/db_type', 'mysql+pymysql'
nova_db_password = Noop.hiera_structure 'nova/db_password', 'nova'
nova_db_user = Noop.hiera_structure 'nova/db_user', 'nova'
nova_db_name = Noop.hiera_structure 'nova/db_name', 'nova'
@ -107,7 +108,7 @@ describe manifest do
max_pool_size = Noop.hiera 'max_pool_size', [facts[:os_workers] * 5 + 0, 30 + 0].min
should contain_class('nova').with(
:database_connection => "mysql://#{nova_db_user}:#{nova_db_password}@#{database_vip}/#{nova_db_name}#{extra_params}",
:database_connection => "#{nova_db_type}://#{nova_db_user}:#{nova_db_password}@#{database_vip}/#{nova_db_name}#{extra_params}",
:cinder_catalog_info => Noop.puppet_function('pick', nova_hash['cinder_catalog_info'], 'volumev2:cinderv2:internalURL'),
:use_stderr => use_stderr,
:notification_driver => nova_notification_driver,

View File

@ -21,6 +21,7 @@ if ironic_enabled
admin_password = Noop.hiera_structure('ironic/user_password', 'ironic')
database_vip = Noop.hiera('database_vip')
ironic_db_type = Noop.hiera_structure 'ironic/db_type', 'mysql+pymysql'
ironic_db_password = Noop.hiera_structure 'ironic/db_password', 'ironic'
ironic_db_user = Noop.hiera_structure 'ironic/db_user', 'ironic'
ironic_db_name = Noop.hiera_structure 'ironic/db_name', 'ironic'
@ -94,7 +95,7 @@ if ironic_enabled
extra_params = '?charset=utf8'
end
should contain_class('ironic').with(
:database_connection => "mysql://#{ironic_db_user}:#{ironic_db_password}@#{database_vip}/#{ironic_db_name}#{extra_params}"
:database_connection => "#{ironic_db_type}://#{ironic_db_user}:#{ironic_db_password}@#{database_vip}/#{ironic_db_name}#{extra_params}"
)
end

View File

@ -70,6 +70,7 @@ describe manifest do
primary_controller = Noop.hiera 'primary_controller'
database_vip = Noop.hiera('database_vip')
keystone_db_type = Noop.hiera_structure 'keystone/db_type', 'mysql+pymysql'
keystone_db_password = Noop.hiera_structure 'keystone/db_password', 'keystone'
keystone_db_user = Noop.hiera_structure 'keystone/db_user', 'keystone'
keystone_db_name = Noop.hiera_structure 'keystone/db_name', 'keystone'
@ -112,7 +113,7 @@ describe manifest do
extra_params = '?charset=utf8'
end
should contain_class('keystone').with(
:database_connection => "mysql://#{keystone_db_user}:#{keystone_db_password}@#{database_vip}/#{keystone_db_name}#{extra_params}"
:database_connection => "#{keystone_db_type}://#{keystone_db_user}:#{keystone_db_password}@#{database_vip}/#{keystone_db_name}#{extra_params}"
)
end

View File

@ -54,6 +54,7 @@ describe manifest do
let(:amqp_hosts) { Noop.hiera('amqp_hosts') }
let(:public_ssl) { Noop.hiera_structure('public_ssl/services') }
let(:db_type) { Noop.hiera_structure('murano/db_type', 'mysql+pymysql') }
let(:db_user) { Noop.hiera_structure('murano/db_user', 'murano') }
let(:db_name) { Noop.hiera_structure('murano/db_name', 'murano') }
let(:db_host) { Noop.hiera_structure('murano/db_host', service_endpoint) }
@ -74,7 +75,7 @@ describe manifest do
else
extra_params = '?charset=utf8'
end
"mysql://#{db_user}:#{db_password}@#{db_host}/#{db_name}#{extra_params}"
"#{db_type}://#{db_user}:#{db_password}@#{db_host}/#{db_name}#{extra_params}"
end
let(:ssl_hash) { Noop.hiera_hash 'use_ssl', {} }

View File

@ -36,6 +36,7 @@ describe manifest do
management_vip = Noop.hiera 'management_vip'
database_vip = Noop.hiera('database_vip')
cinder = Noop.puppet_function 'roles_include', 'cinder'
cinder_db_type = Noop.hiera_structure 'cinder/db_type', 'mysql+pymysql'
cinder_db_password = Noop.hiera_structure 'cinder/db_password', 'cinder'
cinder_db_user = Noop.hiera_structure 'cinder/db_user', 'cinder'
cinder_db_name = Noop.hiera_structure 'cinder/db_name', 'cinder'
@ -83,7 +84,7 @@ describe manifest do
extra_params = '?charset=utf8'
end
should contain_class('cinder').with(
:database_connection => "mysql://#{cinder_db_user}:#{cinder_db_password}@#{database_vip}/#{cinder_db_name}#{extra_params}"
:database_connection => "#{cinder_db_type}://#{cinder_db_user}:#{cinder_db_password}@#{database_vip}/#{cinder_db_name}#{extra_params}"
)
end

View File

@ -31,6 +31,7 @@ describe manifest do
management_vip = Noop.hiera 'management_vip'
let(:database_vip) { Noop.hiera('database_vip') }
let(:nova_db_type) { Noop.hiera_structure 'nova/db_type', 'mysql+pymysql' }
let(:nova_db_password) { Noop.hiera_structure 'nova/db_password', 'nova' }
let(:nova_db_user) { Noop.hiera_structure 'nova/db_user', 'nova' }
let(:nova_db_name) { Noop.hiera_structure 'nova/db_name', 'nova' }
@ -230,8 +231,8 @@ describe manifest do
extra_params = '?charset=utf8'
end
should contain_class('nova').with(
:database_connection => "mysql://#{nova_db_user}:#{nova_db_password}@#{database_vip}/#{nova_db_name}#{extra_params}",
:api_database_connection => "mysql://#{api_db_user}:#{api_db_password}@#{database_vip}/#{api_db_name}#{extra_params}"
:database_connection => "#{nova_db_type}://#{nova_db_user}:#{nova_db_password}@#{database_vip}/#{nova_db_name}#{extra_params}",
:api_database_connection => "#{nova_db_type}://#{api_db_user}:#{api_db_password}@#{database_vip}/#{api_db_name}#{extra_params}"
)
end

View File

@ -40,7 +40,7 @@ describe manifest do
it 'Configure database options for neutron::server' do
sync_db = Noop.hiera('primary_controller')
db_type = 'mysql'
db_type = neutron_config.fetch('database', {}).fetch('type', 'mysql+pymysql')
db_password = neutron_config.fetch('database', {}).fetch('passwd')
db_user = neutron_config.fetch('database', {}).fetch('user', 'neutron')
db_name = neutron_config.fetch('database', {}).fetch('name', 'neutron')

View File

@ -23,6 +23,7 @@ describe manifest do
management_vip = Noop.hiera 'management_vip'
database_vip = Noop.hiera('database_vip')
cinder_db_type = Noop.hiera_structure 'cinder/db_type', 'mysql+pymysql'
cinder_db_password = Noop.hiera_structure 'cinder/db_password', 'cinder'
cinder_db_user = Noop.hiera_structure 'cinder/db_user', 'cinder'
cinder_db_name = Noop.hiera_structure 'cinder/db_name', 'cinder'
@ -52,7 +53,7 @@ describe manifest do
extra_params = '?charset=utf8'
end
should contain_class('cinder').with(
:database_connection => "mysql://#{cinder_db_user}:#{cinder_db_password}@#{database_vip}/#{cinder_db_name}#{extra_params}"
:database_connection => "#{cinder_db_type}://#{cinder_db_user}:#{cinder_db_password}@#{database_vip}/#{cinder_db_name}#{extra_params}"
)
end

View File

@ -13,6 +13,7 @@ describe manifest do
amqp_durable_queues = Noop.hiera_structure 'ironic/amqp_durable_queues', 'false'
database_vip = Noop.hiera('database_vip')
ironic_db_type = Noop.hiera_structure 'ironic/db_type', 'mysql+pymysql'
ironic_db_password = Noop.hiera_structure 'ironic/db_password', 'ironic'
ironic_db_user = Noop.hiera_structure 'ironic/db_user', 'ironic'
ironic_db_name = Noop.hiera_structure 'ironic/db_name', 'ironic'
@ -53,7 +54,7 @@ describe manifest do
extra_params = '?charset=utf8'
end
should contain_class('ironic').with(
:database_connection => "mysql://#{ironic_db_user}:#{ironic_db_password}@#{database_vip}/#{ironic_db_name}#{extra_params}",
:database_connection => "#{ironic_db_type}://#{ironic_db_user}:#{ironic_db_password}@#{database_vip}/#{ironic_db_name}#{extra_params}",
:sync_db => false
)
end

View File

@ -96,6 +96,7 @@ describe manifest do
sahara_password = Noop.hiera_structure('sahara/user_password')
primary_controller = Noop.hiera 'primary_controller'
tenant = Noop.hiera_structure('sahara/tenant', 'services')
db_type = Noop.hiera_structure 'sahara/db_type', 'mysql+pymysql'
db_user = Noop.hiera_structure('sahara/db_user', 'sahara')
db_name = Noop.hiera_structure('sahara/db_name', 'sahara')
db_password = Noop.hiera_structure('sahara/db_password')
@ -110,7 +111,7 @@ describe manifest do
else
extra_params = '?charset=utf8'
end
sql_connection = "mysql://#{db_user}:#{db_password}@#{db_host}/#{db_name}#{extra_params}"
sql_connection = "#{db_type}://#{db_user}:#{db_password}@#{db_host}/#{db_name}#{extra_params}"
should contain_class('sahara').with(
'auth_uri' => auth_url,