summaryrefslogtreecommitdiffstats
path: root/modules/nginx/manifests
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2017-11-05 21:56:01 -0500
committerJesse Luehrs <doy@tozt.net>2017-11-05 21:56:01 -0500
commitbd9f23facf43df40a481aa07732600d7512a86dc (patch)
treead473b769ae0597669af07a67118fff77810facf /modules/nginx/manifests
parent18dab99801d978f6b037858e5dafb197e5f8c804 (diff)
downloadpuppet-tozt-bd9f23facf43df40a481aa07732600d7512a86dc.tar.gz
puppet-tozt-bd9f23facf43df40a481aa07732600d7512a86dc.zip
nginx config
Diffstat (limited to 'modules/nginx/manifests')
-rw-r--r--modules/nginx/manifests/config.pp19
-rw-r--r--modules/nginx/manifests/init.pp7
-rw-r--r--modules/nginx/manifests/install.pp5
-rw-r--r--modules/nginx/manifests/service.pp5
-rw-r--r--modules/nginx/manifests/site.pp15
5 files changed, 51 insertions, 0 deletions
diff --git a/modules/nginx/manifests/config.pp b/modules/nginx/manifests/config.pp
new file mode 100644
index 0000000..42b5f99
--- /dev/null
+++ b/modules/nginx/manifests/config.pp
@@ -0,0 +1,19 @@
+class nginx::config {
+ file {
+ "/etc/nginx/sites-available":
+ ensure => directory;
+ "/etc/nginx/sites-enabled":
+ ensure => directory;
+ "/etc/nginx/ssl":
+ source => 'puppet:///modules/nginx/ssl';
+ "/etc/nginx/mime.types.paste":
+ source => 'puppet:///modules/nginx/mime.types.paste';
+ "/etc/nginx/nginx.conf":
+ source => 'puppet:///modules/nginx/nginx.conf';
+ }
+
+ exec { 'openssl dhparam -out /etc/nginx/dhparam.pem 4096':
+ path => '/usr/bin',
+ creates => '/etc/nginx/dhparam.pem';
+ }
+}
diff --git a/modules/nginx/manifests/init.pp b/modules/nginx/manifests/init.pp
index e3e6b70..505c847 100644
--- a/modules/nginx/manifests/init.pp
+++ b/modules/nginx/manifests/init.pp
@@ -1,2 +1,9 @@
class nginx {
+ include certbot
+
+ include nginx::install
+ include nginx::config
+ include nginx::service
+
+ nginx::install -> nginx::config -> nginx::service
}
diff --git a/modules/nginx/manifests/install.pp b/modules/nginx/manifests/install.pp
new file mode 100644
index 0000000..680b0ab
--- /dev/null
+++ b/modules/nginx/manifests/install.pp
@@ -0,0 +1,5 @@
+class nginx::install {
+ package { ['nginx', 'openssl']:
+ ensure => installed;
+ }
+}
diff --git a/modules/nginx/manifests/service.pp b/modules/nginx/manifests/service.pp
new file mode 100644
index 0000000..bd09c64
--- /dev/null
+++ b/modules/nginx/manifests/service.pp
@@ -0,0 +1,5 @@
+class nginx::service {
+ service { 'nginx':
+ ensure => running;
+ }
+}
diff --git a/modules/nginx/manifests/site.pp b/modules/nginx/manifests/site.pp
new file mode 100644
index 0000000..dc25bb3
--- /dev/null
+++ b/modules/nginx/manifests/site.pp
@@ -0,0 +1,15 @@
+define nginx::site($content=undef, $source=undef, $enabled=true) {
+ include nginx
+
+ file { "/etc/nginx/sites-available/$name":
+ source => $source,
+ content => $content;
+ }
+
+ if $enabled {
+ file { "/etc/nginx/sites-enabled/$name":
+ ensure => link,
+ target => "../sites-available/$name";
+ }
+ }
+}