So I have a custom module that just sets up a simple nginx server, to learn how to properly make puppet modules.
But it seems that my values when I declare the class aren't getting passed in. It just uses the default values instead.
Below is my bits of class code that matter, and the base.pp
I'm using in my control repo.
Base class init.pp
:
class ufprovisioning (
$webserver_manage = $ufprovisioning::params::webserver_manage,
$site_name = $ufprovisioning::params::site_name,
) inherits ufprovisioning::params {
contain ufprovisioning::install
contain ufprovisioning::config
contain ufprovisioning::service
Class['::ufprovisioning::install'] -> Class['::ufprovisioning::config'] ~> Class['::ufprovisioning::service']
Class['::ufprovisioning::install'] ~> Class['::ufprovisioning::service']
}
Parameter Class params.pp
:
class ufprovisioning::params {
$site_name = "webserver.test"
$webserver_manage = true
}
Config Class config.pp
:
class ufprovisioning::config {
assert_private()
$webserver_manage = $::ufprovisioning::params::webserver_manage
$site_name = $::ufprovisioning::params::site_name
nginx::resource::server { 'cclloyd.com':
ensure => present,
server_name => [$site_name],
www_root => "/var/www/${site_name}",
listen_port => 80,
ssl => false,
}
}
Control class base.pp
:
class profile::base {
class { '::ntp': }
class { 'ufprovisioning':
site_name => "examplesite.test",
webserver_manage => true,
}
}