summaryrefslogtreecommitdiff
path: root/manifests/site.pp
diff options
context:
space:
mode:
Diffstat (limited to 'manifests/site.pp')
-rw-r--r--manifests/site.pp61
1 files changed, 14 insertions, 47 deletions
diff --git a/manifests/site.pp b/manifests/site.pp
index 543850c..448592d 100644
--- a/manifests/site.pp
+++ b/manifests/site.pp
@@ -1,60 +1,27 @@
define nginx::site(
$ensure = present,
+ $ssl = present,
$source = 'file',
$certbot = true
) {
- case $source {
- 'file': {
- file { "/etc/nginx/sites-available/$name":
- source => "puppet:///modules/site_nginx/$name",
- owner => "root",
- group => "root",
- mode => 0644,
- ensure => $ensure,
- notify => Service["nginx"],
- require => File["/etc/nginx/sites-available"],
- }
- }
- 'template': {
- file { "/etc/nginx/sites-available/$name":
- content => template("nginx/$name.erb"),
- owner => "root",
- group => "root",
- mode => 0644,
- ensure => $ensure,
- notify => Service["nginx"],
- require => File["/etc/nginx/sites-available"],
- }
- }
- 'none': {
- file { "/etc/nginx/sites-available/$name":
- owner => "root",
- group => "root",
- mode => 0644,
- ensure => $ensure,
- notify => Service["nginx"],
- require => File["/etc/nginx/sites-available"],
- }
- }
- }
-
- $link = $ensure ? {
- present => "/etc/nginx/sites-available/$name",
- default => absent,
- }
-
- # Symlink to enable proxy configuration
- file { "/etc/nginx/sites-enabled/$name":
- ensure => $link,
- require => File["/etc/nginx/sites-enabled"],
- notify => Service["nginx"],
+ nginx::site::config { $name:
+ ensure => $ensure,
+ source => $source,
}
if $certbot == true {
certbot::manage { $name:
- ensure => $ensure,
pre_hook => '/usr/sbin/service nginx restart',
- require => File["/etc/nginx/sites-enabled/$name"],
+ require => Nginx::Site[$name],
+ }
+ }
+
+ nginx::site::config { "${name}-ssl":
+ ensure => $ssl,
+ source => $source,
+ require => $certbot ? {
+ true => Certbot::Manage[$name],
+ default => undef,
}
}
}