# Class: profiles::puppet::puppetmaster # # This class manages the puppetmaster using the ghoneycutt-puppet module. # It manages the server settings in the puppet.conf file. class profiles::puppet::puppetmaster ( Optional[Stdlib::Fqdn] $puppetdb_host = lookup('puppetdbapi', Optional[Stdlib::Fqdn], 'first', undef), ) { if $facts['enc_role'] == 'roles::infra::puppet::master' { include profiles::puppet::r10k include profiles::puppet::g10k include profiles::puppet::enc include profiles::puppet::cobbler_enc include profiles::puppet::autosign include profiles::puppet::gems include profiles::helpers::certmanager include profiles::helpers::sshsignhost include profiles::puppet::server include profiles::puppet::puppetca include profiles::puppet::eyaml # migration to openvox, cleanup puppetserver/puppetdb-termini package {'puppetdb-termini': ensure => purged, before => Package['openvoxdb-termini'], } package {'puppetserver': ensure => purged, before => Package['openvox-server'], } class { 'puppetdb::master::config': puppetdb_server => $puppetdb_host, manage_storeconfigs => false, terminus_package => 'openvoxdb-termini', } Package['openvox-server'] -> Class['profiles::puppet::gems'] -> Class['profiles::puppet::r10k'] -> Class['profiles::puppet::g10k'] -> Class['profiles::puppet::enc'] -> Class['profiles::puppet::cobbler_enc'] -> Class['profiles::puppet::autosign'] -> Class['puppetdb::master::config'] -> Class['profiles::puppet::server'] } }