diff options
Diffstat (limited to 'manifests/proxy')
-rw-r--r-- | manifests/proxy/nginx.pp | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/manifests/proxy/nginx.pp b/manifests/proxy/nginx.pp new file mode 100644 index 0000000..7e4b9a2 --- /dev/null +++ b/manifests/proxy/nginx.pp @@ -0,0 +1,34 @@ +define concourse::proxy::nginx ( + String $server_name, + String $cluster, + Enum['absent', 'present'] $ensure = 'present', +) { + include concourse + + nginx::resource::upstream { "concourse - ${cluster}": + ensure => $ensure, + } + + nginx::resource::server { $server_name: + } + + nginx::resource::location { "${server_name} - /": + location => '/', + proxy_pass => "http://${cluster}", + } + + nginx::resource::location { "${server_name} - ~ /hijack$": + location => '~ /hijack$', + proxy_pass => "http://${cluster}", + proxy_set_header => [ + 'Host $host', + 'X-Real-IP $remote_addr', + 'X-Forwarded-For $proxy_add_x_forwarded_for', + 'X-Forwarded-Host $host', + 'X-Forwarded-Proto $scheme', + 'Proxy ""', + 'Upgrade $http_upgrade', + 'Connection "upgrade"', + ], + } +} |