Remove password hash generation in each puppet modules

... and migrate it to openstacklib so that all logics about database
configuration are implemented in one common place.

Depends-on: https://review.opendev.org/#/c/728595/
Change-Id: I3d4303118cd6865ccc5a35c77ea8c1da2c4ccf57
This commit is contained in:
Takashi Kajinami
2020-05-19 19:55:47 +09:00
parent db1b9c1d5c
commit 9f299497b5
5 changed files with 40 additions and 36 deletions

View File

@@ -49,7 +49,7 @@ class gnocchi::db::mysql(
::openstacklib::db::mysql { 'gnocchi': ::openstacklib::db::mysql { 'gnocchi':
user => $user, user => $user,
password_hash => mysql::password($password), password => $password,
dbname => $dbname, dbname => $dbname,
host => $host, host => $host,
charset => $charset, charset => $charset,

View File

@@ -35,11 +35,11 @@ class gnocchi::db::postgresql(
include gnocchi::deps include gnocchi::deps
::openstacklib::db::postgresql { 'gnocchi': ::openstacklib::db::postgresql { 'gnocchi':
password_hash => postgresql_password($user, $password), password => $password,
dbname => $dbname, dbname => $dbname,
user => $user, user => $user,
encoding => $encoding, encoding => $encoding,
privileges => $privileges, privileges => $privileges,
} }
Anchor['gnocchi::db::begin'] Anchor['gnocchi::db::begin']

View File

@@ -13,10 +13,6 @@
"name": "puppetlabs/stdlib", "name": "puppetlabs/stdlib",
"version_requirement": ">=5.0.0 <7.0.0" "version_requirement": ">=5.0.0 <7.0.0"
}, },
{
"name": "puppetlabs/mysql",
"version_requirement": ">=6.0.0 <11.0.0"
},
{ {
"name": "openstack/openstacklib", "name": "openstack/openstacklib",
"version_requirement": ">=16.3.0 <17.0.0" "version_requirement": ">=16.3.0 <17.0.0"

View File

@@ -14,9 +14,9 @@ describe 'gnocchi::db::mysql' do
end end
it { is_expected.to contain_openstacklib__db__mysql('gnocchi').with( it { is_expected.to contain_openstacklib__db__mysql('gnocchi').with(
:password_hash => '*C13FFB03C3674F278DF1673D0DA7FB1EF58899F0', :password => 'gnocchipass1',
:charset => 'utf8', :charset => 'utf8',
:collate => 'utf8_general_ci', :collate => 'utf8_general_ci',
)} )}
end end
@@ -24,16 +24,16 @@ describe 'gnocchi::db::mysql' do
describe "overriding default params" do describe "overriding default params" do
let :params do let :params do
{ {
:password => 'gnocchipass2', :password => 'gnocchipass2',
:dbname => 'gnocchidb2', :dbname => 'gnocchidb2',
:charset => 'utf8', :charset => 'utf8',
} }
end end
it { is_expected.to contain_openstacklib__db__mysql('gnocchi').with( it { is_expected.to contain_openstacklib__db__mysql('gnocchi').with(
:password_hash => '*CE931F98EEC20A712654BF67B17E413F3FE69089', :password => 'gnocchipass2',
:dbname => 'gnocchidb2', :dbname => 'gnocchidb2',
:charset => 'utf8' :charset => 'utf8'
)} )}
end end
@@ -41,14 +41,14 @@ describe 'gnocchi::db::mysql' do
describe "overriding allowed_hosts param to array" do describe "overriding allowed_hosts param to array" do
let :params do let :params do
{ {
:password => 'gnocchipass2', :password => 'gnocchipass2',
:dbname => 'gnocchidb2', :dbname => 'gnocchidb2',
:allowed_hosts => ['127.0.0.1','%'] :allowed_hosts => ['127.0.0.1','%']
} }
end end
it { is_expected.to contain_openstacklib__db__mysql('gnocchi').with( it { is_expected.to contain_openstacklib__db__mysql('gnocchi').with(
:password_hash => '*CE931F98EEC20A712654BF67B17E413F3FE69089', :password => 'gnocchipass2',
:dbname => 'gnocchidb2', :dbname => 'gnocchidb2',
:allowed_hosts => ['127.0.0.1','%'] :allowed_hosts => ['127.0.0.1','%']
)} )}
@@ -58,14 +58,14 @@ describe 'gnocchi::db::mysql' do
describe "overriding allowed_hosts param to string" do describe "overriding allowed_hosts param to string" do
let :params do let :params do
{ {
:password => 'gnocchipass2', :password => 'gnocchipass2',
:dbname => 'gnocchidb2', :dbname => 'gnocchidb2',
:allowed_hosts => '192.168.1.1' :allowed_hosts => '192.168.1.1'
} }
end end
it { is_expected.to contain_openstacklib__db__mysql('gnocchi').with( it { is_expected.to contain_openstacklib__db__mysql('gnocchi').with(
:password_hash => '*CE931F98EEC20A712654BF67B17E413F3FE69089', :password => 'gnocchipass2',
:dbname => 'gnocchidb2', :dbname => 'gnocchidb2',
:allowed_hosts => '192.168.1.1' :allowed_hosts => '192.168.1.1'
)} )}
@@ -74,14 +74,14 @@ describe 'gnocchi::db::mysql' do
describe "overriding allowed_hosts param equals to host param " do describe "overriding allowed_hosts param equals to host param " do
let :params do let :params do
{ {
:password => 'gnocchipass2', :password => 'gnocchipass2',
:dbname => 'gnocchidb2', :dbname => 'gnocchidb2',
:allowed_hosts => '127.0.0.1' :allowed_hosts => '127.0.0.1'
} }
end end
it { is_expected.to contain_openstacklib__db__mysql('gnocchi').with( it { is_expected.to contain_openstacklib__db__mysql('gnocchi').with(
:password_hash => '*CE931F98EEC20A712654BF67B17E413F3FE69089', :password => 'gnocchipass2',
:dbname => 'gnocchidb2', :dbname => 'gnocchidb2',
:allowed_hosts => '127.0.0.1' :allowed_hosts => '127.0.0.1'
)} )}

View File

@@ -4,7 +4,7 @@ describe 'gnocchi::db::postgresql' do
shared_examples_for 'gnocchi::db::postgresql' do shared_examples_for 'gnocchi::db::postgresql' do
let :req_params do let :req_params do
{ :password => 'pw' } { :password => 'gnocchipass' }
end end
let :pre_condition do let :pre_condition do
@@ -16,11 +16,15 @@ describe 'gnocchi::db::postgresql' do
req_params req_params
end end
it { is_expected.to contain_postgresql__server__db('gnocchi').with( it { is_expected.to contain_openstacklib__db__postgresql('gnocchi').with(
:user => 'gnocchi', :user => 'gnocchi',
:password => 'md590440288cb225f56d585b88ad270cd37' :password => 'gnocchipass',
:dbname => 'gnocchi',
:encoding => nil,
:privileges => 'ALL',
)} )}
end end
end end
on_supported_os({ on_supported_os({
@@ -28,10 +32,14 @@ describe 'gnocchi::db::postgresql' do
}).each do |os,facts| }).each do |os,facts|
context "on #{os}" do context "on #{os}" do
let (:facts) do let (:facts) do
facts.merge!(OSDefaults.get_facts({ :concat_basedir => '/var/lib/puppet/concat' })) facts.merge(OSDefaults.get_facts({
:os_workers => 8,
:concat_basedir => '/var/lib/puppet/concat'
}))
end end
it_configures 'gnocchi::db::postgresql' it_configures 'gnocchi::db::postgresql'
end end
end end
end end