diff --git a/manifests/db/mysql.pp b/manifests/db/mysql.pp index c0514b4c..83f9e5c1 100644 --- a/manifests/db/mysql.pp +++ b/manifests/db/mysql.pp @@ -71,9 +71,11 @@ define openstacklib::db::mysql ( ensure => present, charset => $charset, collate => $collate, - require => [ Class['mysql::server'], Class['mysql::client'] ], } + Class['mysql::server'] ~> Mysql_database<| title == $dbname |> + Class['mysql::client'] ~> Mysql_database<| title == $dbname |> + if $create_user or $create_grant { $allowed_hosts_list = unique(concat(any2array($allowed_hosts), [$host])) $real_allowed_hosts = prefix($allowed_hosts_list, "${dbname}_") diff --git a/manifests/db/mysql/host_access.pp b/manifests/db/mysql/host_access.pp index bd1ee99a..9c490113 100644 --- a/manifests/db/mysql/host_access.pp +++ b/manifests/db/mysql/host_access.pp @@ -48,16 +48,18 @@ define openstacklib::db::mysql::host_access ( mysql_user { "${user}@${host}": password_hash => $password_hash, tls_options => $tls_options, - require => Mysql_database[$database], } + Mysql_database<| title == $database |> ~> + Mysql_user<| title == "${user}@${host}" |> } if $create_grant { mysql_grant { "${user}@${host}/${database}.*": privileges => $privileges, table => "${database}.*", - require => Mysql_user["${user}@${host}"], user => "${user}@${host}", } + Mysql_user<| title == "${user}@${host}" |> ~> + Mysql_grant<| title == "${user}@${host}/${database}.*" |> } } diff --git a/manifests/policy/base.pp b/manifests/policy/base.pp index d5c457a5..b49ececf 100644 --- a/manifests/policy/base.pp +++ b/manifests/policy/base.pp @@ -38,8 +38,10 @@ define openstacklib::policy::base ( lens => 'Json.lns', incl => $file_path, changes => "set dict/entry[*][.=\"${key}\"]/string \"${value}\"", - require => Augeas["${file_path}-${key}-${value}-add"], } + Augeas<| title == "${file_path}-${key}-${value}-add" |> ~> + Augeas<| title == "${file_path}-${key}-${value}" |> + } diff --git a/manifests/service_validation.pp b/manifests/service_validation.pp index 4528a452..81fce60a 100644 --- a/manifests/service_validation.pp +++ b/manifests/service_validation.pp @@ -91,9 +91,8 @@ define openstacklib::service_validation( logoutput => 'on_failure', } - anchor { "create ${service_name} anchor": - require => Exec["execute ${service_name} validation"], - } + anchor { "create ${service_name} anchor": } -> + Exec<| title == "execute ${service_name} validation" |> } diff --git a/manifests/wsgi/apache.pp b/manifests/wsgi/apache.pp index a36dc3d2..cf71b1a3 100644 --- a/manifests/wsgi/apache.pp +++ b/manifests/wsgi/apache.pp @@ -189,22 +189,20 @@ define openstacklib::wsgi::apache ( if !defined(File[$wsgi_script_dir]) { file { $wsgi_script_dir: - ensure => directory, - owner => $user, - group => $group, - require => Package['httpd'], + ensure => directory, + owner => $user, + group => $group, } } file { $service_name: - ensure => file, - links => follow, - path => "${wsgi_script_dir}/${wsgi_script_file}", - source => $wsgi_script_source, - owner => $user, - group => $group, - mode => '0644', - require => File[$wsgi_script_dir], + ensure => file, + links => follow, + path => "${wsgi_script_dir}/${wsgi_script_file}", + source => $wsgi_script_source, + owner => $user, + group => $group, + mode => '0644', } $wsgi_daemon_process_options = { @@ -243,7 +241,10 @@ define openstacklib::wsgi::apache ( wsgi_chunked_request => $wsgi_chunked_request, custom_fragment => $vhost_custom_fragment, allow_encoded_slashes => $allow_encoded_slashes, - require => File[$service_name], } + Package<| name == 'httpd' |> + ~> File<| title == $wsgi_script_dir |> + ~> File <| title == $service_name |> + ~> Apache::Vhost<| title == $service_name |> } diff --git a/spec/defines/openstacklib_policy_spec.rb b/spec/defines/openstacklib_policy_spec.rb index ed5cf7ef..0ac2eded 100644 --- a/spec/defines/openstacklib_policy_spec.rb +++ b/spec/defines/openstacklib_policy_spec.rb @@ -20,7 +20,6 @@ describe 'openstacklib::policy::base' do 'lens' => 'Json.lns', 'incl' => '/etc/nova/policy.json', 'changes' => 'set dict/entry[*][.="context_is_admin or owner"]/string "foo:bar"', - 'require' => 'Augeas[/etc/nova/policy.json-context_is_admin or owner-foo:bar-add]' ) end diff --git a/spec/defines/openstacklib_service_validation_spec.rb b/spec/defines/openstacklib_service_validation_spec.rb index dad1175f..45b5af35 100644 --- a/spec/defines/openstacklib_service_validation_spec.rb +++ b/spec/defines/openstacklib_service_validation_spec.rb @@ -43,10 +43,6 @@ describe 'openstacklib::service_validation' do :logoutput => 'on_failure', )} - it { is_expected.to contain_anchor("create #{title} anchor").with( - :require => "Exec[execute #{title} validation]", - )} - end context 'with unless parameter' do @@ -65,10 +61,6 @@ describe 'openstacklib::service_validation' do :unless => 'pwd', )} - it { is_expected.to contain_anchor("create #{title} anchor").with( - :require => "Exec[execute #{title} validation]", - )} - end context 'with onlyif parameter' do @@ -87,10 +79,6 @@ describe 'openstacklib::service_validation' do :onlyif => 'pwd', )} - it { is_expected.to contain_anchor("create #{title} anchor").with( - :require => "Exec[execute #{title} validation]", - )} - end context 'when omitting a required parameter command' do diff --git a/spec/defines/openstacklib_wsgi_apache_spec.rb b/spec/defines/openstacklib_wsgi_apache_spec.rb index b62f385f..51dbe332 100644 --- a/spec/defines/openstacklib_wsgi_apache_spec.rb +++ b/spec/defines/openstacklib_wsgi_apache_spec.rb @@ -52,7 +52,6 @@ describe 'openstacklib::wsgi::apache' do 'ensure' => 'directory', 'owner' => 'keystone', 'group' => 'keystone', - 'require' => 'Package[httpd]' )} it { is_expected.to contain_file('keystone_wsgi').with( @@ -84,7 +83,6 @@ describe 'openstacklib::wsgi::apache' do 'display-name' => 'keystone_wsgi', }, 'wsgi_application_group' => '%{GLOBAL}', - 'require' => 'File[keystone_wsgi]', 'setenvif' => ['X-Forwarded-Proto https HTTPS=1'] )} it { is_expected.to contain_concat("#{platform_params[:httpd_ports_file]}") } @@ -128,7 +126,6 @@ describe 'openstacklib::wsgi::apache' do 'wsgi_application_group' => '%{GLOBAL}', 'wsgi_pass_authorization' => 'On', 'wsgi_chunked_request' => 'On', - 'require' => 'File[keystone_wsgi]', 'custom_fragment' => 'LimitRequestFieldSize 81900', 'allow_encoded_slashes' => 'on', )}