File: worker.pp

package info (click to toggle)
puppet-module-vmms 1.0.1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 172 kB
  • sloc: ruby: 89; makefile: 11; sh: 10; python: 5
file content (92 lines) | stat: -rw-r--r-- 2,861 bytes parent folder | download
1
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
# == Class: vmms::worker
#
# Installs & configure theVMMS worker
#
# === Parameters
# [*package_ensure*]
#    (Optional) Ensure state for package.
#    Defaults to present
#
# [*enabled*]
#   (optional) Should the service be enabled.
#   Defaults to 'true'.
#
# [*manage_service*]
#   (optional) Whether the service should be managed by Puppet.
#   Defaults to 'true'.
#
# [*coordination_url*]
#   Defaults to $facts['os_service_default'].
#
# [*mistral_use_keystone_auth*]
#   Defaults to $facts['os_service_default'].
#
# [*my_hostname*]
#   Defaults to $facts['os_service_default'].
#
# [*parallel_jobs*]
#   Defaults to $facts['os_service_default'].
#
# [*check_interval*]
#   Defaults to $facts['os_service_default'].
#
# [*migration_start_time*]
#   Defaults to $facts['os_service_default'].
#
# [*migration_end_time*]
#   Defaults to $facts['os_service_default'].
#
# [*mistral_workflow_name*]
#   Defaults to $facts['os_service_default'].
#
class vmms::worker (
  $package_ensure                       = present,
  Boolean $manage_service               = true,
  Boolean $enabled                      = true,
  $coordination_url                     = $facts['os_service_default'],
  $mistral_use_keystone_auth            = $facts['os_service_default'],
  $my_hostname                          = $facts['os_service_default'],
  $parallel_jobs                        = $facts['os_service_default'],
  $check_interval                       = $facts['os_service_default'],
  $migration_start_time                 = $facts['os_service_default'],
  $migration_end_time                   = $facts['os_service_default'],
  $mistral_workflow_name                = $facts['os_service_default'],
) {

  include vmms::deps
  include vmms::params

  package { 'vmms-worker':
    ensure => $package_ensure,
    name   => $::vmms::params::worker_package_name,
    tag    => ['openstack', 'vmms-package'],
  }

  if $manage_service {
    if $enabled {
      $service_ensure = 'running'
    } else {
      $service_ensure = 'stopped'
    }

    service { 'vmms-worker':
      ensure     => $service_ensure,
      name       => $::vmms::params::worker_service_name,
      enable     => $enabled,
      hasstatus  => true,
      hasrestart => true,
      tag        => 'vmms-service',
    }
  }

  vmms_config {
    'worker/coordination_url':          value => $coordination_url;
    'worker/mistral_use_keystone_auth': value => $mistral_use_keystone_auth;
    'worker/my_hostname':               value => $my_hostname;
    'worker/parallel_jobs':             value => $parallel_jobs;
    'worker/check_interval':            value => $check_interval;
    'worker/migration_start_time':      value => $migration_start_time;
    'worker/migration_end_time':        value => $migration_end_time;
    'worker/mistral_workflow_name':     value => $mistral_workflow_name;
  }
}