diff options
Diffstat (limited to 'manifests')
-rw-r--r-- | manifests/file.pp | 38 | ||||
-rw-r--r-- | manifests/init.pp | 2 | ||||
-rw-r--r-- | manifests/params.pp | 9 |
3 files changed, 36 insertions, 13 deletions
diff --git a/manifests/file.pp b/manifests/file.pp index ec67f2c..3628188 100644 --- a/manifests/file.pp +++ b/manifests/file.pp @@ -2,18 +2,37 @@ # # Parameters: # +# [*ensure*]: file type, default file. +# [*owner*]: file owner, default tftp. +# [*group*]: file group. default tftp. +# [*mode*]: file mode, default 0644 (puppet will change to 0755 for directories). +# [*content*]: file content. +# [*source*]: file source, defaults to puppet*]:///module/${caller_module_name}/${name} for files without content. +# [*recurse*]: directory recurse, default false. +# [*purge*]: directory recurse and purge. +# [*replace*]: replace directory with file or symlink, default undef, +# [*recurselimit*]: directory recurse limit, default undef, +# # Actions: # -# Requires: +# Deploy files into the tftp directory. # # Usage: # +# tftp::file { 'pxelinux.0': +# source => 'puppet:///modules/acme/pxelinux.0', +# } +# +# tftp::file { 'pxelinux.cfg': +# ensure => directory, +# } +# define tftp::file ( $ensure = file, - $recurse = false, $owner = 'tftp', $group = 'tftp', $mode = '0644', + $recurse = false, $purge = undef, $replace = undef, $recurselimit = undef, @@ -22,17 +41,28 @@ define tftp::file ( ) { include 'tftp' + if $source { + $source_real = $source + } elsif $ensure != 'directory' and ! $content { + if $caller_module_name { + $mod = $caller_module_name + } else { + $mod = $module_name + } + $source_real = "puppet:///modules/${mod}/${name}" + } + file { "${tftp::directory}/${name}": ensure => $ensure, - recurse => $recurse, owner => $owner, group => $group, mode => $mode, + recurse => $recurse, purge => $purge, replace => $replace, recurselimit => $recurselimit, content => $content, - source => $source, + source => $source_real, require => Class['tftp'], } } diff --git a/manifests/init.pp b/manifests/init.pp index 13954b5..9dfab37 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -18,7 +18,7 @@ # # Usage: # -# class tftp { +# class { 'tftp': # directory => '/opt/tftp', # address => $::ipaddress, # options => '--ipv6 --timeout 60', diff --git a/manifests/params.pp b/manifests/params.pp index 564e0f2..e658184 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -1,13 +1,6 @@ # Class: tftp::params # -# Parameters: -# -# Actions: -# -# Requires: -# -# Usage: -# +# TFTP class parameters. class tftp::params { $address = '0.0.0.0' $port = '69' |