diff options
-rw-r--r-- | manifests/puppetboard.pp | 37 |
1 files changed, 21 insertions, 16 deletions
diff --git a/manifests/puppetboard.pp b/manifests/puppetboard.pp index b9f1337..acb7330 100644 --- a/manifests/puppetboard.pp +++ b/manifests/puppetboard.pp @@ -1,4 +1,18 @@ -class profiles::puppetboard { +# @summary configures a puppetborad server, fronted by apache2 +# +# A parameter $ensure +# (`Enum['present', 'absent'] $ensure = 'present'`) +# would be nice, but class['Apache'] doesn't have that parameter, +# making this a moot point +# +# @param puppetdb_host +# Host to connect for puppetdb +# @param puppetdb_port +# Port to connect for puppetdb +class profiles::puppetboard ( + String $puppetdb_host, + Stdlib::Port $puppetdb_port, +) { # https://forge.puppet.com/modules/puppet/puppetboard/readme # Configure Apache class { 'apache': @@ -6,33 +20,24 @@ class profiles::puppetboard { purge_configs => true, } - $wsgi = $facts['os']['family'] ? { - 'Debian' => { - package_name => 'libapache2-mod-wsgi-py3', - mod_path => '/usr/lib/apache2/modules/mod_wsgi.so', - }, - default => {} - } - - class { 'apache::mod::wsgi': - * => $wsgi, - } - # Configure puppetboard class { 'puppetboard': manage_git => true, manage_virtualenv => true, - require => Class['puppetdb'], - puppetdb_port => 8080, + puppetdb_port => $puppetdb_port, # Required for /metrics/ to work - puppetdb_host => '127.0.0.1', + puppetdb_host => $puppetdb_host, enable_catalog => true, python_loglevel => 'info', offline_mode => true, default_environment => '*', } + if defined(Class['puppetdb']) { + Class['puppetdb'] -> Class['puppetboard'] + } + class { '::profiles::letsencrypt': provider => apache, } |