diff options
author | elijah <elijah@riseup.net> | 2014-05-24 01:35:54 -0700 |
---|---|---|
committer | elijah <elijah@riseup.net> | 2014-06-02 11:28:27 -0700 |
commit | 24f0cc3c64aab59db436e0827ba24ec08023100a (patch) | |
tree | 179c4464d13b3aed4e8b6b78735508c4bd7cb700 /puppet/modules/site_static/manifests | |
parent | 09916946f8eb0ab17689255fd626a52ef1808e6a (diff) |
added support for /provider.json served from static site.
Diffstat (limited to 'puppet/modules/site_static/manifests')
-rw-r--r-- | puppet/modules/site_static/manifests/domain.pp | 3 | ||||
-rw-r--r-- | puppet/modules/site_static/manifests/init.pp | 18 |
2 files changed, 20 insertions, 1 deletions
diff --git a/puppet/modules/site_static/manifests/domain.pp b/puppet/modules/site_static/manifests/domain.pp index 8af2230f..0f54a975 100644 --- a/puppet/modules/site_static/manifests/domain.pp +++ b/puppet/modules/site_static/manifests/domain.pp @@ -3,7 +3,8 @@ define site_static::domain ( $ca_cert, $key, $cert, - $tls_only) { + $tls_only, + $aliases) { $domain = $name $base_dir = '/srv/static' diff --git a/puppet/modules/site_static/manifests/init.pp b/puppet/modules/site_static/manifests/init.pp index 4f6d895f..6b2cc1f3 100644 --- a/puppet/modules/site_static/manifests/init.pp +++ b/puppet/modules/site_static/manifests/init.pp @@ -3,6 +3,24 @@ class site_static { $static = hiera('static') $domains = $static['domains'] $formats = $static['formats'] + $bootstrap = $static['bootstrap_files'] + + if $bootstrap['enabled'] { + $bootstrap_domain = $bootstrap['domain'] + $bootstrap_client = $bootstrap['client_version'] + file { '/srv/leap/provider.json': + content => $bootstrap['provider_json'], + owner => 'www-data', + group => 'www-data', + mode => '0444'; + } + # It is important to always touch provider.json: the client needs to check x-min-client-version header, + # but this is only sent when the file has been modified (otherwise 304 is sent by apache). The problem + # is that changing min client version won't alter the content of provider.json, so we must touch it. + exec { '/bin/touch /srv/leap/provider.json': + require => File['/srv/leap/provider.json']; + } + } if (member($formats, 'amber')) { include site_config::ruby::dev |