193 lines
6.7 KiB
Puppet
193 lines
6.7 KiB
Puppet
# Class: nginx::config
|
|
#
|
|
# This module manages NGINX bootstrap and configuration
|
|
#
|
|
# Parameters:
|
|
#
|
|
# There are no default parameters for this class.
|
|
#
|
|
# Actions:
|
|
#
|
|
# Requires:
|
|
#
|
|
# Sample Usage:
|
|
#
|
|
# This class file is not called directly
|
|
class nginx::config(
|
|
$client_body_buffer_size = $nginx::params::nx_client_body_buffer_size,
|
|
$client_body_temp_path = $nginx::params::nx_client_body_temp_path,
|
|
$client_max_body_size = $nginx::params::nx_client_max_body_size,
|
|
$confd_purge = $nginx::params::nx_confd_purge,
|
|
$conf_dir = $nginx::params::nx_conf_dir,
|
|
$conf_template = $nginx::params::nx_conf_template,
|
|
$daemon_user = $nginx::params::nx_daemon_user,
|
|
$events_use = $nginx::params::nx_events_use,
|
|
$fastcgi_cache_inactive = $nginx::params::nx_fastcgi_cache_inactive,
|
|
$fastcgi_cache_key = $nginx::params::nx_fastcgi_cache_key,
|
|
$fastcgi_cache_keys_zone = $nginx::params::nx_fastcgi_cache_keys_zone,
|
|
$fastcgi_cache_levels = $nginx::params::nx_fastcgi_cache_levels,
|
|
$fastcgi_cache_max_size = $nginx::params::nx_fastcgi_cache_max_size,
|
|
$fastcgi_cache_path = $nginx::params::nx_fastcgi_cache_path,
|
|
$fastcgi_cache_use_stale = $nginx::params::nx_fastcgi_cache_use_stale,
|
|
$gzip = $nginx::params::nx_gzip,
|
|
$http_access_log = $nginx::params::nx_http_access_log,
|
|
$http_cfg_append = $nginx::params::nx_http_cfg_append,
|
|
$http_tcp_nodelay = $nginx::params::nx_http_tcp_nodelay,
|
|
$http_tcp_nopush = $nginx::params::nx_http_tcp_nopush,
|
|
$keepalive_timeout = $nginx::params::nx_keepalive_timeout,
|
|
$logdir = $nginx::params::nx_logdir,
|
|
$mail = $nginx::params::nx_mail,
|
|
$multi_accept = $nginx::params::nx_multi_accept,
|
|
$names_hash_bucket_size = $nginx::params::nx_names_hash_bucket_size,
|
|
$names_hash_max_size = $nginx::params::nx_names_hash_max_size,
|
|
$nginx_error_log = $nginx::params::nx_nginx_error_log,
|
|
$pid = $nginx::params::nx_pid,
|
|
$proxy_buffers = $nginx::params::nx_proxy_buffers,
|
|
$proxy_buffer_size = $nginx::params::nx_proxy_buffer_size,
|
|
$proxy_cache_inactive = $nginx::params::nx_proxy_cache_inactive,
|
|
$proxy_cache_keys_zone = $nginx::params::nx_proxy_cache_keys_zone,
|
|
$proxy_cache_levels = $nginx::params::nx_proxy_cache_levels,
|
|
$proxy_cache_max_size = $nginx::params::nx_proxy_cache_max_size,
|
|
$proxy_cache_path = $nginx::params::nx_proxy_cache_path,
|
|
$proxy_conf_template = $nginx::params::nx_proxy_conf_template,
|
|
$proxy_connect_timeout = $nginx::params::nx_proxy_connect_timeout,
|
|
$proxy_headers_hash_bucket_size = $nginx::params::nx_proxy_headers_hash_bucket_size,
|
|
$proxy_http_version = $nginx::params::nx_proxy_http_version,
|
|
$proxy_read_timeout = $nginx::params::nx_proxy_read_timeout,
|
|
$proxy_redirect = $nginx::params::nx_proxy_redirect,
|
|
$proxy_send_timeout = $nginx::params::nx_proxy_send_timeout,
|
|
$proxy_set_header = $nginx::params::nx_proxy_set_header,
|
|
$proxy_temp_path = $nginx::params::nx_proxy_temp_path,
|
|
$run_dir = $nginx::params::nx_run_dir,
|
|
$sendfile = $nginx::params::nx_sendfile,
|
|
$server_tokens = $nginx::params::nx_server_tokens,
|
|
$spdy = $nginx::params::nx_spdy,
|
|
$super_user = $nginx::params::nx_super_user,
|
|
$temp_dir = $nginx::params::nx_temp_dir,
|
|
$types_hash_bucket_size = $nginx::params::nx_types_hash_bucket_size,
|
|
$types_hash_max_size = $nginx::params::nx_types_hash_max_size,
|
|
$vhost_purge = $nginx::params::nx_vhost_purge,
|
|
$worker_connections = $nginx::params::nx_worker_connections,
|
|
$worker_processes = $nginx::params::nx_worker_processes,
|
|
$worker_rlimit_nofile = $nginx::params::nx_worker_rlimit_nofile,
|
|
$global_owner = $nginx::params::global_owner,
|
|
$global_group = $nginx::params::global_group,
|
|
$global_mode = $nginx::params::global_mode,
|
|
$sites_available_owner = $nginx::params::sites_available_owner,
|
|
$sites_available_group = $nginx::params::sites_available_group,
|
|
$sites_available_mode = $nginx::params::sites_available_mode,
|
|
) inherits nginx::params {
|
|
|
|
File {
|
|
owner => $global_owner,
|
|
group => $global_group,
|
|
mode => $global_mode,
|
|
}
|
|
|
|
file { $conf_dir:
|
|
ensure => directory,
|
|
}
|
|
|
|
file { "${conf_dir}/conf.d":
|
|
ensure => directory,
|
|
}
|
|
if $confd_purge == true {
|
|
File["${conf_dir}/conf.d"] {
|
|
purge => true,
|
|
recurse => true,
|
|
}
|
|
}
|
|
|
|
file { "${conf_dir}/conf.mail.d":
|
|
ensure => directory,
|
|
}
|
|
if $confd_purge == true {
|
|
File["${conf_dir}/conf.mail.d"] {
|
|
purge => true,
|
|
recurse => true,
|
|
}
|
|
}
|
|
|
|
file { "${conf_dir}/conf.d/vhost_autogen.conf":
|
|
ensure => absent,
|
|
}
|
|
|
|
file { "${conf_dir}/conf.mail.d/vhost_autogen.conf":
|
|
ensure => absent,
|
|
}
|
|
|
|
file {$run_dir:
|
|
ensure => directory,
|
|
}
|
|
|
|
file {$client_body_temp_path:
|
|
ensure => directory,
|
|
owner => $daemon_user,
|
|
}
|
|
|
|
file {$proxy_temp_path:
|
|
ensure => directory,
|
|
owner => $daemon_user,
|
|
}
|
|
|
|
file { "${conf_dir}/sites-available":
|
|
ensure => directory,
|
|
owner => $sites_available_owner,
|
|
group => $sites_available_group,
|
|
mode => $sites_available_mode,
|
|
}
|
|
|
|
if $vhost_purge == true {
|
|
File["${conf_dir}/sites-available"] {
|
|
purge => true,
|
|
recurse => true,
|
|
}
|
|
}
|
|
|
|
file { "${conf_dir}/sites-enabled":
|
|
ensure => directory,
|
|
}
|
|
|
|
if $vhost_purge == true {
|
|
File["${conf_dir}/sites-enabled"] {
|
|
purge => true,
|
|
recurse => true,
|
|
}
|
|
}
|
|
|
|
file { "${conf_dir}/sites-enabled/default":
|
|
ensure => absent,
|
|
}
|
|
|
|
file { "${conf_dir}/nginx.conf":
|
|
ensure => file,
|
|
content => template($conf_template),
|
|
}
|
|
|
|
file { "${conf_dir}/conf.d/proxy.conf":
|
|
ensure => file,
|
|
content => template($proxy_conf_template),
|
|
}
|
|
|
|
file { "${conf_dir}/conf.d/default.conf":
|
|
ensure => absent,
|
|
}
|
|
|
|
file { "${conf_dir}/conf.d/example_ssl.conf":
|
|
ensure => absent,
|
|
}
|
|
|
|
file { "${temp_dir}/nginx.d":
|
|
ensure => absent,
|
|
purge => true,
|
|
recurse => true,
|
|
force => true,
|
|
}
|
|
|
|
file { "${temp_dir}/nginx.mail.d":
|
|
ensure => absent,
|
|
purge => true,
|
|
recurse => true,
|
|
force => true,
|
|
}
|
|
}
|