# This module is distributed under the GNU Affero General Public License: # # Nginx module for puppet # Copyright (C) 2010 Sarava Group # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as # published by the Free Software Foundation, either version 3 of the # License, or any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see . class nginx inherits nginx::base { case $ssl { true: { include ssl ssl::cert { "$::domain": notify => Service['nginx'], } ssl::check { "$::domain": file => true, } # For SNI ssl::cert { "blank": notify => Service['nginx'], } Service["nginx"] { require => [ Package["nginx"], File["/etc/nginx/sites-enabled/${::domain}"], File["/etc/ssl/private/${::domain}.pem"], File["/etc/ssl/certs/${::domain}.crt"] ], } } } # Default site nginx::base::site { "default": ensure => present, source => 'template', } # Domain site nginx::base::site { "$domain": ensure => present, } }