summaryrefslogtreecommitdiffstats
path: root/components/congress/puppet
diff options
context:
space:
mode:
Diffstat (limited to 'components/congress/puppet')
-rw-r--r--components/congress/puppet/lib/puppet/provider/congress_config/ini_setting.rb27
-rw-r--r--components/congress/puppet/lib/puppet/type/congress_config.rb42
-rw-r--r--components/congress/puppet/manifests/client.pp27
-rw-r--r--components/congress/puppet/manifests/config.pp30
-rw-r--r--components/congress/puppet/manifests/db.pp97
-rw-r--r--components/congress/puppet/manifests/db/mysql.pp69
-rw-r--r--components/congress/puppet/manifests/db/postgresql.pp55
-rw-r--r--components/congress/puppet/manifests/db/sync.pp14
-rw-r--r--components/congress/puppet/manifests/init.pp410
-rw-r--r--components/congress/puppet/manifests/keystone/auth.pp93
-rw-r--r--components/congress/puppet/manifests/logging.pp251
-rw-r--r--components/congress/puppet/manifests/params.pp31
-rw-r--r--components/congress/puppet/manifests/policy.pp39
-rw-r--r--components/congress/puppet/manifests/service.pp55
-rw-r--r--components/congress/puppet/metadata.json34
-rw-r--r--components/congress/puppet/spec/classes/congress_db_mysql_spec.rb62
-rw-r--r--components/congress/puppet/spec/classes/congress_db_postgresql_spec.rb58
-rw-r--r--components/congress/puppet/spec/classes/congress_db_spec.rb78
-rw-r--r--components/congress/puppet/spec/classes/congress_keystone_auth_spec.rb123
-rw-r--r--components/congress/puppet/spec/classes/congress_logging_spec.rb144
-rw-r--r--components/congress/puppet/spec/classes/congress_policy_spec.rb41
-rw-r--r--components/congress/puppet/spec/shared_examples.rb5
-rw-r--r--components/congress/puppet/spec/unit/provider/congress_config/ini_setting_spec.rb68
-rw-r--r--components/congress/puppet/spec/unit/type/congress_config_spec.rb64
-rw-r--r--components/congress/puppet/tests/init.pp12
25 files changed, 0 insertions, 1929 deletions
diff --git a/components/congress/puppet/lib/puppet/provider/congress_config/ini_setting.rb b/components/congress/puppet/lib/puppet/provider/congress_config/ini_setting.rb
deleted file mode 100644
index 3d324b6..0000000
--- a/components/congress/puppet/lib/puppet/provider/congress_config/ini_setting.rb
+++ /dev/null
@@ -1,27 +0,0 @@
-Puppet::Type.type(:congress_config).provide(
- :ini_setting,
- :parent => Puppet::Type.type(:ini_setting).provider(:ruby)
-) do
-
- def section
- resource[:name].split('/', 2).first
- end
-
- def setting
- resource[:name].split('/', 2).last
- end
-
- def separator
- '='
- end
-
- def self.file_path
- '/etc/congress/congress.conf'
- end
-
- # added for backwards compatibility with older versions of inifile
- def file_path
- self.class.file_path
- end
-
-end
diff --git a/components/congress/puppet/lib/puppet/type/congress_config.rb b/components/congress/puppet/lib/puppet/type/congress_config.rb
deleted file mode 100644
index 3b76fc6..0000000
--- a/components/congress/puppet/lib/puppet/type/congress_config.rb
+++ /dev/null
@@ -1,42 +0,0 @@
-Puppet::Type.newtype(:congress_config) do
-
- ensurable
-
- newparam(:name, :namevar => true) do
- desc 'Section/setting name to manage from /etc/congress/congress.conf'
- newvalues(/\S+\/\S+/)
- end
-
- newproperty(:value) do
- desc 'The value of the setting to be defined.'
- munge do |value|
- value = value.to_s.strip
- value.capitalize! if value =~ /^(true|false)$/i
- value
- end
-
- def is_to_s( currentvalue )
- if resource.secret?
- return '[old secret redacted]'
- else
- return currentvalue
- end
- end
-
- def should_to_s( newvalue )
- if resource.secret?
- return '[new secret redacted]'
- else
- return newvalue
- end
- end
- end
-
- newparam(:secret, :boolean => true) do
- desc 'Whether to hide the value from Puppet logs. Defaults to `false`.'
-
- newvalues(:true, :false)
-
- defaultto false
- end
-end
diff --git a/components/congress/puppet/manifests/client.pp b/components/congress/puppet/manifests/client.pp
deleted file mode 100644
index bb016e4..0000000
--- a/components/congress/puppet/manifests/client.pp
+++ /dev/null
@@ -1,27 +0,0 @@
-# == Class: congress::client
-#
-# Installs congress client.
-#
-# === Parameters
-#
-# [*ensure*]
-# (optional) Ensure state of the package.
-# Defaults to 'present'.
-#
-class congress::client (
- $ensure = 'present'
-) {
-
- package { 'python-congressclient':
- ensure => $ensure,
- tag => 'openstack',
- }
-
- if $ensure == 'present' {
- include '::openstacklib::openstackclient'
- } else {
- class { '::openstacklib::openstackclient':
- package_ensure => $ensure,
- }
- }
-}
diff --git a/components/congress/puppet/manifests/config.pp b/components/congress/puppet/manifests/config.pp
deleted file mode 100644
index 0a59d07..0000000
--- a/components/congress/puppet/manifests/config.pp
+++ /dev/null
@@ -1,30 +0,0 @@
-# == Class: congress::config
-#
-# This class is used to manage arbitrary congress configurations.
-#
-# === Parameters
-#
-# [*congress_config*]
-# (optional) Allow configuration of arbitrary congress configurations.
-# The value is an hash of congress_config resources. Example:
-# { 'DEFAULT/foo' => { value => 'fooValue'},
-# 'DEFAULT/bar' => { value => 'barValue'}
-# }
-# In yaml format, Example:
-# congress_config:
-# DEFAULT/foo:
-# value: fooValue
-# DEFAULT/bar:
-# value: barValue
-#
-# NOTE: The configuration MUST NOT be already handled by this module
-# or Puppet catalog compilation will fail with duplicate resources.
-#
-class congress::config (
- $congress_config = {},
-) {
-
- validate_hash($congress_config)
-
- create_resources('congress_config', $congress_config)
-}
diff --git a/components/congress/puppet/manifests/db.pp b/components/congress/puppet/manifests/db.pp
deleted file mode 100644
index 33dccc4..0000000
--- a/components/congress/puppet/manifests/db.pp
+++ /dev/null
@@ -1,97 +0,0 @@
-# == Class: congress::db
-#
-# Configure the congress database connection
-#
-# === Parameters
-#
-# [*database_connection*]
-# Url used to connect to database.
-# (Optional) Defaults to 'sqlite:////var/lib/congress/congress.sqlite'.
-#
-# [*database_idle_timeout*]
-# Timeout when db connections should be reaped.
-# (Optional) Defaults to 3600.
-#
-# [*database_max_retries*]
-# Maximum number of database connection retries during startup.
-# Setting -1 implies an infinite retry count.
-# (Optional) Defaults to 10.
-#
-# [*database_retry_interval*]
-# Interval between retries of opening a database connection.
-# (Optional) Defaults to 10.
-#
-# [*database_min_pool_size*]
-# Minimum number of SQL connections to keep open in a pool.
-# (Optional) Defaults to 1.
-#
-# [*database_max_pool_size*]
-# Maximum number of SQL connections to keep open in a pool.
-# (Optional) Defaults to 10.
-#
-# [*database_max_overflow*]
-# If set, use this value for max_overflow with sqlalchemy.
-# (Optional) Defaults to 20.
-#
-class congress::db (
- $database_connection = 'sqlite:////var/lib/congress/congress.sqlite',
- $database_idle_timeout = 3600,
- $database_min_pool_size = 1,
- $database_max_pool_size = 10,
- $database_max_retries = 10,
- $database_retry_interval = 10,
- $database_max_overflow = 20,
-) {
-
- # NOTE(spredzy): In order to keep backward compatibility we rely on the pick function
- # to use congress::<myparam> if congress::db::<myparam> isn't specified.
- $database_connection_real = pick($::congress::database_connection, $database_connection)
- $database_idle_timeout_real = pick($::congress::database_idle_timeout, $database_idle_timeout)
- $database_min_pool_size_real = pick($::congress::database_min_pool_size, $database_min_pool_size)
- $database_max_pool_size_real = pick($::congress::database_max_pool_size, $database_max_pool_size)
- $database_max_retries_real = pick($::congress::database_max_retries, $database_max_retries)
- $database_retry_interval_real = pick($::congress::database_retry_interval, $database_retry_interval)
- $database_max_overflow_real = pick($::congress::database_max_overflow, $database_max_overflow)
-
- validate_re($database_connection_real,
- '(sqlite|mysql|postgresql):\/\/(\S+:\S+@\S+\/\S+)?')
-
- if $database_connection_real {
- case $database_connection_real {
- /^mysql:\/\//: {
- $backend_package = false
- require 'mysql::bindings'
- require 'mysql::bindings::python'
- }
- /^postgresql:\/\//: {
- $backend_package = false
- require 'postgresql::lib::python'
- }
- /^sqlite:\/\//: {
- $backend_package = $::congress::params::sqlite_package_name
- }
- default: {
- fail('Unsupported backend configured')
- }
- }
-
- if $backend_package and !defined(Package[$backend_package]) {
- package {'congress-backend-package':
- ensure => present,
- name => $backend_package,
- tag => 'openstack',
- }
- }
-
- congress_config {
- 'database/connection': value => $database_connection_real, secret => true;
- 'database/idle_timeout': value => $database_idle_timeout_real;
- 'database/min_pool_size': value => $database_min_pool_size_real;
- 'database/max_retries': value => $database_max_retries_real;
- 'database/retry_interval': value => $database_retry_interval_real;
- 'database/max_pool_size': value => $database_max_pool_size_real;
- 'database/max_overflow': value => $database_max_overflow_real;
- }
- }
-
-}
diff --git a/components/congress/puppet/manifests/db/mysql.pp b/components/congress/puppet/manifests/db/mysql.pp
deleted file mode 100644
index 456b812..0000000
--- a/components/congress/puppet/manifests/db/mysql.pp
+++ /dev/null
@@ -1,69 +0,0 @@
-# The congress::db::mysql class implements mysql backend for congress
-#
-# This class can be used to create tables, users and grant
-# privelege for a mysql congress database.
-#
-# == parameters
-#
-# [*password*]
-# (Mandatory) Password to connect to the database.
-# Defaults to 'false'.
-#
-# [*dbname*]
-# (Optional) Name of the database.
-# Defaults to 'congress'.
-#
-# [*user*]
-# (Optional) User to connect to the database.
-# Defaults to 'congress'.
-#
-# [*host*]
-# (Optional) The default source host user is allowed to connect from.
-# Defaults to '127.0.0.1'
-#
-# [*allowed_hosts*]
-# (Optional) Other hosts the user is allowed to connect from.
-# Defaults to 'undef'.
-#
-# [*charset*]
-# (Optional) The database charset.
-# Defaults to 'utf8'
-#
-# [*collate*]
-# (Optional) The database collate.
-# Only used with mysql modules >= 2.2.
-# Defaults to 'utf8_general_ci'
-#
-# == Dependencies
-# Class['mysql::server']
-#
-# == Examples
-#
-# == Authors
-#
-# == Copyright
-#
-class congress::db::mysql(
- $password,
- $dbname = 'congress',
- $user = 'congress',
- $host = '127.0.0.1',
- $charset = 'utf8',
- $collate = 'utf8_general_ci',
- $allowed_hosts = undef
-) {
-
- validate_string($password)
-
- ::openstacklib::db::mysql { 'congress':
- user => $user,
- password_hash => mysql_password($password),
- dbname => $dbname,
- host => $host,
- charset => $charset,
- collate => $collate,
- allowed_hosts => $allowed_hosts,
- }
-
- ::Openstacklib::Db::Mysql['congress'] ~> Exec<| title == 'congress-manage db_sync' |>
-}
diff --git a/components/congress/puppet/manifests/db/postgresql.pp b/components/congress/puppet/manifests/db/postgresql.pp
deleted file mode 100644
index 4766eca..0000000
--- a/components/congress/puppet/manifests/db/postgresql.pp
+++ /dev/null
@@ -1,55 +0,0 @@
-# == Class: congress::db::postgresql
-#
-# Class that configures postgresql for congress
-# Requires the Puppetlabs postgresql module.
-#
-# === Parameters
-#
-# [*password*]
-# (Required) Password to connect to the database.
-#
-# [*dbname*]
-# (Optional) Name of the database.
-# Defaults to 'congress'.
-#
-# [*user*]
-# (Optional) User to connect to the database.
-# Defaults to 'congress'.
-#
-# [*encoding*]
-# (Optional) The charset to use for the database.
-# Default to undef.
-#
-# [*privileges*]
-# (Optional) Privileges given to the database user.
-# Default to 'ALL'
-#
-# == Dependencies
-#
-# == Examples
-#
-# == Authors
-#
-# == Copyright
-#
-class congress::db::postgresql(
- $password,
- $dbname = 'congress',
- $user = 'congress',
- $encoding = undef,
- $privileges = 'ALL',
-) {
-
- Class['congress::db::postgresql'] -> Service<| title == 'congress' |>
-
- ::openstacklib::db::postgresql { 'congress':
- password_hash => postgresql_password($user, $password),
- dbname => $dbname,
- user => $user,
- encoding => $encoding,
- privileges => $privileges,
- }
-
- ::Openstacklib::Db::Postgresql['congress'] ~> Exec<| title == 'congress-manage db_sync' |>
-
-}
diff --git a/components/congress/puppet/manifests/db/sync.pp b/components/congress/puppet/manifests/db/sync.pp
deleted file mode 100644
index bb07f7e..0000000
--- a/components/congress/puppet/manifests/db/sync.pp
+++ /dev/null
@@ -1,14 +0,0 @@
-#
-# Class to execute "congress-manage db_sync
-#
-class congress::db::sync {
- exec { 'congress-manage db_sync':
- path => '/usr/bin',
- user => 'congress',
- refreshonly => true,
- subscribe => [Package['congress'], congress_config['database/connection']],
- require => User['congress'],
- }
-
- Exec['congress-manage db_sync'] ~> Service<| title == 'congress' |>
-}
diff --git a/components/congress/puppet/manifests/init.pp b/components/congress/puppet/manifests/init.pp
deleted file mode 100644
index a1367c3..0000000
--- a/components/congress/puppet/manifests/init.pp
+++ /dev/null
@@ -1,410 +0,0 @@
-# == Class: congress
-#
-# Module for managing congress config
-#
-# === Parameters
-#
-# [*keystone_password*]
-# (required) Password used to authentication.
-#
-# [*package_ensure*]
-# (optional) Desired ensure state of packages.
-# accepts latest or specific versions.
-# Defaults to present.
-#
-# [*client_package_ensure*]
-# (optional) Desired ensure state of the client package.
-# accepts latest or specific versions.
-# Defaults to present.
-#
-# [*bind_host*]
-# (optional) The IP address that congress binds to.
-# Default to '0.0.0.0'.
-#
-# [*bind_port*]
-# (optional) Port that congress binds to.
-# Defaults to '1789'
-#
-# [*verbose*]
-# (optional) Rather congress should log at verbose level.
-# Defaults to undef.
-#
-# [*debug*]
-# (optional) Rather congress should log at debug level.
-# Defaults to undef.
-#
-# [*auth_type*]
-# (optional) Type is authorization being used.
-# Defaults to 'keystone'
-#
-# [*auth_uri*]
-# (optional) Complete public Identity API endpoint.
-# Defaults to false.
-#
-# [*identity_uri*]
-# (optional) Complete admin Identity API endpoint.
-# Defaults to: false
-#
-# [*keystone_tenant*]
-# (optional) Tenant to authenticate to.
-# Defaults to services.
-#
-# [*keystone_user*]
-# (optional) User to authenticate as with keystone.
-# Defaults to 'congress'.
-#
-# [*manage_service*]
-# (Optional) If Puppet should manage service startup / shutdown.
-# Defaults to true.
-#
-# [*enabled*]
-# (optional) If the congress services should be enabled.
-# Default to true.
-#
-# [*database_connection*]
-# (optional) Url used to connect to database.
-# Defaults to undef.
-#
-# [*database_idle_timeout*]
-# (optional) Timeout when db connections should be reaped.
-# Defaults to undef.
-#
-# [*database_max_retries*]
-# (optional) Maximum number of database connection retries during startup.
-# Setting -1 implies an infinite retry count.
-# (Defaults to undef)
-#
-# [*database_retry_interval*]
-# (optional) Interval between retries of opening a database connection.
-# (Defaults to undef)
-#
-# [*database_min_pool_size*]
-# (optional) Minimum number of SQL connections to keep open in a pool.
-# Defaults to: undef
-#
-# [*database_max_pool_size*]
-# (optional) Maximum number of SQL connections to keep open in a pool.
-# Defaults to: undef
-#
-# [*database_max_overflow*]
-# (optional) If set, use this value for max_overflow with sqlalchemy.
-# Defaults to: undef
-#
-# [*rpc_backend*]
-# (Optional) Use these options to configure the RabbitMQ message system.
-# Defaults to 'rabbit'
-#
-# [*control_exchange*]
-# (Optional)
-# Defaults to 'openstack'.
-#
-# [*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*]
-# (Required) Password to connect to the rabbit_server.
-# Defaults to empty. Required if using the Rabbit (kombu)
-# backend.
-#
-# [*rabbit_virtual_host*]
-# (Optional) Virtual_host to use.
-# Defaults to '/'
-#
-# [*rabbit_heartbeat_timeout_threshold*]
-# (optional) Number of seconds after which the RabbitMQ broker is considered
-# down if the heartbeat keepalive fails. Any value >0 enables heartbeats.
-# Heartbeating helps to ensure the TCP connection to RabbitMQ isn't silently
-# closed, resulting in missed or lost messages from the queue.
-# (Requires kombu >= 3.0.7 and amqp >= 1.4.0)
-# Defaults to 0
-#
-# [*rabbit_heartbeat_rate*]
-# (optional) How often during the rabbit_heartbeat_timeout_threshold period to
-# check the heartbeat on RabbitMQ connection. (i.e. rabbit_heartbeat_rate=2
-# when rabbit_heartbeat_timeout_threshold=60, the heartbeat will be checked
-# every 30 seconds.
-# Defaults to 2
-#
-# [*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 $::os_service_default
-#
-# [*kombu_ssl_certfile*]
-# (optional) SSL cert file (valid only if SSL enabled).
-# Defaults to $::os_service_default
-#
-# [*kombu_ssl_keyfile*]
-# (optional) SSL key file (valid only if SSL enabled).
-# Defaults to $::os_service_default
-#
-# [*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 $::os_service_default
-#
-# [*kombu_reconnect_delay*]
-# (optional) How long to wait before reconnecting in response to an AMQP
-# consumer cancel notification.
-# Defaults to $::os_service_default
-#
-# [*amqp_durable_queues*]
-# Use durable queues in amqp.
-# (Optional) Defaults to false.
-#
-# [*service_provider*]
-# (optional) Provider, that can be used for congress service.
-# Default value defined in congress::params for given operation system.
-# If you use Pacemaker or another Cluster Resource Manager, you can make
-# custom service provider for changing start/stop/status behavior of service,
-# and set it here.
-#
-# [*service_name*]
-# (optional) Name of the service that will be providing the
-# server functionality of congress.
-# Defaults to '$::congress::params::service_name'
-#
-# [*sync_db*]
-# (Optional) Run db sync on the node.
-# Defaults to true
-#
-# == Dependencies
-# None
-#
-# == Examples
-#
-# class { 'congress':
-# keystone_password => 'congress',
-# keystone_tenant => 'service',
-# auth_uri => 'http://192.168.122.6:5000/',
-# identity_uri => 'http://192.168.122.6:35357/',
-# database_connection => 'mysql://congress:password@192.168.122.6/congress',
-# rabbit_host => '192.168.122.6',
-# rabbit_password => 'guest',
-# }
-#
-# class { 'congress::db::mysql':
-# password => 'password',
-# host => '192.168.122.6',
-# }
-#
-# class { 'congress::keystone::auth':
-# password => 'congress',
-# tenant => 'service',
-# admin_url => 'http://192.168.122.6:1789',
-# internal_url => 'http://192.168.122.6:1789',
-# public_url => 'http://192.168.122.6:1789',
-# region => 'regionOne',
-# }
-#
-# == Authors
-#
-# Dan Radez <dradez@redhat.com>
-#
-# == Copyright
-#
-# Copyright 2015 Red Hat Inc, unless otherwise noted.
-#
-
-class congress(
- $keystone_password,
- $package_ensure = 'present',
- $client_package_ensure = 'present',
- $bind_host = '0.0.0.0',
- $bind_port = '1789',
- $verbose = undef,
- $debug = undef,
- $auth_type = 'keystone',
- $auth_uri = false,
- $identity_uri = false,
- $keystone_tenant = 'services',
- $keystone_user = 'congress',
- $manage_service = true,
- $enabled = true,
- $database_connection = undef,
- $database_idle_timeout = undef,
- $database_max_retries = undef,
- $database_retry_interval = undef,
- $database_min_pool_size = undef,
- $database_max_pool_size = undef,
- $database_max_overflow = undef,
- $rpc_backend = 'rabbit',
- $control_exchange = 'congress',
- $rabbit_host = '127.0.0.1',
- $rabbit_port = 5672,
- $rabbit_hosts = false,
- $rabbit_virtual_host = '/',
- $rabbit_heartbeat_timeout_threshold = 0,
- $rabbit_heartbeat_rate = 2,
- $rabbit_userid = 'guest',
- $rabbit_password = false,
- $rabbit_use_ssl = false,
- $kombu_ssl_ca_certs = $::os_service_default,
- $kombu_ssl_certfile = $::os_service_default,
- $kombu_ssl_keyfile = $::os_service_default,
- $kombu_ssl_version = $::os_service_default,
- $kombu_reconnect_delay = $::os_service_default,
- $amqp_durable_queues = false,
- $service_provider = $::congress::params::service_provider,
- $service_name = $::congress::params::service_name,
-) inherits congress::params {
- congress_config {
- 'DEFAULT/drivers' : value => 'congress.datasources.neutronv2_driver.NeutronV2Driver,congress.datasources.glancev2_driver.GlanceV2Driver,congress.datasources.nova_driver.NovaDriver,congress.datasources. keystone_driver.KeystoneDriver,congress.datasources.ceilometer_driver.CeilometerDriver,congress.datasources.cinder_driver.CinderDriver';
- }
-
- if $identity_uri {
- congress_config { 'keystone_authtoken/identity_uri': value => $identity_uri; }
- congress_config { 'keystone_authtoken/auth_url' : value => $identity_uri; }
- } else {
- congress_config { 'keystone_authtoken/identity_uri': ensure => absent; }
- }
-
- if $auth_uri {
- congress_config { 'keystone_authtoken/auth_uri': value => $auth_uri; }
- } else {
- congress_config { 'keystone_authtoken/auth_uri': ensure => absent; }
- }
-
- if $auth_type == 'keystone' {
- congress_config {
- 'keystone_authtoken/project_name' : value => $keystone_tenant;
- 'keystone_authtoken/username' : value => $keystone_user;
- 'keystone_authtoken/password' : value => $keystone_password, secret => true;
- }
- }
-
- congress_config<||> ~> Service[$service_name]
- congress_config<||> ~> Exec<| title == 'congress-manage db_sync'|>
-
- include ::congress::db
- include ::congress::params
-
- if $sync_db {
- include ::congress::db::sync
- Class['::congress::db::sync'] ~> Service[$service_name]
- }
- if $rpc_backend == 'rabbit' {
-
- if ! $rabbit_password {
- fail('Please specify a rabbit_password parameter.')
- }
-
- congress_config {
- 'DEFAULT/rabbit_password': value => $rabbit_password, secret => true;
- 'DEFAULT/rabbit_userid': value => $rabbit_userid;
- 'DEFAULT/rabbit_virtual_host': value => $rabbit_virtual_host;
- 'DEFAULT/control_exchange': value => $control_exchange;
- #'DEFAULT/rabbit_use_ssl': value => $rabbit_use_ssl;
- #'DEFAULT/kombu_reconnect_delay': value => $kombu_reconnect_delay;
- #'DEFAULT/heartbeat_timeout_threshold': value => $rabbit_heartbeat_timeout_threshold;
- #'DEFAULT/heartbeat_rate': value => $rabbit_heartbeat_rate;
- #'DEFAULT/amqp_durable_queues': value => $amqp_durable_queues;
- }
-
- if $rabbit_use_ssl {
- congress_config {
- 'DEFAULT/kombu_ssl_version' : value => $kombu_ssl_version;
- 'DEFAULT/kombu_ssl_ca_certs' : value => $kombu_ssl_ca_certs;
- 'DEFAULT/kombu_ssl_certfile' : value => $kombu_ssl_certfile;
- 'DEFAULT/kombu_ssl_keyfile' : value => $kombu_ssl_keyfile;
- }
- }
-
- if $rabbit_hosts {
- congress_config { 'DEFAULT/rabbit_hosts': value => join($rabbit_hosts, ',') }
- congress_config { 'DEFAULT/rabbit_ha_queues': value => true }
- congress_config { 'DEFAULT/rabbit_host': ensure => absent }
- congress_config { 'DEFAULT/rabbit_port': ensure => absent }
- } else {
- congress_config { 'DEFAULT/rabbit_host': value => $rabbit_host }
- congress_config { 'DEFAULT/rabbit_port': value => $rabbit_port }
- congress_config { 'DEFAULT/rabbit_hosts': value => "${rabbit_host}:${rabbit_port}" }
- congress_config { 'DEFAULT/rabbit_ha_queues': value => false }
- }
-
- }
-
- package { 'congress':
- ensure => $package_ensure,
- name => $::congress::params::package_name,
- tag => ['openstack', 'congress-package'],
- }
- if $client_package_ensure == 'present' {
- include '::congress::client'
- } else {
- class { '::congress::client':
- ensure => $client_package_ensure,
- }
- }
-
- group { 'congress':
- ensure => present,
- system => true,
- require => Package['congress'],
- }
-
- user { 'congress':
- ensure => 'present',
- gid => 'congress',
- system => true,
- require => Package['congress'],
- }
-
- file { ['/etc/congress', '/var/log/congress', '/var/lib/congress']:
- ensure => directory,
- mode => '0750',
- owner => 'congress',
- group => 'congress',
- require => Package['congress'],
- notify => Service[$service_name],
- }
-
- file { '/etc/congress/congress.conf':
- ensure => present,
- mode => '0600',
- owner => 'congress',
- group => 'congress',
- require => Package['congress'],
- notify => Service[$service_name],
- }
-
- congress_config {
- 'DEFAULT/bind_host': value => $bind_host;
- 'DEFAULT/bind_port': value => $bind_port;
- }
-
- if $manage_service {
- if $enabled {
- $service_ensure = 'running'
- } else {
- $service_ensure = 'stopped'
- }
- }
-
- class { '::congress::service':
- ensure => $service_ensure,
- service_name => $service_name,
- enable => $enabled,
- hasstatus => true,
- hasrestart => true,
- provider => $service_provider,
- }
-}
diff --git a/components/congress/puppet/manifests/keystone/auth.pp b/components/congress/puppet/manifests/keystone/auth.pp
deleted file mode 100644
index 13be1f0..0000000
--- a/components/congress/puppet/manifests/keystone/auth.pp
+++ /dev/null
@@ -1,93 +0,0 @@
-# == Class: congress::keystone::auth
-#
-# Configures congress user, service and endpoint in Keystone.
-#
-# === Parameters
-#
-# [*password*]
-# (required) Password for congress user.
-#
-# [*auth_name*]
-# Username for congress service. Defaults to 'congress'.
-#
-# [*email*]
-# Email for congress user. Defaults to 'congress@localhost'.
-#
-# [*tenant*]
-# Tenant for congress user. Defaults to 'services'.
-#
-# [*configure_endpoint*]
-# Should congress endpoint be configured? Defaults to 'true'.
-#
-# [*configure_user*]
-# (Optional) Should the service user be configured?
-# Defaults to 'true'.
-#
-# [*configure_user_role*]
-# (Optional) Should the admin role be configured for the service user?
-# Defaults to 'true'.
-#
-# [*service_type*]
-# Type of service. Defaults to 'NFV'.
-#
-# [*admin_url*]
-# (optional) The endpoint's admin url. (Defaults to 'http://127.0.0.1:1789')
-# This url should *not* contain any version or trailing '/'.
-#
-# [*internal_url*]
-# (optional) The endpoint's internal url. (Defaults to 'http://127.0.0.1:1789')
-# This url should *not* contain any version or trailing '/'.
-#
-# [*public_url*]
-# (optional) The endpoint's public url. (Defaults to 'http://127.0.0.1:1789')
-# This url should *not* contain any version or trailing '/'.
-#
-# [*region*]
-# Region for endpoint. Defaults to 'RegionOne'.
-#
-# [*service_name*]
-# (optional) Name of the service.
-# Defaults to the value of auth_name.
-#
-#
-class congress::keystone::auth (
- $password,
- $auth_name = 'congress',
- $email = 'congress@localhost',
- $tenant = 'services',
- $configure_endpoint = true,
- $configure_user = true,
- $configure_user_role = true,
- $service_name = undef,
- $service_type = 'servicevm',
- $admin_url = 'http://127.0.0.1:1789',
- $internal_url = 'http://127.0.0.1:1789',
- $public_url = 'http://127.0.0.1:1789',
- $region = 'RegionOne'
-) {
-
- $real_service_name = pick($service_name, $auth_name)
-
- if $configure_user_role {
- Keystone_user_role["${auth_name}@${tenant}"] ~> Service <| name == 'congress-server' |>
- }
- Keystone_endpoint["${region}/${real_service_name}"] ~> Service <| name == 'congress-server' |>
-
- keystone::resource::service_identity { 'congress':
- configure_user => $configure_user,
- configure_user_role => $configure_user_role,
- configure_endpoint => $configure_endpoint,
- service_name => $real_service_name,
- service_type => $service_type,
- service_description => 'congress VNF Manager service',
- region => $region,
- auth_name => $auth_name,
- password => $password,
- email => $email,
- tenant => $tenant,
- admin_url => "${admin_url}/",
- internal_url => "${internal_url}/",
- public_url => "${public_url}/",
- }
-
-}
diff --git a/components/congress/puppet/manifests/logging.pp b/components/congress/puppet/manifests/logging.pp
deleted file mode 100644
index 7bcdc00..0000000
--- a/components/congress/puppet/manifests/logging.pp
+++ /dev/null
@@ -1,251 +0,0 @@
-# Class congress::logging
-#
-# congress logging configuration
-#
-# == parameters
-#
-# [*verbose*]
-# (Optional) Should the daemons log verbose messages
-# Defaults to false.
-#
-# [*debug*]
-# (Optional) Should the daemons log debug messages
-# Defaults to false.
-#
-# [*use_syslog*]
-# (Optional) Use syslog for logging.
-# Defaults to false.
-#
-# [*use_stderr*]
-# (optional) Use stderr for logging
-# Defaults to true.
-#
-# [*log_facility*]
-# (Optional) Syslog facility to receive log lines.
-# Defaults to 'LOG_USER'.
-#
-# [*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/congress'.
-#
-# [*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_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'
-#
-# [*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',
-# 'oslo.messaging' => 'INFO', 'iso8601' => 'WARN',
-# 'requests.packages.urllib3.connectionpool' => 'WARN',
-# 'urllib3.connectionpool' => 'WARN',
-# 'websocket' => 'WARN', 'congressmiddleware' => 'WARN',
-# 'routes.middleware' => 'WARN', stevedore => 'WARN' }
-#
-# [*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).
-#
-# [*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'
-
-class congress::logging(
- $use_syslog = false,
- $use_stderr = true,
- $log_facility = 'LOG_USER',
- $log_dir = '/var/log/congress',
- $verbose = false,
- $debug = false,
- $logging_context_format_string = undef,
- $logging_default_format_string = undef,
- $logging_debug_format_suffix = undef,
- $logging_exception_prefix = undef,
- $log_config_append = undef,
- $default_log_levels = undef,
- $publish_errors = undef,
- $fatal_deprecations = undef,
- $instance_format = undef,
- $instance_uuid_format = undef,
- $log_date_format = undef,
-) {
-
- congress_config {
- 'DEFAULT/use_syslog' : value => $use_syslog;
- 'DEFAULT/use_stderr' : value => $use_stderr;
- 'DEFAULT/log_dir' : value => $log_dir;
- 'DEFAULT/verbose' : value => $verbose;
- 'DEFAULT/debug' : value => $debug;
- 'DEFAULT/syslog_log_facility' : value => $log_facility;
- }
-
- if $logging_context_format_string {
- congress_config {
- 'DEFAULT/logging_context_format_string' :
- value => $logging_context_format_string;
- }
- }
- else {
- congress_config {
- 'DEFAULT/logging_context_format_string' : ensure => absent;
- }
- }
-
- if $logging_default_format_string {
- congress_config {
- 'DEFAULT/logging_default_format_string' :
- value => $logging_default_format_string;
- }
- }
- else {
- congress_config {
- 'DEFAULT/logging_default_format_string' : ensure => absent;
- }
- }
-
- if $logging_debug_format_suffix {
- congress_config {
- 'DEFAULT/logging_debug_format_suffix' :
- value => $logging_debug_format_suffix;
- }
- }
- else {
- congress_config {
- 'DEFAULT/logging_debug_format_suffix' : ensure => absent;
- }
- }
-
- if $logging_exception_prefix {
- congress_config {
- 'DEFAULT/logging_exception_prefix' : value => $logging_exception_prefix;
- }
- }
- else {
- congress_config {
- 'DEFAULT/logging_exception_prefix' : ensure => absent;
- }
- }
-
- if $log_config_append {
- congress_config {
- 'DEFAULT/log_config_append' : value => $log_config_append;
- }
- }
- else {
- congress_config {
- 'DEFAULT/log_config_append' : ensure => absent;
- }
- }
-
- if $default_log_levels {
- congress_config {
- 'DEFAULT/default_log_levels' :
- value => join(sort(join_keys_to_values($default_log_levels, '=')), ',');
- }
- }
- else {
- congress_config {
- 'DEFAULT/default_log_levels' : ensure => absent;
- }
- }
-
- if $publish_errors {
- congress_config {
- 'DEFAULT/publish_errors' : value => $publish_errors;
- }
- }
- else {
- congress_config {
- 'DEFAULT/publish_errors' : ensure => absent;
- }
- }
-
- if $fatal_deprecations {
- congress_config {
- 'DEFAULT/fatal_deprecations' : value => $fatal_deprecations;
- }
- }
- else {
- congress_config {
- 'DEFAULT/fatal_deprecations' : ensure => absent;
- }
- }
-
- if $instance_format {
- congress_config {
- 'DEFAULT/instance_format' : value => $instance_format;
- }
- }
- else {
- congress_config {
- 'DEFAULT/instance_format' : ensure => absent;
- }
- }
-
- if $instance_uuid_format {
- congress_config {
- 'DEFAULT/instance_uuid_format' : value => $instance_uuid_format;
- }
- }
- else {
- congress_config {
- 'DEFAULT/instance_uuid_format' : ensure => absent;
- }
- }
-
- if $log_date_format {
- congress_config {
- 'DEFAULT/log_date_format' : value => $log_date_format;
- }
- }
- else {
- congress_config {
- 'DEFAULT/log_date_format' : ensure => absent;
- }
- }
-
-
-}
diff --git a/components/congress/puppet/manifests/params.pp b/components/congress/puppet/manifests/params.pp
deleted file mode 100644
index f2ceed0..0000000
--- a/components/congress/puppet/manifests/params.pp
+++ /dev/null
@@ -1,31 +0,0 @@
-#
-# This class contains the platform differences for congress
-#
-class congress::params {
- $client_package_name = 'python-congressclient'
-
- case $::osfamily {
- 'Debian': {
- $package_name = 'congress'
- $service_name = 'congress'
- $python_memcache_package_name = 'python-memcache'
- $sqlite_package_name = 'python-pysqlite2'
- $paste_config = undef
- case $::operatingsystem {
- 'Debian': {
- $service_provider = undef
- }
- default: {
- $service_provider = 'upstart'
- }
- }
- }
- 'RedHat': {
- $package_name = 'openstack-congress'
- $service_name = 'openstack-congress'
- $python_memcache_package_name = 'python-memcached'
- $sqlite_package_name = undef
- $service_provider = undef
- }
- }
-}
diff --git a/components/congress/puppet/manifests/policy.pp b/components/congress/puppet/manifests/policy.pp
deleted file mode 100644
index cdca472..0000000
--- a/components/congress/puppet/manifests/policy.pp
+++ /dev/null
@@ -1,39 +0,0 @@
-# == Class: congress::policy
-#
-# Configure the congress policies
-#
-# === Parameters
-#
-# [*policies*]
-# (optional) Set of policies to configure for congress
-# Example :
-# {
-# 'congress-context_is_admin' => {
-# 'key' => 'context_is_admin',
-# 'value' => 'true'
-# },
-# 'congress-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/congress/policy.json
-#
-class congress::policy (
- $policies = {},
- $policy_path = '/etc/congress/policy.json',
-) {
-
- validate_hash($policies)
-
- Openstacklib::Policy::Base {
- file_path => $policy_path,
- }
-
- create_resources('openstacklib::policy::base', $policies)
-
-}
diff --git a/components/congress/puppet/manifests/service.pp b/components/congress/puppet/manifests/service.pp
deleted file mode 100644
index f802e9a..0000000
--- a/components/congress/puppet/manifests/service.pp
+++ /dev/null
@@ -1,55 +0,0 @@
-# == Class congress::service
-#
-# Encapsulates the congress service to a class.
-# This allows resources that require congress to
-# require this class, which can optionally
-# validate that the service can actually accept
-# connections.
-#
-# === Parameters
-#
-# [*ensure*]
-# (optional) The desired state of the congress service
-# Defaults to undef
-#
-# [*service_name*]
-# (optional) The name of the congress service
-# Defaults to $::congress::params::service_name
-#
-# [*enable*]
-# (optional) Whether to enable the congress service
-# Defaults to true
-#
-# [*hasstatus*]
-# (optional) Whether the congress service has status
-# Defaults to true
-#
-# [*hasrestart*]
-# (optional) Whether the congress service has restart
-# Defaults to true
-#
-# [*provider*]
-# (optional) Provider for congress service
-# Defaults to $::congress::params::service_provider
-#
-class congress::service(
- $ensure = undef,
- $service_name = $::congress::params::service_name,
- $enable = true,
- $hasstatus = true,
- $hasrestart = true,
- $provider = $::congress::params::service_provider,
-) {
- include ::congress::params
-
- service { 'congress':
- ensure => $ensure,
- name => $service_name,
- enable => $enable,
- hasstatus => $hasstatus,
- hasrestart => $hasrestart,
- provider => $provider,
- tag => 'congress-service',
- }
-
-}
diff --git a/components/congress/puppet/metadata.json b/components/congress/puppet/metadata.json
deleted file mode 100644
index e94dd68..0000000
--- a/components/congress/puppet/metadata.json
+++ /dev/null
@@ -1,34 +0,0 @@
-{
- "name": "puppet-congress",
- "version": "0.0.1",
- "author": "OpenStack Contributors",
- "summary": "Puppet module for OpenStack congress",
- "license": "Apache-2.0",
- "source": "git://github.com/openstack/puppet-congress.git",
- "project_page": "https://launchpad.net/puppet-congress",
- "issues_url": "https://bugs.launchpad.net/puppet-congress",
- "description": "Installs and configures OpenStack congress.",
- "operatingsystem_support": [
- {
- "operatingsystem": "Debian",
- "operatingsystemrelease": ["8"]
- },
- {
- "operatingsystem": "Fedora",
- "operatingsystemrelease": ["21","22"]
- },
- {
- "operatingsystem": "RedHat",
- "operatingsystemrelease": ["7"]
- },
- {
- "operatingsystem": "Ubuntu",
- "operatingsystemrelease": ["14.04"]
- }
- ],
- "dependencies": [
- { "name": "puppetlabs/inifile", "version_requirement": ">=1.0.0 <2.0.0" },
- { "name": "puppetlabs/stdlib", "version_requirement": ">= 4.2.0 <5.0.0" },
- { "name": "stackforge/openstacklib", "version_requirement": ">=5.0.0 <6.0.0" }
- ]
-}
diff --git a/components/congress/puppet/spec/classes/congress_db_mysql_spec.rb b/components/congress/puppet/spec/classes/congress_db_mysql_spec.rb
deleted file mode 100644
index 6370bac..0000000
--- a/components/congress/puppet/spec/classes/congress_db_mysql_spec.rb
+++ /dev/null
@@ -1,62 +0,0 @@
-require 'spec_helper'
-
-describe 'congress::db::mysql' do
-
- let :pre_condition do
- [
- 'include mysql::server',
- 'include congress::db::sync'
- ]
- end
-
- let :facts do
- { :osfamily => 'Debian' }
- end
-
- let :params do
- {
- 'password' => 'fooboozoo_default_password',
- }
- end
-
- describe 'with only required params' do
- it { is_expected.to contain_openstacklib__db__mysql('congress').with(
- 'user' => 'congress',
- 'password_hash' => '*3DDF34A86854A312A8E2C65B506E21C91800D206',
- 'dbname' => 'congress',
- 'host' => '127.0.0.1',
- 'charset' => 'utf8',
- :collate => 'utf8_general_ci',
- )}
- end
-
- describe "overriding allowed_hosts param to array" do
- let :params do
- {
- :password => 'congresspass',
- :allowed_hosts => ['127.0.0.1','%']
- }
- end
-
- end
- describe "overriding allowed_hosts param to string" do
- let :params do
- {
- :password => 'congresspass2',
- :allowed_hosts => '192.168.1.1'
- }
- end
-
- end
-
- describe "overriding allowed_hosts param equals to host param " do
- let :params do
- {
- :password => 'congresspass2',
- :allowed_hosts => '127.0.0.1'
- }
- end
-
- end
-
-end
diff --git a/components/congress/puppet/spec/classes/congress_db_postgresql_spec.rb b/components/congress/puppet/spec/classes/congress_db_postgresql_spec.rb
deleted file mode 100644
index 74abbdb..0000000
--- a/components/congress/puppet/spec/classes/congress_db_postgresql_spec.rb
+++ /dev/null
@@ -1,58 +0,0 @@
-require 'spec_helper'
-
-describe 'congress::db::postgresql' do
-
- let :req_params do
- { :password => 'pw' }
- end
-
- let :pre_condition do
- 'include postgresql::server'
- end
-
- context 'on a RedHat osfamily' do
- let :facts do
- {
- :osfamily => 'RedHat',
- :operatingsystemrelease => '7.0',
- :concat_basedir => '/var/lib/puppet/concat'
- }
- end
-
- context 'with only required parameters' do
- let :params do
- req_params
- end
-
- it { is_expected.to contain_postgresql__server__db('congress').with(
- :user => 'congress',
- :password => 'md5c530c33636c58ae83ca933f39319273e'
- )}
- end
-
- end
-
- context 'on a Debian osfamily' do
- let :facts do
- {
- :operatingsystemrelease => '7.8',
- :operatingsystem => 'Debian',
- :osfamily => 'Debian',
- :concat_basedir => '/var/lib/puppet/concat'
- }
- end
-
- context 'with only required parameters' do
- let :params do
- req_params
- end
-
- it { is_expected.to contain_postgresql__server__db('congress').with(
- :user => 'congress',
- :password => 'md5c530c33636c58ae83ca933f39319273e'
- )}
- end
-
- end
-
-end
diff --git a/components/congress/puppet/spec/classes/congress_db_spec.rb b/components/congress/puppet/spec/classes/congress_db_spec.rb
deleted file mode 100644
index 3b84993..0000000
--- a/components/congress/puppet/spec/classes/congress_db_spec.rb
+++ /dev/null
@@ -1,78 +0,0 @@
-require 'spec_helper'
-
-describe 'congress::db' do
-
- shared_examples 'congress::db' do
- context 'with default parameters' do
- it { is_expected.to contain_congress_config('database/connection').with_value('mysql://congress:secrete@localhost:3306/congress') }
- it { is_expected.to contain_congress_config('database/idle_timeout').with_value('3600') }
- it { is_expected.to contain_congress_config('database/min_pool_size').with_value('1') }
- it { is_expected.to contain_congress_config('database/max_retries').with_value('10') }
- it { is_expected.to contain_congress_config('database/retry_interval').with_value('10') }
- it { is_expected.to contain_congress_config('database/max_pool_size').with_value('10') }
- it { is_expected.to contain_congress_config('database/max_overflow').with_value('20') }
- end
-
- context 'with specific parameters' do
- let :params do
- { :database_connection => 'mysql://congress:congress@localhost/congress',
- :database_idle_timeout => '3601',
- :database_min_pool_size => '2',
- :database_max_retries => '11',
- :database_retry_interval => '11',
- :database_max_pool_size => '11',
- :database_max_overflow => '21',
- }
- end
-
- it { is_expected.to contain_congress_config('database/connection').with_value('mysql://congress:congress@localhost/congress') }
- it { is_expected.to contain_congress_config('database/idle_timeout').with_value('3601') }
- it { is_expected.to contain_congress_config('database/min_pool_size').with_value('2') }
- it { is_expected.to contain_congress_config('database/max_retries').with_value('11') }
- it { is_expected.to contain_congress_config('database/retry_interval').with_value('11') }
- it { is_expected.to contain_congress_config('database/max_pool_size').with_value('11') }
- it { is_expected.to contain_congress_config('database/max_overflow').with_value('21') }
- end
-
- context 'with postgresql backend' do
- let :params do
- { :database_connection => 'postgresql://congress:congress@localhost/congress', }
- end
-
- it 'install the proper backend package' do
- is_expected.to contain_package('python-psycopg2').with(:ensure => 'present')
- end
-
- end
-
- context 'with incorrect database_connection string' do
- let :params do
- { :database_connection => 'sqlite://congress:congress@localhost/congress', }
- end
-
- it_raises 'a Puppet::Error', /validate_re/
- end
- end
-
- context 'on Debian platforms' do
- let :facts do
- { :osfamily => 'Debian',
- :operatingsystem => 'Debian',
- :operatingsystemrelease => 'jessie',
- }
- end
-
- it_configures 'congress::db'
- end
-
- context 'on Redhat platforms' do
- let :facts do
- { :osfamily => 'RedHat',
- :operatingsystemrelease => '7.1',
- }
- end
-
- it_configures 'congress::db'
- end
-
-end
diff --git a/components/congress/puppet/spec/classes/congress_keystone_auth_spec.rb b/components/congress/puppet/spec/classes/congress_keystone_auth_spec.rb
deleted file mode 100644
index 3cb7e59..0000000
--- a/components/congress/puppet/spec/classes/congress_keystone_auth_spec.rb
+++ /dev/null
@@ -1,123 +0,0 @@
-#
-# Unit tests for congress::keystone::auth
-#
-
-require 'spec_helper'
-
-describe 'congress::keystone::auth' do
-
- let :facts do
- { :osfamily => 'Debian' }
- end
-
- describe 'with default class parameters' do
- let :params do
- { :password => 'congress_password',
- :tenant => 'foobar' }
- end
-
- it { is_expected.to contain_keystone_user('congress').with(
- :ensure => 'present',
- :password => 'congress_password',
- ) }
-
- it { is_expected.to contain_keystone_user_role('congress@foobar').with(
- :ensure => 'present',
- :roles => ['admin']
- )}
-
- it { is_expected.to contain_keystone_service('congress').with(
- :ensure => 'present',
- :type => 'FIXME',
- :description => 'congress FIXME Service'
- ) }
-
- it { is_expected.to contain_keystone_endpoint('RegionOne/congress').with(
- :ensure => 'present',
- :public_url => 'http://127.0.0.1:FIXME',
- :admin_url => 'http://127.0.0.1:FIXME',
- :internal_url => 'http://127.0.0.1:FIXME',
- ) }
- end
-
- describe 'when overriding URL paramaters' do
- let :params do
- { :password => 'congress_password',
- :public_url => 'https://10.10.10.10:80',
- :internal_url => 'http://10.10.10.11:81',
- :admin_url => 'http://10.10.10.12:81', }
- end
-
- it { is_expected.to contain_keystone_endpoint('RegionOne/congress').with(
- :ensure => 'present',
- :public_url => 'https://10.10.10.10:80',
- :internal_url => 'http://10.10.10.11:81',
- :admin_url => 'http://10.10.10.12:81',
- ) }
- end
-
- describe 'when overriding auth name' do
- let :params do
- { :password => 'foo',
- :auth_name => 'congressy' }
- end
-
- it { is_expected.to contain_keystone_user('congressy') }
- it { is_expected.to contain_keystone_user_role('congressy@services') }
- it { is_expected.to contain_keystone_service('congressy') }
- it { is_expected.to contain_keystone_endpoint('RegionOne/congressy') }
- end
-
- describe 'when overriding service name' do
- let :params do
- { :service_name => 'congress_service',
- :auth_name => 'congress',
- :password => 'congress_password' }
- end
-
- it { is_expected.to contain_keystone_user('congress') }
- it { is_expected.to contain_keystone_user_role('congress@services') }
- it { is_expected.to contain_keystone_service('congress_service') }
- it { is_expected.to contain_keystone_endpoint('RegionOne/congress_service') }
- end
-
- describe 'when disabling user configuration' do
-
- let :params do
- {
- :password => 'congress_password',
- :configure_user => false
- }
- end
-
- it { is_expected.not_to contain_keystone_user('congress') }
- it { is_expected.to contain_keystone_user_role('congress@services') }
- it { is_expected.to contain_keystone_service('congress').with(
- :ensure => 'present',
- :type => 'FIXME',
- :description => 'congress FIXME Service'
- ) }
-
- end
-
- describe 'when disabling user and user role configuration' do
-
- let :params do
- {
- :password => 'congress_password',
- :configure_user => false,
- :configure_user_role => false
- }
- end
-
- it { is_expected.not_to contain_keystone_user('congress') }
- it { is_expected.not_to contain_keystone_user_role('congress@services') }
- it { is_expected.to contain_keystone_service('congress').with(
- :ensure => 'present',
- :type => 'FIXME',
- :description => 'congress FIXME Service'
- ) }
-
- end
-
-end
diff --git a/components/congress/puppet/spec/classes/congress_logging_spec.rb b/components/congress/puppet/spec/classes/congress_logging_spec.rb
deleted file mode 100644
index 0bfb994..0000000
--- a/components/congress/puppet/spec/classes/congress_logging_spec.rb
+++ /dev/null
@@ -1,144 +0,0 @@
-require 'spec_helper'
-
-describe 'congress::logging' do
-
- let :params do
- {
- }
- end
-
- let :log_params do
- {
- :logging_context_format_string => '%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s',
- :logging_default_format_string => '%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s',
- :logging_debug_format_suffix => '%(funcName)s %(pathname)s:%(lineno)d',
- :logging_exception_prefix => '%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s',
- :log_config_append => '/etc/congress/logging.conf',
- :publish_errors => true,
- :default_log_levels => {
- 'amqp' => 'WARN', 'amqplib' => 'WARN', 'boto' => 'WARN',
- 'qpid' => 'WARN', 'sqlalchemy' => 'WARN', 'suds' => 'INFO',
- 'iso8601' => 'WARN',
- 'requests.packages.urllib3.connectionpool' => 'WARN' },
- :fatal_deprecations => true,
- :instance_format => '[instance: %(uuid)s] ',
- :instance_uuid_format => '[instance: %(uuid)s] ',
- :log_date_format => '%Y-%m-%d %H:%M:%S',
- :use_syslog => true,
- :use_stderr => false,
- :log_facility => 'LOG_FOO',
- :log_dir => '/var/log',
- :verbose => true,
- :debug => true,
- }
- end
-
- shared_examples_for 'congress-logging' do
-
- context 'with basic logging options and default settings' do
- it_configures 'basic default logging settings'
- end
-
- context 'with basic logging options and non-default settings' do
- before { params.merge!( log_params ) }
- it_configures 'basic non-default logging settings'
- end
-
- context 'with extended logging options' do
- before { params.merge!( log_params ) }
- it_configures 'logging params set'
- end
-
- context 'without extended logging options' do
- it_configures 'logging params unset'
- end
-
- end
-
- shared_examples 'basic default logging settings' do
- it 'configures ceilometer logging settins with default values' do
- is_expected.to contain_ceilometer_config('DEFAULT/use_syslog').with(:value => 'false')
- is_expected.to contain_ceilometer_config('DEFAULT/use_stderr').with(:value => 'true')
- is_expected.to contain_ceilometer_config('DEFAULT/syslog_log_facility').with(:value => 'LOG_USER')
- is_expected.to contain_ceilometer_config('DEFAULT/log_dir').with(:value => '/var/log/congress')
- is_expected.to contain_ceilometer_config('DEFAULT/verbose').with(:value => 'false')
- is_expected.to contain_ceilometer_config('DEFAULT/debug').with(:value => 'false')
- end
- end
-
- shared_examples 'basic non-default logging settings' do
- it 'configures ceilometer logging settins with non-default values' do
- is_expected.to contain_ceilometer_config('DEFAULT/use_syslog').with(:value => 'true')
- is_expected.to contain_ceilometer_config('DEFAULT/use_stderr').with(:value => 'false')
- is_expected.to contain_ceilometer_config('DEFAULT/syslog_log_facility').with(:value => 'LOG_FOO')
- is_expected.to contain_ceilometer_config('DEFAULT/log_dir').with(:value => '/var/log')
- is_expected.to contain_ceilometer_config('DEFAULT/verbose').with(:value => 'true')
- is_expected.to contain_ceilometer_config('DEFAULT/debug').with(:value => 'true')
- end
- end
-
- shared_examples_for 'logging params set' do
- it 'enables logging params' do
- is_expected.to contain_congress_config('DEFAULT/logging_context_format_string').with_value(
- '%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s')
-
- is_expected.to contain_congress_config('DEFAULT/logging_default_format_string').with_value(
- '%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s')
-
- is_expected.to contain_congress_config('DEFAULT/logging_debug_format_suffix').with_value(
- '%(funcName)s %(pathname)s:%(lineno)d')
-
- is_expected.to contain_congress_config('DEFAULT/logging_exception_prefix').with_value(
- '%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s')
-
- is_expected.to contain_congress_config('DEFAULT/log_config_append').with_value(
- '/etc/congress/logging.conf')
- is_expected.to contain_congress_config('DEFAULT/publish_errors').with_value(
- true)
-
- is_expected.to contain_congress_config('DEFAULT/default_log_levels').with_value(
- 'amqp=WARN,amqplib=WARN,boto=WARN,iso8601=WARN,qpid=WARN,requests.packages.urllib3.connectionpool=WARN,sqlalchemy=WARN,suds=INFO')
-
- is_expected.to contain_congress_config('DEFAULT/fatal_deprecations').with_value(
- true)
-
- is_expected.to contain_congress_config('DEFAULT/instance_format').with_value(
- '[instance: %(uuid)s] ')
-
- is_expected.to contain_congress_config('DEFAULT/instance_uuid_format').with_value(
- '[instance: %(uuid)s] ')
-
- is_expected.to contain_congress_config('DEFAULT/log_date_format').with_value(
- '%Y-%m-%d %H:%M:%S')
- end
- end
-
-
- shared_examples_for 'logging params unset' do
- [ :logging_context_format_string, :logging_default_format_string,
- :logging_debug_format_suffix, :logging_exception_prefix,
- :log_config_append, :publish_errors,
- :default_log_levels, :fatal_deprecations,
- :instance_format, :instance_uuid_format,
- :log_date_format, ].each { |param|
- it { is_expected.to contain_congress_config("DEFAULT/#{param}").with_ensure('absent') }
- }
- end
-
- context 'on Debian platforms' do
- let :facts do
- { :osfamily => 'Debian' }
- end
-
- it_configures 'congress-logging'
- end
-
- context 'on RedHat platforms' do
- let :facts do
- { :osfamily => 'RedHat' }
- end
-
- it_configures 'congress-logging'
- end
-
-end
diff --git a/components/congress/puppet/spec/classes/congress_policy_spec.rb b/components/congress/puppet/spec/classes/congress_policy_spec.rb
deleted file mode 100644
index d4e08ca..0000000
--- a/components/congress/puppet/spec/classes/congress_policy_spec.rb
+++ /dev/null
@@ -1,41 +0,0 @@
-require 'spec_helper'
-
-describe 'congress::policy' do
-
- shared_examples_for 'congress policies' do
- let :params do
- {
- :policy_path => '/etc/congress/policy.json',
- :policies => {
- 'context_is_admin' => {
- 'key' => 'context_is_admin',
- 'value' => 'foo:bar'
- }
- }
- }
- end
-
- it 'set up the policies' do
- is_expected.to contain_openstacklib__policy__base('context_is_admin').with({
- :key => 'context_is_admin',
- :value => 'foo:bar'
- })
- end
- end
-
- context 'on Debian platforms' do
- let :facts do
- { :osfamily => 'Debian' }
- end
-
- it_configures 'congress policies'
- end
-
- context 'on RedHat platforms' do
- let :facts do
- { :osfamily => 'RedHat' }
- end
-
- it_configures 'congress policies'
- end
-end
diff --git a/components/congress/puppet/spec/shared_examples.rb b/components/congress/puppet/spec/shared_examples.rb
deleted file mode 100644
index fec0eac..0000000
--- a/components/congress/puppet/spec/shared_examples.rb
+++ /dev/null
@@ -1,5 +0,0 @@
-shared_examples_for "a Puppet::Error" do |description|
- it "with message matching #{description.inspect}" do
- expect { is_expected.to have_class_count(1) }.to raise_error(Puppet::Error, description)
- end
-end
diff --git a/components/congress/puppet/spec/unit/provider/congress_config/ini_setting_spec.rb b/components/congress/puppet/spec/unit/provider/congress_config/ini_setting_spec.rb
deleted file mode 100644
index 0c4b9fa..0000000
--- a/components/congress/puppet/spec/unit/provider/congress_config/ini_setting_spec.rb
+++ /dev/null
@@ -1,68 +0,0 @@
-#
-# these tests are a little concerning b/c they are hacking around the
-# modulepath, so these tests will not catch issues that may eventually arise
-# related to loading these plugins.
-# I could not, for the life of me, figure out how to programatcally set the modulepath
-$LOAD_PATH.push(
- File.join(
- File.dirname(__FILE__),
- '..',
- '..',
- '..',
- 'fixtures',
- 'modules',
- 'inifile',
- 'lib')
-)
-$LOAD_PATH.push(
- File.join(
- File.dirname(__FILE__),
- '..',
- '..',
- '..',
- 'fixtures',
- 'modules',
- 'openstacklib',
- 'lib')
-)
-require 'spec_helper'
-provider_class = Puppet::Type.type(:congress_config).provider(:ini_setting)
-describe provider_class do
-
- it 'should default to the default setting when no other one is specified' do
- resource = Puppet::Type::congress_config.new(
- {:name => 'DEFAULT/foo', :value => 'bar'}
- )
- provider = provider_class.new(resource)
- expect(provider.section).to eq('DEFAULT')
- expect(provider.setting).to eq('foo')
- end
-
- it 'should allow setting to be set explicitly' do
- resource = Puppet::Type::congress_config.new(
- {:name => 'dude/foo', :value => 'bar'}
- )
- provider = provider_class.new(resource)
- expect(provider.section).to eq('dude')
- expect(provider.setting).to eq('foo')
- end
-
- it 'should ensure absent when <SERVICE DEFAULT> is specified as a value' do
- resource = Puppet::Type::congress_config.new(
- {:name => 'dude/foo', :value => '<SERVICE DEFAULT>'}
- )
- provider = provider_class.new(resource)
- provider.exists?
- expect(resource[:ensure]).to eq :absent
- end
-
- it 'should ensure absent when value matches ensure_absent_val' do
- resource = Puppet::Type::congress_config.new(
- {:name => 'dude/foo', :value => 'foo', :ensure_absent_val => 'foo' }
- )
- provider = provider_class.new(resource)
- provider.exists?
- expect(resource[:ensure]).to eq :absent
- end
-
-end
diff --git a/components/congress/puppet/spec/unit/type/congress_config_spec.rb b/components/congress/puppet/spec/unit/type/congress_config_spec.rb
deleted file mode 100644
index 22a70a1..0000000
--- a/components/congress/puppet/spec/unit/type/congress_config_spec.rb
+++ /dev/null
@@ -1,64 +0,0 @@
-require 'puppet'
-require 'puppet/type/congress_config'
-describe 'Puppet::Type.type(:congress_config)' do
- before :each do
- @congress_config = Puppet::Type.type(:congress_config).new(:name => 'DEFAULT/foo', :value => 'bar')
- end
-
- it 'should require a name' do
- expect {
- Puppet::Type.type(:congress_config).new({})
- }.to raise_error(Puppet::Error, 'Title or name must be provided')
- end
-
- it 'should not expect a name with whitespace' do
- expect {
- Puppet::Type.type(:congress_config).new(:name => 'f oo')
- }.to raise_error(Puppet::Error, /Parameter name failed/)
- end
-
- it 'should fail when there is no section' do
- expect {
- Puppet::Type.type(:congress_config).new(:name => 'foo')
- }.to raise_error(Puppet::Error, /Parameter name failed/)
- end
-
- it 'should not require a value when ensure is absent' do
- Puppet::Type.type(:congress_config).new(:name => 'DEFAULT/foo', :ensure => :absent)
- end
-
- it 'should accept a valid value' do
- @congress_config[:value] = 'bar'
- expect(@congress_config[:value]).to eq('bar')
- end
-
- it 'should not accept a value with whitespace' do
- @congress_config[:value] = 'b ar'
- expect(@congress_config[:value]).to eq('b ar')
- end
-
- it 'should accept valid ensure values' do
- @congress_config[:ensure] = :present
- expect(@congress_config[:ensure]).to eq(:present)
- @congress_config[:ensure] = :absent
- expect(@congress_config[:ensure]).to eq(:absent)
- end
-
- it 'should not accept invalid ensure values' do
- expect {
- @congress_config[:ensure] = :latest
- }.to raise_error(Puppet::Error, /Invalid value/)
- end
-
- it 'should autorequire the package that install the file' do
- catalog = Puppet::Resource::Catalog.new
- package = Puppet::Type.type(:package).new(:name => 'congress-common')
- catalog.add_resource package, @congress_config
- dependency = @congress_config.autorequire
- expect(dependency.size).to eq(1)
- expect(dependency[0].target).to eq(@congress_config)
- expect(dependency[0].source).to eq(package)
- end
-
-
-end
diff --git a/components/congress/puppet/tests/init.pp b/components/congress/puppet/tests/init.pp
deleted file mode 100644
index 922b1cb..0000000
--- a/components/congress/puppet/tests/init.pp
+++ /dev/null
@@ -1,12 +0,0 @@
-# The baseline for module testing used by Puppet Labs is that each manifest
-# should have a corresponding test manifest that declares that class or defined
-# type.
-#
-# Tests are then run by using puppet apply --noop (to check for compilation
-# errors and view a log of events) or by fully applying the test in a virtual
-# environment (to compare the resulting system state to the desired state).
-#
-# Learn more about module testing here:
-# http://docs.puppetlabs.com/guides/tests_smoke.html
-#
-include ::congress