Puppet Class: psick::docker::host

Defined in:
manifests/docker/host.pp

Overview

Parameters:

  • ensure (Variant[Boolean,String]) (defaults to: present)
  • instances (Hash) (defaults to: {})
  • repository_tag (Variant[Undef,String]) (defaults to: 'latest')
  • exec_environment (Variant[Undef,Array]) (defaults to: [])
  • exec_logoutput (Variant[Boolean,Pattern[/on_failure/]]) (defaults to: 'on_failure')
  • run_mode (Pattern[/command|service/]) (defaults to: 'service')
  • run_options (String) (defaults to: '')
  • mount_data_dir (Boolean) (defaults to: true)
  • mount_log_dir (Boolean) (defaults to: true)
  • manage (Boolean) (defaults to: $::psick::manage)
  • noop_manage (Boolean) (defaults to: $::psick::noop_manage)
  • noop_value (Boolean) (defaults to: $::psick::noop_value)


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
# File 'manifests/docker/host.pp', line 2

class psick::docker::host (

  Variant[Boolean,String] $ensure              = present,
  Hash                    $instances           = {},

  Variant[Undef,String]   $repository_tag      = 'latest',

  Variant[Undef,Array]    $exec_environment    = [],
  Variant[Boolean,Pattern[/on_failure/]] $exec_logoutput = 'on_failure',

  Pattern[/command|service/] $run_mode         = 'service',
  String                  $run_options         = '',

  Boolean                 $mount_data_dir      = true,
  Boolean                 $mount_log_dir       = true,

  Boolean                $manage               = $::psick::manage,
  Boolean                $noop_manage          = $::psick::noop_manage,
  Boolean                $noop_value           = $::psick::noop_value,
) {

  if $manage {
    if $noop_manage {
      noop($noop_value)
    }

    include ::psick::docker

    $instances.each |$instance,$opts| {

      psick::docker::run { $instance:
        ensure           => pick_default($opts['ensure'],$ensure),
        image            => pick_default($opts['image'],''),
        username         => pick_default($opts['username'],$::psick::docker::username),
        repository       => pick_default($opts['repository'],$instance),
        repository_tag   => pick_default($opts['repository_tag'],$repository_tag),
        exec_environment => pick_default($opts['exec_environment'],$exec_environment),
        exec_logoutput   => pick_default($opts['exec_logoutput'],$exec_logoutput),
        run_mode         => pick_default($opts['run_mode'],$run_mode),
        run_options      => pick_default($opts['run_options'],$run_options),
        mount_data_dir   => pick_default($opts['mount_data_dir'],$mount_data_dir),
        mount_log_dir    => pick_default($opts['mount_log_dir'],$mount_log_dir),
      }
    }
  }
}