Project

General

Profile

Download (4 KB) Statistics
| Branch: | Tag: | Revision:
# == Class: pulp
#
# Install and configure pulp
#
# === Parameters:
#
# $oauth_key:: The oauth key; defaults to pulp
#
# $oauth_secret:: The oauth secret; defaults to secret
#
# $messaging_url:: URL for the AMQP server that Pulp will use to
# communicate with nodes.
#
# $messaging_ca_cert: The CA cert to authenicate against the AMQP server.
#
# $messaging_client_cert:: The client certificate signed by the CA cert
# above to authenticate.
#
# $broker_url:: URL for the Celery broker that Pulp will use to
# queue tasks.
#
# $broker_use_ssl:: Set to true if deploying broker for Celery with SSL.
#
# $consumers_ca_cert:: The path to the CA cert that will be used to sign customer
# and admin identification certificates
#
# $consumers_ca_key:: The private key for the CA cert
#
# $ssl_ca_cert:: Full path to the CA certificate used to sign the Pulp
# server's SSL certificate; consumers will use this to verify the
# Pulp server's SSL certificate during the SSL handshake
#
# $consumers_crl:: Certificate revocation list for consumers which
# are no valid (have had their client certs
# revoked)
#
# $ssl_ca_cert:: The SSL cert that will be used by Pulp to
# verify the connection
#
# $default_login:: Initial login; defaults to admin
#
# $default_password:: Initial password; defaults to admin
#
# $repo_auth:: Boolean to determine whether repos managed by
# pulp will require authentication. Defaults
# to true
#
# $reset_data:: Boolean to reset the data in MongoDB. Defaults
# to false
#
# $reset_cache:: Boolean to flush the cache. Defaults to false
#
# $qpid_ssl_cert_db The location of the Qpid SSL cert database
#
# $qpid_ssl_cert_password_file Location of the password file for the Qpid SSL cert
#
# $user_groups:: Additional user groups to add the qpid user to
#
class pulp (

$oauth_key = $pulp::params::oauth_key,
$oauth_secret = $pulp::params::oauth_secret,

$messaging_url = $pulp::params::messaging_url,
$messaging_ca_cert = $pulp::params::messaging_ca_cert,
$messaging_client_cert = $pulp::params::messaging_client_cert,

$broker_url = $pulp::params::broker_url,
$broker_use_ssl = $pulp::params::broker_use_ssl,

$consumers_ca_cert = $pulp::params::consumers_ca_cert,
$consumers_ca_key = $pulp::params::consumers_ca_key,
$ssl_ca_cert = $pulp::params::ssl_ca_cert,

$consumers_crl = $pulp::params::consumers_crl,

$ssl_ca_cert = $pulp::params::ssl_ca_cert,

$default_password = $pulp::params::default_password,

$repo_auth = true,

$reset_data = false,
$reset_cache = false,

$qpid_ssl_cert_db = $pulp::params::qpid_ssl_cert_db,
$qpid_ssl_cert_password_file = $pulp::params::qpid_ssl_cert_password_file

) inherits pulp::params {

include ::apache

class { 'apache::mod::wsgi':} ~>
class { 'mongodb':
logpath => '/var/lib/mongodb/mongodb.log',
dbpath => '/var/lib/mongodb',
} ~>
class { 'qpid':
ssl => true,
ssl_cert_db => $qpid_ssl_cert_db,
ssl_cert_password_file => $qpid_ssl_cert_password_file,
ssl_cert_name => 'broker',
user_groups => $pulp::user_groups
} ~>
# Make sure we install the mongodb client, used by service-wait to check
# that the server is up.
class {'::mongodb::client':} ~>
class { 'pulp::install':
require => [Class['mongodb'], Class['qpid']]
} ~>
class { 'pulp::config':
require => [Class['mongodb'], Class['qpid']]
} ~>
class { 'pulp::service': } ~>
Service['httpd']
->
Class[pulp]
}
(3-3/6)