class nodo::subsystem::media::folders( $cache = hiera('nodo::subsystem::media::folders::cache', directory), $owner = hiera('nodo::subsystem::media::folders::owner', false), $group = hiera('nodo::subsystem::media::folders::group', false) ) { # Removable media folder file { [ "/media/usb", "/media/cdrom", "/media/tablet", "/media/phone" ]: ensure => directory, mode => 0755, } # Media cache file { "/var/cache/media": ensure => $cache, mode => 0755, owner => $owner ? { false => undef, default => $owner, }, group => $group ? { false => undef, default => $group, }, } # Data folder is a cache file { "/var/data": ensure => "/var/cache/media", } # Hostname cache for general use file { "/var/cache/${::hostname}": ensure => directory, mode => 0755, } # Link to the media cache, useful to have unique remotes # for git-annex in removable media file { "/var/cache/${::hostname}/media": ensure => "/var/cache/media", } }