summaryrefslogtreecommitdiff
path: root/puppet/modules/site_static/manifests
diff options
context:
space:
mode:
authorelijah <elijah@riseup.net>2014-05-24 01:35:54 -0700
committerelijah <elijah@riseup.net>2014-06-02 11:28:27 -0700
commit24f0cc3c64aab59db436e0827ba24ec08023100a (patch)
tree179c4464d13b3aed4e8b6b78735508c4bd7cb700 /puppet/modules/site_static/manifests
parent09916946f8eb0ab17689255fd626a52ef1808e6a (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.pp3
-rw-r--r--puppet/modules/site_static/manifests/init.pp18
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