class profiles::letsencrypt ( String $certname, String $nginx_plugin, Array[String] $domains, ) { ensure_packages ([$nginx_plugin]) include ::letsencrypt letsencrypt::certonly { $certname: ensure => present, domains => $domains, manage_cron => true, plugin => 'nginx', additional_args => [ '--quiet', ], # pre_hook_commands => [ 'systemctl stop nginx.service', ], post_hook_commands => [ 'systemctl restart nginx.service', ], } }