aboutsummaryrefslogtreecommitdiff
path: root/manifests/role/web.pp
diff options
context:
space:
mode:
Diffstat (limited to 'manifests/role/web.pp')
-rw-r--r--manifests/role/web.pp49
1 files changed, 49 insertions, 0 deletions
diff --git a/manifests/role/web.pp b/manifests/role/web.pp
new file mode 100644
index 0000000..7cdd93f
--- /dev/null
+++ b/manifests/role/web.pp
@@ -0,0 +1,49 @@
+class nodo::role::web inherits nodo::vserver {
+ # Hidden services
+ $hidden = hiera('apache::site::hidden', false)
+ if $hidden == true {
+ include onion
+ }
+
+ # Classes for web nodes
+ include websites
+ include database
+ include users::virtual
+ include nodo::utils::web
+
+ # Reprepro configuration
+ $reprepro = hiera('nodo::web::reprepro', false)
+ $reprepro_basedir = '/var/reprepro'
+
+ case $reprepro {
+ true,'enabled': {
+ class { 'reprepro':
+ basedir => '/var/reprepro',
+ uploaders => hiera('nodo::web::reprepro_uploaders', [ ]),
+ }
+
+ include reprepro::cron
+ }
+ 'disabled': {
+ class { 'reprepro::disabled':
+ basedir => '/var/reprepro',
+ }
+ }
+ 'purged': {
+ class { 'reprepro::purged':
+ basedir => '/var/reprepro',
+ }
+ }
+ false,default: { }
+ }
+
+ $git_daemon = hiera('nodo::web::git_daemon', True)
+
+ if $git_daemon != false {
+ class { 'git::daemon': }
+ }
+
+ backupninja::svn { "svn":
+ src => "/var/svn",
+ }
+}