Puppet Class: mattermost

Inherits:
mattermost::params
Inherited by:
mattermost::config
mattermost::install
mattermost::service
Defined in:
manifests/init.pp

Overview

See README.md.

Parameters:

  • install_from_pkg (Any) (defaults to: $mattermost::params::install_from_pkg)
  • pkg (Any) (defaults to: $mattermost::params::pkg)
  • base_url (Any) (defaults to: $mattermost::params::base_url)
  • edition (Any) (defaults to: $mattermost::params::edition)
  • version (Any) (defaults to: $mattermost::params::version)
  • filename (Any) (defaults to: $mattermost::params::filename)
  • full_url (Any) (defaults to: $mattermost::params::full_url)
  • dir (Any) (defaults to: $mattermost::params::dir)
  • symlink (Any) (defaults to: $mattermost::params::symlink)
  • create_user (Any) (defaults to: $mattermost::params::create_user)
  • create_group (Any) (defaults to: $mattermost::params::create_group)
  • user (Any) (defaults to: $mattermost::params::user)
  • group (Any) (defaults to: $mattermost::params::group)
  • uid (Any) (defaults to: $mattermost::params::uid)
  • gid (Any) (defaults to: $mattermost::params::gid)
  • conf (Any) (defaults to: $mattermost::params::conf)
  • override_options (Any) (defaults to: $mattermost::params::override_options)
  • env_conf (Any) (defaults to: $mattermost::params::env_conf)
  • override_env_options (Any) (defaults to: $mattermost::params::override_env_options)
  • manage_data_dir (Any) (defaults to: $mattermost::params::manage_data_dir)
  • manage_log_dir (Any) (defaults to: $mattermost::params::manage_log_dir)
  • depend_service (Any) (defaults to: $mattermost::params::depend_service)
  • install_service (Any) (defaults to: $mattermost::params::install_service)
  • manage_service (Any) (defaults to: $mattermost::params::manage_service)
  • service_name (Any) (defaults to: $mattermost::params::service_name)
  • service_template (Any) (defaults to: $mattermost::params::service_template)
  • service_path (Any) (defaults to: $mattermost::params::service_path)
  • service_provider (Any) (defaults to: $mattermost::params::service_provider)
  • purge_conf (Any) (defaults to: $mattermost::params::purge_conf)
  • purge_env_conf (Any) (defaults to: $mattermost::params::purge_env_conf)


2
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# File 'manifests/init.pp', line 2

class mattermost (
  $install_from_pkg     = $mattermost::params::install_from_pkg,
  $pkg                  = $mattermost::params::pkg,
  $base_url             = $mattermost::params::base_url,
  $edition              = $mattermost::params::edition,
  $version              = $mattermost::params::version,
  $filename             = $mattermost::params::filename,
  $full_url             = $mattermost::params::full_url,
  $dir                  = $mattermost::params::dir,
  $symlink              = $mattermost::params::symlink,
  $create_user          = $mattermost::params::create_user,
  $create_group         = $mattermost::params::create_group,
  $user                 = $mattermost::params::user,
  $group                = $mattermost::params::group,
  $uid                  = $mattermost::params::uid,
  $gid                  = $mattermost::params::gid,
  $conf                 = $mattermost::params::conf,
  $override_options     = $mattermost::params::override_options,
  $env_conf             = $mattermost::params::env_conf,
  $override_env_options = $mattermost::params::override_env_options,
  $manage_data_dir      = $mattermost::params::manage_data_dir,
  $manage_log_dir       = $mattermost::params::manage_log_dir,
  $depend_service       = $mattermost::params::depend_service,
  $install_service      = $mattermost::params::install_service,
  $manage_service       = $mattermost::params::manage_service,
  $service_name         = $mattermost::params::service_name,
  $service_template     = $mattermost::params::service_template,
  $service_path         = $mattermost::params::service_path,
  $service_provider     = $mattermost::params::service_provider,
  $purge_conf           = $mattermost::params::purge_conf,
  $purge_env_conf       = $mattermost::params::purge_env_conf,
) inherits mattermost::params {
  validate_bool($install_from_pkg)
  validate_string($pkg)
  validate_string($base_url)
  validate_re($edition,['^team$','^enterprise$'])
  validate_string($version)
  validate_string($filename)
  validate_string($full_url)
  validate_absolute_path($dir)
  validate_absolute_path($symlink)
  validate_bool($create_user)
  validate_bool($create_group)
  validate_string($user)
  validate_string($group)
  validate_integer($uid)
  validate_integer($gid)
  validate_string($conf)
  validate_string($env_conf)
  validate_hash($override_options)
  validate_hash($override_env_options)
  validate_bool($manage_data_dir)
  validate_string($depend_service)
  validate_bool($install_service)
  validate_bool($manage_service)
  validate_string($service_name)
  validate_string($service_template)
  validate_string($service_path)
  validate_bool($purge_conf)
  validate_bool($purge_env_conf)
  if $override_env_options['MM_FILESETTINGS_DIRECTORY'] {
    $data_dir = $override_env_options['MM_FILESETTINGS_DIRECTORY']
    validate_absolute_path($data_dir)
  }
  elsif $override_options['FileSettings'] {
    if $override_options['FileSettings']['Directory'] {
      $data_dir = $override_options['FileSettings']['Directory']
      validate_absolute_path($data_dir)
    }
    else {
      $data_dir = undef
    }
  }
  else {
    $data_dir = undef
  }
  if $override_env_options['MM_LOGSETTINGS_FILELOCATION'] {
    $log_dir = $override_env_options['MM_LOGSETTINGS_FILELOCATION']
    validate_absolute_path($log_dir)
  }
  elsif $override_options['LogSettings'] {
    if $override_options['LogSettings']['FileLocation'] {
      $log_dir = $override_options['LogSettings']['FileLocation']
      validate_absolute_path($log_dir)
    }
    else {
      $log_dir = undef
    }
  }
  else {
    $log_dir = undef
  }
  if versioncmp($version, '5.0.0') >= 0 {
    $executable = 'mattermost'
  }
  else {
    $executable = 'platform'
  }
  anchor { 'mattermost::begin': }
  -> class { '::mattermost::install': }
  -> class { '::mattermost::config': }
  ~> class { '::mattermost::service': }
  -> anchor { 'mattermost::end': }
}