summaryrefslogtreecommitdiff
path: root/manifests/webdav.pp
diff options
context:
space:
mode:
authorHugo Hörnquist <hugo@lysator.liu.se>2022-01-12 02:26:25 +0100
committerHugo Hörnquist <hugo@lysator.liu.se>2022-01-12 02:26:25 +0100
commitb57b96ac49d33606719162fb9a888e87a63f3fcb (patch)
tree6d3c7b76e59100e70aab128cdf5e3c2bba14bdfd /manifests/webdav.pp
parentMove webdav into profiles. (diff)
downloadprofiles-b57b96ac49d33606719162fb9a888e87a63f3fcb.tar.gz
profiles-b57b96ac49d33606719162fb9a888e87a63f3fcb.tar.xz
Revert "Move webdav into profiles."
It actually reverts the non-need for the nginx module webdav_ext. Since Omnifocus requires PROPFIND. This reverts commit edf6ffe8b399679ba28cc5e558a6838919dd1ee8.
Diffstat (limited to 'manifests/webdav.pp')
-rw-r--r--manifests/webdav.pp75
1 files changed, 5 insertions, 70 deletions
diff --git a/manifests/webdav.pp b/manifests/webdav.pp
index bd586f6..88b2668 100644
--- a/manifests/webdav.pp
+++ b/manifests/webdav.pp
@@ -1,73 +1,8 @@
class profiles::webdav (
- String $nginx_server,
- String $file_path,
- String $location,
- String $passwd_file = "${file_path}/.htpasswd",
- String $owner = 'http',
- String $group = 'share',
- Array[Array[String,2,2]] $users = [],
- Array[String] $dav_methods = ['PUT', 'DELETE', 'MKCOL', 'COPY', 'MOVE'],
- # Array[String] $dav_ext_methods = ['PROPFIND', 'OPTIONS'],
- Hash[String,String] $dav_access = {
- 'user' => 'rw',
- 'group' => 'rw',
- }
+ Hash[String,Hash] $servers,
+ Array[Array[String,2,2]] $users,
) {
-
- # TODO install this module somehow
- # AUR: nginx-mainline-mod-dav-ext
-
- require ::nginx
-
- # $modname = 'ngx_http_dav_ext_module'
- # # This assumes that the directory exists, and that
- # # nginx::include_modules_enabled => true
- # file { "/etc/nginx/modules-enabled/${modname}.conf":
- # ensure => file,
- # content => @("EOF")
- # load_module /usr/lib/nginx/modules/${modname}.so;
- # | EOF
- # }
-
- $lines = $users.map |$pair| { $pair.join(':') }.join("\n")
-
- file {
- default:
- owner => $owner,
- group => $group,
- ;
- $file_path:
- ensure => 'directory',
- mode => '0770',
- recurse => 'false',
- ;
- $passwd_file:
- ensure => 'file',
- mode => '0660',
- content => @("EOF")
- # File managed by puppet
- ${lines}
- | EOF
- ;
- }
-
- nginx::resource::location { $location:
- server => $nginx_server,
- location_alias => $file_path,
- ssl => true,
- ssl_only => true,
-
- auth_basic => 'Enter password for dav access',
- auth_basic_user_file => $passwd_file,
-
- location_cfg_append => {
- 'dav_methods' => $dav_methods.join(' '),
- # 'dav_ext_methods' => $dav_ext_methods.join(' '),
- 'dav_access' => $dav_access.map |$k, $v| { "${k}:${v}" }.join(' '),
- 'client_body_temp_path' => "${file_path}/tmp",
- 'create_full_put_path' => 'on',
- 'autoindex' => 'on',
- 'allow' => 'all',
- }
- }
+ create_resources(webdav_server, $servers, {
+ users => $users
+ })
}