summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHugo Hörnquist <hugo@lysator.liu.se>2022-01-04 02:27:00 +0100
committerHugo Hörnquist <hugo@lysator.liu.se>2022-01-04 02:27:00 +0100
commitc453fd651993f06c24dcd87e773f669f37ebd05a (patch)
tree6ef494265a24346952791247e847e8eb64b328d1
parentManage hiera through hiera. (diff)
downloadwebdav_server-c453fd651993f06c24dcd87e773f669f37ebd05a.tar.gz
webdav_server-c453fd651993f06c24dcd87e773f669f37ebd05a.tar.xz
Remaining stuff on gandalf.
-rw-r--r--manifests/site.pp136
-rw-r--r--modules/profiles/manifests/dns_zones.pp12
-rw-r--r--modules/profiles/manifests/webdav.pp8
-rw-r--r--modules/profiles/manifests/workstation.pp7
-rw-r--r--modules/webdav_server/manifests/init.pp (renamed from modules/profiles/manifests/webdav_server.pp)2
5 files changed, 34 insertions, 131 deletions
diff --git a/manifests/site.pp b/manifests/site.pp
index 92c907b..be6831a 100644
--- a/manifests/site.pp
+++ b/manifests/site.pp
@@ -1,151 +1,27 @@
node 'gandalf.adrift.space' {
-
include ::rss_filter
- include ::networking
-
- nspawn::machine { 'busting':
- os => 'debian',
- enable => true,
- os_opts => {
- os_version => 'buster',
- }
- }
-
- # busting 10.0.0.42/23
- nspawn::machine { 'yoursql':
- os => 'arch',
- enable => true,
- }
-
- class { '::dns':
- forwarders => [
- '8.8.8.8',
- '8.8.4.4',
- ],
- dnssec_enable => 'no',
- dnssec_validation => 'no',
- # allow_query_cache => [ 'localnets', ],
- allow_recursion => [ 'localnets', ],
- empty_zones_enable => 'no',
- acls => {
- slaves => [ '83.250.160.195', ],
- },
- config_check => false,
- manage_service => false,
- }
-
- $rev_zone = dns::reverse_dns($facts['networking']['network6'])[32,-1]
-
- dns::zone {
- default:
- manage_file => false,
- manage_file_name => true, ;
- 'hugo': ;
- 'hornquist.se':
- update_policy => {
- 'hornquist.se' => {
- action => 'grant',
- matchtype => 'zonesub',
- rr => 'ANY',
- }
- },
- ;
- 'adrift.space':
- update_policy => {
- 'hornquist.se' => {
- action => 'grant',
- matchtype => 'zonesub',
- rr => 'ANY',
- },
- 'hornquist.se' => {
- action => 'grant',
- matchtype => 'name',
- tname => 'dyntest.adrift.space',
- rr => 'TXT',
- },
- },
- allow_transfer => [ slaves, ], ;
- 'sub.adrift.space': ;
- '0.0.10.in-addr.arpa':
- reverse => true, ;
- '1.0.10.in-addr.arpa':
- reverse => true,
- zonetype => 'forward',
- forward => 'only',
- forwarders => [ '10.0.0.1', ], ;
- $rev_zone:
- reverse => true,
- ;
- }
-
- $key = lookup('nsupdate::secrets."hornquist.se"')
- dns::key { 'hornquist.se':
- algorithm => $key['algorithm'],
- secret => $key['secret'],
- }
-
- dns::logging::channel { 'xfer-log':
- log_type => 'file',
- file_path => '/var/log/named/log',
- print_category => 'yes',
- print_severity => 'yes',
- severity => 'info',
- file_size => '500K',
- file_versions => 5,
- }
-
- dns::logging::channel { 'default_syslog':
- log_type => 'syslog',
- syslog_facility => 'local2',
- severity => 'info',
- }
-
- dns::logging::category { [
- 'xfer-in',
- 'xfer-out',
- 'notify',
- ]:
- channels => [ 'xfer-log', ],
- }
-
-
- # TODO restart named
-
-
- profiles::remarkable { 'any name':
- addr => '3',
- }
+ include ::dns
+ include ::profiles::dns_zones
include ::profiles::common
include ::profiles::client
+ include ::networking
include ::losetup
- include ::profiles::xmonad
- include ::profiles::workstation
+ include ::profiles::workstation
+ include ::profiles::xmonad
include ::profiles::dolphin
include ::profiles::imagemagick
- systemd_mount { '/usr/net':
- what => 'elrond:/files',
- where => '/usr/net',
- wantedBy => 'remote-fs.target',
- automount => true,
- }
-
include ::profiles::syncthing
include ::profiles::gandalf_web
include ::profiles::transmission
include ::shiori
- profiles::webdav_server { '/dav':
- file_path => '/var/www/webdav',
- nginx_server => 'gandalf',
- users => lookup('profiles::webdav_server::users'),
- }
-
+ include ::profiles::webdav
}
node 'hornquist.se' {
diff --git a/modules/profiles/manifests/dns_zones.pp b/modules/profiles/manifests/dns_zones.pp
new file mode 100644
index 0000000..8e9edf8
--- /dev/null
+++ b/modules/profiles/manifests/dns_zones.pp
@@ -0,0 +1,12 @@
+class profiles::dns_zones (
+ Hash $zones,
+ Hash $default = {},
+) {
+ create_resources(dns::zone, $zones, $default)
+
+ $rev_zone = dns::reverse_dns($facts['networking']['network6'])[32,-1]
+ dns::zone { $rev_zone:
+ reverse => true,
+ }
+
+}
diff --git a/modules/profiles/manifests/webdav.pp b/modules/profiles/manifests/webdav.pp
new file mode 100644
index 0000000..88b2668
--- /dev/null
+++ b/modules/profiles/manifests/webdav.pp
@@ -0,0 +1,8 @@
+class profiles::webdav (
+ Hash[String,Hash] $servers,
+ Array[Array[String,2,2]] $users,
+) {
+ create_resources(webdav_server, $servers, {
+ users => $users
+ })
+}
diff --git a/modules/profiles/manifests/workstation.pp b/modules/profiles/manifests/workstation.pp
index 1e9fd3e..2e44016 100644
--- a/modules/profiles/manifests/workstation.pp
+++ b/modules/profiles/manifests/workstation.pp
@@ -144,4 +144,11 @@ class profiles::workstation {
ensure => link,
target => "/usr/share/zoneinfo/${timezone}",
}
+
+ systemd_mount { '/usr/net':
+ what => 'elrond:/files',
+ where => '/usr/net',
+ wantedBy => 'remote-fs.target',
+ automount => true,
+ }
}
diff --git a/modules/profiles/manifests/webdav_server.pp b/modules/webdav_server/manifests/init.pp
index 1471495..ff55c72 100644
--- a/modules/profiles/manifests/webdav_server.pp
+++ b/modules/webdav_server/manifests/init.pp
@@ -1,4 +1,4 @@
-define profiles::webdav_server (
+define webdav_server (
String $nginx_server,
String $file_path,
String $location = $name,