Puppet Class: proftpd

Inherits:
proftpd::params
Defined in:
manifests/init.pp

Overview

Class proftpd

Parameters:

  • config_template (Any) (defaults to: $::proftpd::params::config_template)
  • default_config (Any) (defaults to: $::proftpd::params::default_config)
  • manage_config_file (Any) (defaults to: $::proftpd::params::manage_config_file)
  • package_ensure (Any) (defaults to: $::proftpd::params::package_ensure)
  • package_manage (Any) (defaults to: $::proftpd::params::package_manage)
  • service_manage (Any) (defaults to: $::proftpd::params::service_manage)
  • service_enable (Any) (defaults to: $::proftpd::params::service_enable)
  • service_ensure (Any) (defaults to: $::proftpd::params::service_ensure)
  • prefix (Any) (defaults to: $::proftpd::params::prefix)
  • prefix_bin (Any) (defaults to: $::proftpd::params::prefix_bin)
  • config (Any) (defaults to: $::proftpd::params::config)
  • base_dir (Any) (defaults to: $::proftpd::params::base_dir)
  • log_dir (Any) (defaults to: $::proftpd::params::log_dir)
  • run_dir (Any) (defaults to: $::proftpd::params::run_dir)
  • packages (Any) (defaults to: $::proftpd::params::packages)
  • service_name (Any) (defaults to: $::proftpd::params::service_name)
  • user (Any) (defaults to: $::proftpd::params::user)
  • group (Any) (defaults to: $::proftpd::params::group)
  • pidfile (Any) (defaults to: $::proftpd::params::pidfile)
  • scoreboardfile (Any) (defaults to: $::proftpd::params::scoreboardfile)
  • anonymous_options (Any) (defaults to: $::proftpd::params::anonymous_options)
  • anonymous_enable (Any) (defaults to: $::proftpd::params::anonymous_enable)
  • default_options (Any) (defaults to: $::proftpd::params::default_options)
  • load_modules (Any) (defaults to: $::proftpd::params::load_modules)
  • options (Any) (defaults to: $::proftpd::params::options)
  • authuserfile_source (Any) (defaults to: $::proftpd::params::authuserfile_source)
  • authgroupfile_source (Any) (defaults to: $::proftpd::params::authgroupfile_source)


3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# File 'manifests/init.pp', line 3

class proftpd (
  # module parameters
  $config_template      = $::proftpd::params::config_template,
  $default_config       = $::proftpd::params::default_config,
  $manage_config_file   = $::proftpd::params::manage_config_file,
  $package_ensure       = $::proftpd::params::package_ensure,
  $package_manage       = $::proftpd::params::package_manage,
  $service_manage       = $::proftpd::params::service_manage,
  $service_enable       = $::proftpd::params::service_enable,
  $service_ensure       = $::proftpd::params::service_ensure,
  # os-specific parameters
  $prefix               = $::proftpd::params::prefix,
  $prefix_bin           = $::proftpd::params::prefix_bin,
  $config               = $::proftpd::params::config,
  $base_dir             = $::proftpd::params::base_dir,
  $log_dir              = $::proftpd::params::log_dir,
  $run_dir              = $::proftpd::params::run_dir,
  $packages             = $::proftpd::params::packages,
  $service_name         = $::proftpd::params::service_name,
  $user                 = $::proftpd::params::user,
  $group                = $::proftpd::params::group,
  $pidfile              = $::proftpd::params::pidfile,
  $scoreboardfile       = $::proftpd::params::scoreboardfile,
  # proftpd configuration
  $anonymous_options    = $::proftpd::params::anonymous_options,
  $anonymous_enable     = $::proftpd::params::anonymous_enable,
  $default_options      = $::proftpd::params::default_options,
  $load_modules         = $::proftpd::params::load_modules,
  $options              = $::proftpd::params::options,
  $authuserfile_source  = $::proftpd::params::authuserfile_source,
  $authgroupfile_source = $::proftpd::params::authgroupfile_source,
) inherits proftpd::params {

  include stdlib

  # simple validation
  validate_bool($anonymous_enable)
  validate_hash($anonymous_options)
  validate_string($config_template)
  validate_bool($default_config)
  validate_hash($default_options)
  validate_hash($load_modules)
  validate_bool($manage_config_file)
  validate_hash($options)
  validate_array($packages)
  validate_bool($package_manage)
  validate_string($package_ensure)
  validate_bool($service_manage)
  validate_string($service_name)
  validate_bool($service_enable)
  validate_string($service_ensure)

  # resource relationships
  class { '::proftpd::install': } ->
  class { '::proftpd::config': } ~>
  class { '::proftpd::service': }

  if $::proftpd::load_modules {
    create_resources(proftpd::module, $load_modules, {})
  }
}