Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: modules/adblockplus/manifests/web/fileserver.pp

Issue 29551585: #2317 - provide role fileserver for eyeofiles.com (Closed) Base URL: https://hg1/infrastructure
Patch Set: more flexible resource definitions Created Sept. 25, 2017, 9:18 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: modules/adblockplus/manifests/web/fileserver.pp
===================================================================
new file mode 100644
--- /dev/null
+++ b/modules/adblockplus/manifests/web/fileserver.pp
@@ -0,0 +1,56 @@
+# == Class: adblockplus::web::fileserver
+#
+# A fileserver serves multiple file repositories.
+#
+# === Parameters:
+#
+# [*domain*]
+# A string which is the name of the fileserver domain, under which
+# each repository has a subdomain.
+#
+# [*certificate*]
+# The name of the SSL certificate file within modules/private/files, if any.
+# Requires a private_key as well.
+#
+# [*private_key*]
+# The name of the private key file within modules/private/files, if any.
+# Requires a certificate as well.
+#
+# [*is_default*]
+# Passed on to nginx (whether or not the site config should be default).
+#
+# [*repositories*]
+# A collection (hash) of repositories to serve.
+# The contents of a repository is served on a subdomain of the fileserver.
+#
+class adblockplus::web::fileserver(
+ $ensure = 'present',
+ $domain,
+ $certificate = undef,
+ $private_key = undef,
+ $repositories={},
+){
+
+ include nginx
+ include adblockplus
+ include adblockplus::web
+
+ realize(File[$adblockplus::directory])
+
+ file {"$adblockplus::directory/fileserver":
+ ensure => directory,
+ }
+
+ ensure_resources('adblockplus::web::fileserver::repository', $repositories, {
+ ensure => 'present',
+ })
+
+ nginx::hostconfig{ "$domain":
+ source => 'puppet:///modules/adblockplus/nginx/fileserver.conf',
+ is_default => true,
+ certificate => $certificate,
+ private_key => $private_key,
+ log => 'access_log_fileserver',
+ }
+}
+
« no previous file with comments | « modules/adblockplus/files/nginx/fileserver.conf ('k') | modules/adblockplus/manifests/web/fileserver/repository.pp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld