diff --git a/Gemfile b/Gemfile index 0d35201b4..c79324f1a 100644 --- a/Gemfile +++ b/Gemfile @@ -2,7 +2,8 @@ source 'https://rubygems.org' group :development, :test do gem 'puppetlabs_spec_helper', :require => false - gem 'puppet-lint', '~> 0.3.2' + gem 'puppet-lint', '~> 1.1' + gem 'puppet-lint-param-docs', '1.1.0' gem 'rake', '10.1.1' end diff --git a/manifests/api-cfn.pp b/manifests/api-cfn.pp index 6e30387b8..9ba359aac 100644 --- a/manifests/api-cfn.pp +++ b/manifests/api-cfn.pp @@ -1,5 +1,38 @@ +# == Class: heat::api-cfn +# +# WARNING: Deprecated class. Use heat::api_cfn instead ! # Installs & configure the heat CloudFormation API service # +# === Parameters +# [*enabled*] +# (Optional) Should the service be enabled. +# Defaults to 'true'. +# +# [*keystone_host*] +# +# [*keystone_port*] +# +# [*keystone_protocol*] +# +# [*keystone_user*] +# +# [*keystone_tenant*] +# +# [*keystone_password*] +# +# [*keystone_ec2_uri*] +# +# [*auth_uri*] +# +# [*bind_host*] +# +# [*bind_port*] +# +# [*verbose*] +# +# [*debug*] +# +# class heat::api-cfn ( $enabled = true, $keystone_host = '127.0.0.1', diff --git a/manifests/api-cloudwatch.pp b/manifests/api-cloudwatch.pp index 67657b16b..224481133 100644 --- a/manifests/api-cloudwatch.pp +++ b/manifests/api-cloudwatch.pp @@ -1,5 +1,38 @@ +# == Class: heat::api-cloudwatch +# +# WARNING: Deprecated class. Use heat::api_cloudwatch instead ! # Installs & configure the heat CloudWatch API service # +# === Parameters +# [*enabled*] +# (Optional) Should the service be enabled. +# Defaults to 'true'. +# +# [*keystone_host*] +# +# [*keystone_port*] +# +# [*keystone_protocol*] +# +# [*keystone_user*] +# +# [*keystone_tenant*] +# +# [*keystone_password*] +# +# [*keystone_ec2_uri*] +# +# [*auth_uri*] +# +# [*bind_host*] +# +# [*bind_port*] +# +# [*verbose*] +# +# [*debug*] +# +# class heat::api-cloudwatch ( $enabled = true, $keystone_host = '127.0.0.1', diff --git a/manifests/api.pp b/manifests/api.pp index a52e772f9..2c4fdf98f 100644 --- a/manifests/api.pp +++ b/manifests/api.pp @@ -1,13 +1,46 @@ +# == Class: heat::api +# # Installs & configure the heat API service # -# == Parameters -# [*enabled*] -# (optional) Should the service be enabled. -# Defaults to true +# === Parameters +# [*enabled*] +# (optional) Should the service be enabled. +# Defaults to 'true'. +# +# [*manage_service*] +# (optional) Whether the service should be managed by Puppet. +# Defaults to 'true'. +# +# [*bind_host*] +# (Optional) Address to bind the server. Useful when +# selecting a particular network interface. +# Defaults to '0.0.0.0'. +# +# [*bind_port*] +# (Optional) The port on which the server will listen. +# Defaults to '8004'. +# +# [*workers*] +# (Optional) The port on which the server will listen. +# Defaults to '0'. +# +# [*use_ssl*] +# (Optional) Whether to use ssl or not. +# Defaults to 'false'. +# +# [*cert_file*] +# (Optional) Location of the SSL certificate file to use for SSL mode. +# Required when $use_ssl is set to 'true'. +# Defaults to 'false'. +# +# [*key_file*] +# (Optional) Location of the SSL key file to use for enabling SSL mode. +# Required when $use_ssl is set to 'true'. +# Defaults to 'false'. +# +# === Deprecated Parameters # -# [*manage_service*] -# (optional) Whether the service should be managed by Puppet. -# Defaults to true. +# No Deprecated Parameters. # class heat::api ( $manage_service = true, diff --git a/manifests/api_cfn.pp b/manifests/api_cfn.pp index 7477c9db8..18d720a62 100644 --- a/manifests/api_cfn.pp +++ b/manifests/api_cfn.pp @@ -1,13 +1,49 @@ +# == Class: heat::api_cfn +# +# This class deprecates heat::api-cfn. +# # Installs & configure the heat CloudFormation API service # -# == Parameters -# [*enabled*] -# (optional) Should the service be enabled. -# Defaults to true +# === Parameters +# +# [*enabled*] +# (optional) Should the service be enabled. +# Defaults to 'true'. +# +# [*manage_service*] +# (optional) Whether the service should be managed by Puppet. +# Defaults to 'true'. +# +# [*bind_host*] +# (Optional) Address to bind the server. Useful when +# selecting a particular network interface. +# Defaults to '0.0.0.0'. +# +# [*bind_port*] +# (Optional) The port on which the server will listen. +# Defaults to '8000'. +# +# [*workers*] +# (Optional) The port on which the server will listen. +# Defaults to '0'. +# +# [*use_ssl*] +# (Optional) Whether to use ssl or not. +# Defaults to 'false'. +# +# [*cert_file*] +# (Optional) Location of the SSL certificate file to use for SSL mode. +# Required when $use_ssl is set to 'true'. +# Defaults to 'false'. +# +# [*key_file*] +# (Optional) Location of the SSL key file to use for enabling SSL mode. +# Required when $use_ssl is set to 'true'. +# Defaults to 'false'. +# +# == Deprecated Parameters # -# [*manage_service*] -# (optional) Whether the service should be managed by Puppet. -# Defaults to true. +# No Deprecated Parameters. # class heat::api_cfn ( $manage_service = true, diff --git a/manifests/api_cloudwatch.pp b/manifests/api_cloudwatch.pp index 183fbe2ec..a527adcce 100644 --- a/manifests/api_cloudwatch.pp +++ b/manifests/api_cloudwatch.pp @@ -1,13 +1,48 @@ +# == Class: heat::api_cloudwatch +# +# This class deprecates heat::api-cloudwatch +# # Installs & configure the heat CloudWatch API service # -# == Parameters -# [*enabled*] -# (optional) Should the service be enabled. -# Defaults to true +# === Parameters +# [*enabled*] +# (optional) Should the service be enabled. +# Defaults to true. +# +# [*manage_service*] +# (optional) Whether the service should be managed by Puppet. +# Defaults to true. +# +# [*bind_host*] +# (Optional) Address to bind the server. Useful when +# selecting a particular network interface. +# Defaults to '0.0.0.0'. +# +# [*bind_port*] +# (Optional) The port on which the server will listen. +# Defaults to '8003'. +# +# [*workers*] +# (Optional) The port on which the server will listen. +# Defaults to '0'. +# +# [*use_ssl*] +# (Optional) Whether to use ssl or not. +# Defaults to 'false'. +# +# [*cert_file*] +# (Optional) Location of the SSL certificate file to use for SSL mode. +# Required when $use_ssl is set to 'true'. +# Defaults to 'false'. +# +# [*key_file*] +# (Optional) Location of the SSL key file to use for enabling SSL mode. +# Required when $use_ssl is set to 'true'. +# Defaults to 'false'. +# +# == Deprecated Parameters # -# [*manage_service*] -# (optional) Whether the service should be managed by Puppet. -# Defaults to true. +# No Deprecated Parameters. # class heat::api_cloudwatch ( $manage_service = true, diff --git a/manifests/client.pp b/manifests/client.pp index 86fc4d889..3e1248e5b 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -1,9 +1,11 @@ +# == Class: heat::client # # Installs the heat python library. # -# == parameters -# [*ensure*] -# ensure state for pachage. +# === Parameters +# +# [*ensure*] +# (Optional) Ensure state for package. # class heat::client ( $ensure = 'present' diff --git a/manifests/db/mysql.pp b/manifests/db/mysql.pp index f477b5938..2603c91a1 100644 --- a/manifests/db/mysql.pp +++ b/manifests/db/mysql.pp @@ -1,35 +1,43 @@ +# == Class: heat::db::mysql +# # The heat::db::mysql class creates a MySQL database for heat. # It must be used on the MySQL server # -# == Parameters +# === Parameters +# +# [*password*] +# (Mandatory) Password to connect to the database. +# Defaults to 'false'. # -# [*password*] -# password to connect to the database. Mandatory. +# [*dbname*] +# (Optional) Name of the database. +# Defaults to 'heat'. # -# [*dbname*] -# name of the database. Optional. Defaults to heat. +# [*user*] +# (Optional) User to connect to the database. +# Defaults to 'heat'. # -# [*user*] -# user to connect to the database. Optional. Defaults to heat. +# [*host*] +# (Optional) The default source host user is allowed to connect from. +# Defaults to '127.0.0.1' # -# [*host*] -# the default source host user is allowed to connect from. -# Optional. Defaults to 'localhost' +# [*allowed_hosts*] +# (Optional) Other hosts the user is allowed to connect from. +# Defaults to 'undef'. # -# [*allowed_hosts*] -# other hosts the user is allowd to connect from. -# Optional. Defaults to undef. +# [*charset*] +# (Optional) The database charset. +# Defaults to 'utf8' # -# [*charset*] -# the database charset. Optional. Defaults to 'utf8' +# [*collate*] +# (Optional) The database collate. +# Only used with mysql modules >= 2.2. +# Defaults to 'utf8_unicode_ci' # -# [*collate*] -# the database collate. Optional. Only used with mysql modules -# >= 2.2 -# Defaults to 'utf8_unicode_ci' +# === Deprecated Parameters # -# [*mysql_module*] -# (optional) Deprecated. Does nothing. +# [*mysql_module*] +# (Optional) Does nothing. # class heat::db::mysql( $password = false, diff --git a/manifests/engine.pp b/manifests/engine.pp index 02c94cb8d..eabf5700d 100644 --- a/manifests/engine.pp +++ b/manifests/engine.pp @@ -1,52 +1,52 @@ -# Class heat::engine +# == Class: heat::engine # # Installs & configure the heat engine service # -# == parameters -# [*enabled*] -# (optional) Should the service be enabled. -# Defaults to true +# === Parameters +# [*auth_encryption_key*] +# (required) Encryption key used for authentication info in database # -# [*manage_service*] -# (optional) Whether the service should be managed by Puppet. -# Defaults to true. +# [*enabled*] +# (optional) Should the service be enabled. +# Defaults to 'true' # -# [*heat_stack_user_role*] -# (optional) Keystone role for heat template-defined users -# Defaults to 'heat_stack_user' +# [*manage_service*] +# (optional) Whether the service should be managed by Puppet. +# Defaults to true. # -# [*heat_metadata_server_url*] -# (optional) URL of the Heat metadata server -# Defaults to 'http://127.0.0.1:8000' +# [*heat_stack_user_role*] +# (optional) Keystone role for heat template-defined users +# Defaults to 'heat_stack_user' # -# [*heat_waitcondition_server_url*] -# (optional) URL of the Heat waitcondition server -# Defaults to 'http://127.0.0.1:8000/v1/waitcondition' +# [*heat_metadata_server_url*] +# (optional) URL of the Heat metadata server +# Defaults to 'http://127.0.0.1:8000' # -# [*heat_watch_server_url*] -# (optional) URL of the Heat cloudwatch server -# Defaults to 'http://127.0.0.1:8003' +# [*heat_waitcondition_server_url*] +# (optional) URL of the Heat waitcondition server +# Defaults to 'http://127.0.0.1:8000/v1/waitcondition' # -# [*auth_encryption_key*] -# (required) Encryption key used for authentication info in database +# [*heat_watch_server_url*] +# (optional) URL of the Heat cloudwatch server +# Defaults to 'http://127.0.0.1:8003' # -# [*engine_life_check_timeout*] -# (optional) RPC timeout (in seconds) for the engine liveness check that is -# used for stack locking -# Defaults to '2' +# [*engine_life_check_timeout*] +# (optional) RPC timeout (in seconds) for the engine liveness check that is +# used for stack locking +# Defaults to '2' # -# [*trusts_delegated_roles*] -# (optional) Array of trustor roles to be delegated to heat. -# Defaults to ['heat_stack_owner'] +# [*trusts_delegated_roles*] +# (optional) Array of trustor roles to be delegated to heat. +# Defaults to ['heat_stack_owner'] # -# [*deferred_auth_method*] -# (optional) Select deferred auth method. -# Can be "password" or "trusts". -# Defaults to 'trusts' +# [*deferred_auth_method*] +# (optional) Select deferred auth method. +# Can be "password" or "trusts". +# Defaults to 'trusts' # -# [*configure_delegated_roles*] -# (optional) Whether to configure the delegated roles. -# Defaults to true +# [*configure_delegated_roles*] +# (optional) Whether to configure the delegated roles. +# Defaults to true # class heat::engine ( $auth_encryption_key, diff --git a/manifests/init.pp b/manifests/init.pp index 6ec68437e..d199e99b1 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -1,103 +1,154 @@ -# Class heat -# -# heat base package & configuration -# -# == parameters -# [*package_ensure*] -# ensure state for package. Optional. Defaults to 'present' -# [*verbose*] -# should the daemons log verbose messages. Optional. Defaults to 'False' -# [*debug*] -# should the daemons log debug messages. Optional. Defaults to 'False' -# -# [*log_dir*] -# (optional) Directory where logs should be stored. -# If set to boolean false, it will not log to any directory. -# Defaults to '/var/log/heat'. -# -# [*rabbit_host*] -# ip or hostname of the rabbit server. Optional. Defaults to '127.0.0.1' -# [*rabbit_port*] -# port of the rabbit server. Optional. Defaults to 5672. -# [*rabbit_hosts*] -# array of host:port (used with HA queues). Optional. Defaults to undef. -# If defined, will remove rabbit_host & rabbit_port parameters from config -# [*rabbit_userid*] -# user to connect to the rabbit server. Optional. Defaults to 'guest' -# [*rabbit_password*] -# password to connect to the rabbit_server. Optional. Defaults to empty. -# [*rabbit_virtual_host*] -# virtual_host to use. Optional. Defaults to '/' -# [*rabbit_use_ssl*] -# (optional) Connect over SSL for RabbitMQ -# Defaults to false -# [*kombu_ssl_ca_certs*] -# (optional) SSL certification authority file (valid only if SSL enabled). -# Defaults to undef -# [*kombu_ssl_certfile*] -# (optional) SSL cert file (valid only if SSL enabled). -# Defaults to undef -# [*kombu_ssl_keyfile*] -# (optional) SSL key file (valid only if SSL enabled). -# Defaults to undef -# [*kombu_ssl_version*] -# (optional) SSL version to use (valid only if SSL enabled). -# Valid values are TLSv1, SSLv23 and SSLv3. SSLv2 may be -# available on some distributions. -# Defaults to 'SSLv3' -# [*amqp_durable_queues*] -# Use durable queues in amqp. Defaults to false -# -# (keystone authentication options) -# [*auth_uri*] -# Specifies the Authentication URI for Heat to use. Located in heat.conf -# Optional. Defaults to false, which uses: -# "${keystone_protocol}://${keystone_host}:5000/v2.0" -# [*keystone_host*] -# [*keystone_port*] -# [*keystone_protocol*] -# [*keystone_user*] -# [*keystone_tenant*] -# [*keystone_password*] -# [*keystone_ec2_uri*] -# -# (optional) various QPID options -# [*qpid_hostname*] -# [*qpid_port*] -# [*qpid_username*] -# [*qpid_password*] -# [*qpid_heartbeat*] -# [*qpid_protocol*] -# [*qpid_tcp_nodelay*] -# [*qpid_reconnect*] -# [*qpid_reconnect_timeout*] -# [*qpid_reconnect_limit*] -# [*qpid_reconnect_interval*] -# [*qpid_reconnect_interval_min*] -# [*qpid_reconnect_interval_max*] -# -# [*database_connection*] -# Url used to connect to database. -# (Optional) Defaults to -# 'sqlite:////var/lib/heat/heat.sqlite' +# == Class: heat +# +# Heat base package & configuration +# +# === Parameters +# +# [*package_ensure*] +# (Optional) Ensure state for package. +# Defaults to 'present' +# +# [*verbose*] +# (Optional) Should the daemons log verbose messages +# Defaults to 'false' +# +# [*debug*] +# (Optional) Should the daemons log debug messages +# Defaults to 'false' +# +# [*log_dir*] +# (Optional) Directory where logs should be stored +# If set to boolean 'false', it will not log to any directory +# Defaults to '/var/log/heat' +# +# [*rpc_backend*] +# (Optional) Use these options to configure the RabbitMQ message system. +# Defaults to 'heat.openstack.common.rpc.impl_kombu' +# +# [*rabbit_host*] +# (Optional) IP or hostname of the rabbit server. +# Defaults to '127.0.0.1' +# +# [*rabbit_port*] +# (Optional) Port of the rabbit server. +# Defaults to 5672. +# +# [*rabbit_hosts*] +# (Optional) Array of host:port (used with HA queues). +# If defined, will remove rabbit_host & rabbit_port parameters from config +# Defaults to undef. +# +# [*rabbit_userid*] +# (Optional) User to connect to the rabbit server. +# Defaults to 'guest' +# +# [*rabbit_password*] +# (Optional) Password to connect to the rabbit_server. +# Defaults to empty. +# +# [*rabbit_virtual_host*] +# (Optional) Virtual_host to use. +# Defaults to '/' +# +# [*rabbit_use_ssl*] +# (Optional) Connect over SSL for RabbitMQ. +# Defaults to false +# +# [*kombu_ssl_ca_certs*] +# (Optional) SSL certification authority file (valid only if SSL enabled). +# Defaults to undef +# +# [*kombu_ssl_certfile*] +# (Optional) SSL cert file (valid only if SSL enabled). +# Defaults to undef +# +# [*kombu_ssl_keyfile*] +# (Optional) SSL key file (valid only if SSL enabled). +# Defaults to undef +# +# [*kombu_ssl_version*] +# (Optional) SSL version to use (valid only if SSL enabled). +# Valid values are TLSv1, SSLv23 and SSLv3. SSLv2 may be +# available on some distributions. +# Defaults to 'SSLv3' +# +# [*amqp_durable_queues*] +# (Optional) Use durable queues in amqp. +# Defaults to false +# +# == keystone authentication options +# +# [*auth_uri*] +# (Optional) Specifies the Authentication URI for Heat to use. +# Located in heat.conf. +# Defaults to false, +# which uses: "${keystone_protocol}://${keystone_host}:5000/v2.0" + +# [*keystone_host*] +# +# [*keystone_port*] +# +# [*keystone_protocol*] +# +# [*keystone_user*] +# +# [*keystone_tenant*] +# +# [*keystone_password*] +# +# [*keystone_ec2_uri*] +# +# ==== Various QPID options (Optional) +# +# [*qpid_hostname*] +# +# [*qpid_port*] +# +# [*qpid_username*] +# +# [*qpid_password*] +# +# [*qpid_heartbeat*] +# +# [*qpid_protocol*] +# +# [*qpid_tcp_nodelay*] +# +# [*qpid_reconnect*] +# +# [*qpid_reconnect_timeout*] +# +# [*qpid_reconnect_limit*] +# +# [*qpid_reconnect_interval*] +# +# [*qpid_reconnect_interval_min*] +# +# [*qpid_reconnect_interval_max*] +# +# [*database_connection*] +# (Optional) Url used to connect to database. +# Defaults to 'sqlite:////var/lib/heat/heat.sqlite'. # # [*database_idle_timeout*] -# (optional) Timeout before idle db connections are reaped. -# Defaults to 3600 +# (Optional) Timeout before idle db connections are reaped. +# Defaults to 3600. # # [*use_syslog*] -# (optional) Use syslog for logging -# Defaults to false +# (Optional) Use syslog for logging. +# Defaults to false. # # [*log_facility*] -# (optional) Syslog facility to receive log lines -# Defaults to LOG_USER +# (Optional) Syslog facility to receive log lines. +# Defaults to LOG_USER. +# +# === Deprecated ParameterS # # [*mysql_module*] -# (optional) Deprecated. Does nothing. +# Deprecated. Does nothing. # # [*sql_connection*] -# (optional) Deprecated. Use database_connection instead. +# Deprecated. Use database_connection instead. # class heat( $auth_uri = false, @@ -183,16 +234,16 @@ } file { '/etc/heat/': - ensure => directory, - owner => 'heat', - group => 'heat', - mode => '0750', + ensure => directory, + owner => 'heat', + group => 'heat', + mode => '0750', } file { '/etc/heat/heat.conf': - owner => 'heat', - group => 'heat', - mode => '0640', + owner => 'heat', + group => 'heat', + mode => '0640', } package { 'heat-common': diff --git a/manifests/keystone/auth.pp b/manifests/keystone/auth.pp index 3302cca81..cb8fef84e 100644 --- a/manifests/keystone/auth.pp +++ b/manifests/keystone/auth.pp @@ -1,56 +1,82 @@ -# == Class: heat::heat::auth +# == Class: heat::keystone::auth # # Configures heat user, service and endpoint in Keystone. # # === Parameters -# # [*password*] -# Password for heat user. Required. +# (Required) Password for heat user. # # [*email*] -# Email for heat user. Optional. Defaults to 'heat@localhost'. +# (Optional) Email for heat user. +# Defaults to 'heat@localhost'. # # [*auth_name*] -# Username for heat service. Optional. Defaults to 'heat'. +# (Optional) Username for heat service. +# Defaults to 'heat'. # # [*configure_endpoint*] -# Should heat endpoint be configured? Optional. Defaults to 'true'. +# (Optional) Should heat endpoint be configured? +# Defaults to 'true'. # # [*configure_user*] -# Whether to create the service user. Defaults to 'true'. +# (Optional) Whether to create the service user. +# Defaults to 'true'. # # [*configure_user_role*] -# Whether to configure the admin role for teh service user. Defaults to 'true'. +# (Optional) Whether to configure the admin role for the service user. +# Defaults to 'true'. # # [*service_name*] -# Name of the service. Options. Defaults to the value of auth_name. +# (Optional) Name of the service. +# Defaults to the value of auth_name. # # [*service_type*] -# Type of service. Optional. Defaults to 'orchestration'. +# (Optional) Type of service. +# Defaults to 'orchestration'. # # [*public_address*] -# Public address for endpoint. Optional. Defaults to '127.0.0.1'. +# (Optional) Public address for endpoint. +# Defaults to '127.0.0.1'. # # [*admin_address*] -# Admin address for endpoint. Optional. Defaults to '127.0.0.1'. +# (Optional) Admin address for endpoint. +# Defaults to '127.0.0.1'. # # [*internal_address*] -# Internal address for endpoint. Optional. Defaults to '127.0.0.1'. +# (Optional) Internal address for endpoint. +# Defaults to '127.0.0.1'. # # [*version*] -# Version of API to use. Optional. Defaults to 'v1' +# (Optional) Version of API to use. +# Defaults to 'v1' # # [*port*] -# Port for endpoint. Optional. Defaults to '8004'. +# (Optional) Port for endpoint. +# Defaults to '8004'. # # [*region*] -# Region for endpoint. Optional. Defaults to 'RegionOne'. +# (Optional) Region for endpoint. +# Defaults to 'RegionOne'. # # [*tenant*] -# Tenant for heat user. Optional. Defaults to 'services'. +# (Optional) Tenant for heat user. +# Defaults to 'services'. # # [*protocol*] -# Protocol for public endpoint. Optional. Defaults to 'http'. +# (Optional) Protocol for public endpoint. +# Defaults to 'http'. +# +# [*public_protocol*] +# (Optional) Protocol for public endpoint. +# Defaults to 'http'. +# +# [*admin_protocol*] +# (Optional) Protocol for admin endpoint +# Defaults to 'http'. +# +# [*internal_protocol*] +# (Optional) Protocol for internal endpoint +# Defaults to 'http' # class heat::keystone::auth ( $password = false, @@ -95,8 +121,8 @@ Service <| name == 'heat-api' |> keystone_user_role { "${auth_name}@${tenant}": - ensure => present, - roles => ['admin'], + ensure => present, + roles => ['admin'], } } diff --git a/manifests/keystone/auth_cfn.pp b/manifests/keystone/auth_cfn.pp index 36c0fa083..ea685dd8e 100644 --- a/manifests/keystone/auth_cfn.pp +++ b/manifests/keystone/auth_cfn.pp @@ -1,56 +1,78 @@ -# == Class: heat::heat::auth_cfn +# == Class: heat::keystone::auth_cfn # # Configures heat-api-cfn user, service and endpoint in Keystone. # # === Parameters -# # [*password*] -# Password for heat-cfn user. Required. +# (Mandatory) Password for heat-cfn user. # # [*email*] -# Email for heat-cfn user. Optional. Defaults to 'heat@localhost'. +# (Optional) Email for heat-cfn user. +# Defaults to 'heat@localhost'. # # [*auth_name*] -# Username for heat-cfn service. Optional. Defaults to 'heat'. +# (Optional) Username for heat-cfn service. +# Defaults to 'heat'. # # [*configure_endpoint*] -# Should heat-cfn endpoint be configured? Optional. Defaults to 'true'. +# (Optional) Should heat-cfn endpoint be configured? +# Defaults to 'true'. # # [*configure_user*] -# Whether to create the service user. Defaults to 'true'. +# (Optional) Whether to create the service user. +# Defaults to 'true'. # # [*configure_user_role*] -# Whether to configure the admin role for the service user. Defaults to 'true'. +# (Optional) Whether to configure the admin role for the service user. +# Defaults to 'true'. # # [*service_name*] -# Name of the service. Optional. Defaults to the value of auth_name. +# (Optional) Name of the service. +# Defaults to the value of auth_name. # # [*service_type*] -# Type of service. Optional. Defaults to 'cloudformation'. +# (Optional) Type of service. +# Defaults to 'cloudformation'. # # [*public_address*] -# Public address for endpoint. Optional. Defaults to '127.0.0.1'. +# (Optional) Public address for endpoint. +# Defaults to '127.0.0.1'. # # [*admin_address*] -# Admin address for endpoint. Optional. Defaults to '127.0.0.1'. +# (Optional) Admin address for endpoint. +# Defaults to '127.0.0.1'. # # [*internal_address*] -# Internal address for endpoint. Optional. Defaults to '127.0.0.1'. +# (Optional) Internal address for endpoint. +# Defaults to '127.0.0.1'. # # [*port*] -# Port for endpoint. Optional. Defaults to '8000'. +# (Optional) Port for endpoint. +# Defaults to '8000'. # # [*version*] -# Version for API. Optional. Defaults to 'v1' +# (Optional) Version for API. +# Defaults to 'v1' # [*region*] -# Region for endpoint. Optional. Defaults to 'RegionOne'. +# (Optional) Region for endpoint. +# Defaults to 'RegionOne'. # # [*tenant*] -# Tenant for heat-cfn user. Optional. Defaults to 'services'. +# (Optional) Tenant for heat-cfn user. +# Defaults to 'services'. +# +# [*public_protocol*] +# (Optional) Protocol for public endpoint. +# Defaults to 'http'. +# +# [*admin_protocol*] +# (Optional) Protocol for admin endpoint. +# Defaults to 'http'. # -# [*protocol*] -# Protocol for public endpoint. Optional. Defaults to 'http'. +# [*internal_protocol*] +# (Optional) Protocol for internal endpoint. +# Defaults to 'http'. # class heat::keystone::auth_cfn ( $password = false, @@ -95,8 +117,8 @@ Service <| name == 'heat-api-cfn' |> keystone_user_role { "${auth_name}@${tenant}": - ensure => present, - roles => ['admin'], + ensure => present, + roles => ['admin'], } } diff --git a/manifests/logging.pp b/manifests/logging.pp index d18b5c2a7..70af26351 100644 --- a/manifests/logging.pp +++ b/manifests/logging.pp @@ -1,70 +1,70 @@ -# Class heat::logging +# == Class heat::logging # # heat extended logging configuration # -# == parameters +# === Parameters # -# [*logging_context_format_string*] -# (optional) Format string to use for log messages with context. -# Defaults to undef. -# Example: '%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s\ -# [%(request_id)s %(user_identity)s] %(instance)s%(message)s' +# [*logging_context_format_string*] +# (optional) Format string to use for log messages with context. +# Defaults to undef. +# Example: '%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s\ +# [%(request_id)s %(user_identity)s] %(instance)s%(message)s' # -# [*logging_default_format_string*] -# (optional) Format string to use for log messages without context. -# Defaults to undef. -# Example: '%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s\ -# [-] %(instance)s%(message)s' +# [*logging_default_format_string*] +# (optional) Format string to use for log messages without context. +# Defaults to undef. +# Example: '%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s\ +# [-] %(instance)s%(message)s' # -# [*logging_debug_format_suffix*] -# (optional) Formatted data to append to log format when level is DEBUG. -# Defaults to undef. -# Example: '%(funcName)s %(pathname)s:%(lineno)d' +# [*logging_debug_format_suffix*] +# (optional) Formatted data to append to log format when level is DEBUG. +# Defaults to undef. +# Example: '%(funcName)s %(pathname)s:%(lineno)d' # -# [*logging_exception_prefix*] -# (optional) Prefix each line of exception output with this format. -# Defaults to undef. -# Example: '%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s' +# [*logging_exception_prefix*] +# (optional) Prefix each line of exception output with this format. +# Defaults to undef. +# Example: '%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s' # -# [*log_config_append*] -# The name of an additional logging configuration file. -# Defaults to undef. -# See https://docs.python.org/2/howto/logging.html +# [*log_config_append*] +# The name of an additional logging configuration file. +# Defaults to undef. +# See https://docs.python.org/2/howto/logging.html # -# [*default_log_levels*] -# (optional) Hash of logger (keys) and level (values) pairs. -# Defaults to undef. -# Example: -# { 'amqp' => 'WARN', 'amqplib' => 'WARN', 'boto' => 'WARN', -# 'qpid' => 'WARN', 'sqlalchemy' => 'WARN', 'suds' => 'INFO', -# 'iso8601' => 'WARN', -# 'requests.packages.urllib3.connectionpool' => 'WARN' } +# [*default_log_levels*] +# (optional) Hash of logger (keys) and level (values) pairs. +# Defaults to undef. +# Example: +# {'amqp' => 'WARN', 'amqplib' => 'WARN', 'boto' => 'WARN', +# 'qpid' => 'WARN', 'sqlalchemy' => 'WARN', 'suds' => 'INFO', +# 'iso8601' => 'WARN', +# 'requests.packages.urllib3.connectionpool' => 'WARN' } # -# [*publish_errors*] -# (optional) Publish error events (boolean value). -# Defaults to undef (false if unconfigured). +# [*publish_errors*] +# (optional) Publish error events (boolean value). +# Defaults to undef (false if unconfigured). # -# [*fatal_deprecations*] -# (optional) Make deprecations fatal (boolean value) -# Defaults to undef (false if unconfigured). +# [*fatal_deprecations*] +# (optional) Make deprecations fatal (boolean value) +# Defaults to undef (false if unconfigured). # -# [*instance_format*] -# (optional) If an instance is passed with the log message, format it -# like this (string value). -# Defaults to undef. -# Example: '[instance: %(uuid)s] ' +# [*instance_format*] +# (optional) If an instance is passed with the log message, format it +# like this (string value). +# Defaults to undef. +# Example: '[instance: %(uuid)s] ' # -# [*instance_uuid_format*] -# (optional) If an instance UUID is passed with the log message, format -# it like this (string value). -# Defaults to undef. -# Example: instance_uuid_format='[instance: %(uuid)s] ' - -# [*log_date_format*] -# (optional) Format string for %%(asctime)s in log records. -# Defaults to undef. -# Example: 'Y-%m-%d %H:%M:%S' +# [*instance_uuid_format*] +# (optional) If an instance UUID is passed with the log message, format +# It like this (string value). +# Defaults to undef. +# Example: instance_uuid_format='[instance: %(uuid)s] ' +# [*log_date_format*] +# (optional) Format string for %%(asctime)s in log records. +# Defaults to undef. +# Example: 'Y-%m-%d %H:%M:%S' +# class heat::logging( $logging_context_format_string = undef, $logging_default_format_string = undef, diff --git a/manifests/params.pp b/manifests/params.pp index 11504a390..a1676fbc5 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -1,3 +1,5 @@ +# == Class: heat::params +# # Parameters for puppet-heat # class heat::params { diff --git a/manifests/policy.pp b/manifests/policy.pp index 8414cdb52..7a64f0081 100644 --- a/manifests/policy.pp +++ b/manifests/policy.pp @@ -2,16 +2,21 @@ # # Configure the heat policies # -# === Parameters +# == Parameters # # [*policies*] -# (optional) Set of policies to configure for heat -# Example : { 'heat-context_is_admin' => {'context_is_admin' => 'true'}, 'heat-default' => {'default' => 'rule:admin_or_owner'} } +# (optional) Set of policies to configure for heat. # Defaults to empty hash. # +# Example: +# { +# 'heat-context_is_admin' => {'context_is_admin' => 'true'}, +# 'heat-default' => {'default' => 'rule:admin_or_owner'} +# } +# # [*policy_path*] -# (optional) Path to the heat policy.json file -# Defaults to /etc/heat/policy.json +# (optional) Path to the heat policy.json file. +# Defaults to '/etc/heat/policy.json'. # class heat::policy ( $policies = {},