Files
puppet-cloudkitty/manifests/policy.pp
Emilien Macchi 1326af8093 Add group to policy management
The move of policy.json into code means the file may not exist. We've
added support to ensure that the file exists in the openstacklib but we
need to make sure the permissions are right for each service. This adds
the group information to the policies so it works right.

Depends-On: I26e8b1384f4f69712da9d06a4c565dfd1f17c9ed
Change-Id: I3bee5d31be0a0bacfd5eddb1f986af110a966e27
Co-Authored-By: Alex Schultz <aschultz@redhat.com>
2018-01-10 14:22:30 -08:00

47 lines
1.0 KiB
Puppet

# == Class: cloudkitty::policy
#
# Configure the cloudkitty policies
#
# === Parameters
#
# [*policies*]
# (optional) Set of policies to configure for cloudkitty
# Example :
# {
# 'cloudkitty-context_is_admin' => {
# 'key' => 'context_is_admin',
# 'value' => 'true'
# },
# 'cloudkitty-default' => {
# 'key' => 'default',
# 'value' => 'rule:admin_or_owner'
# }
# }
# Defaults to empty hash.
#
# [*policy_path*]
# (optional) Path to the nova policy.json file
# Defaults to /etc/cloudkitty/policy.json
#
class cloudkitty::policy (
$policies = {},
$policy_path = '/etc/cloudkitty/policy.json',
) {
include ::cloudkitty::deps
include ::cloudkitty::params
validate_hash($policies)
Openstacklib::Policy::Base {
file_path => $policy_path,
file_user => 'root',
file_group => $::cloudkitty::params::group,
}
create_resources('openstacklib::policy::base', $policies)
oslo::policy { 'cloudkitty_config': policy_file => $policy_path }
}