class websites::resources { # Retrieve configured instances $sites = hiera('apache::sites', {}) $modules = hiera('apache::modules', {}) $configs = hiera('apache::configs', {}) $databases = hiera('database::instances', {}) $database_configs = hiera('database::configs', {}) $ikiwikis = hiera('ikiwiki::instances', {}) $domains = hiera('domain_check::instances', {}) # Apply instances create_resources('apache::site', $sites) create_resources('apache::module', $modules) create_resources('apache::config', $configs) create_resources('database::instance', $databases) create_resources('database::config', $database_configs) create_resources('ikiwiki::instance', $ikiwikis) create_resources('domain_check::instance', $domains) # Remove untagged site instances #Apache::Site <| tag != $::hostname and tag != 'all' |> { # ensure => absent, #} # # Remove untagged database instances #Database::Instance <| tag != $::hostname and tag != 'all' |> { # ensure => absent, #} # # Remove untagged ikiwiki instances #Ikiwiki::Instance <| tag != $::hostname and tag != 'all' |> { # ensure => absent, #} }