Defined Type: graphdb::service

Defined in:
manifests/service.pp

Overview

Define: graphdb::service

Based on parameters passed defines init.d, systemd or upstart service

Parameters

ensure

Whether the service should exist. Possible values are present and absent.

status

What the state of the service must be. Possible values are enabled, disabled, running and unmanaged.

java_opts

Array of java options to give to GraphDB java process example: [ā€˜-Xmx1g’, ā€˜-Xms1g’]

kill_timeout

Time before force kill of GraphDB process. Instances with big repositories may time to flush on shutdown. default: 180

Parameters:

  • ensure (Any)
  • status (Any)
  • java_opts (Any) (defaults to: [])
  • kill_timeout (Any) (defaults to: 180)


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
# File 'manifests/service.pp', line 22

define graphdb::service($ensure, $status, $java_opts = [], $kill_timeout = 180) {
  require graphdb::params

  #### Service management

  # set params: in operation
  if $ensure == 'present' {

    case $status {
      # make sure service is currently running, start it on boot
      'enabled': {
        $service_ensure = 'running'
        $service_enable = true
      }
      # make sure service is currently stopped, do not start it on boot
      'disabled': {
        $service_ensure = 'stopped'
        $service_enable = false
      }
      # make sure service is currently running, do not start it on boot
      'running': {
        $service_ensure = 'running'
        $service_enable = false
      }
      # do not start service on boot, do not care whether currently running
      # or not
      'unmanaged': {
        $service_ensure = undef
        $service_enable = false
      }
      # unknown status
      # note: don't forget to update the parameter check in init.pp if you
      #       add a new or change an existing status.
      default: {
        fail("\"${status}\" is an unknown service status value")
      }
    }

  } else {
    $service_ensure = 'stopped'
    $service_enable = false
  }

  case $graphdb::params::service_providers {
    'init': {
      graphdb::service::init { $title:
        ensure         => $ensure,
        service_ensure => $service_ensure,
        service_enable => $service_enable,
        java_opts      => $java_opts,
      }
    }
    'upstart': {
      graphdb::service::upstart { $title:
        ensure         => $ensure,
        service_ensure => $service_ensure,
        service_enable => $service_enable,
        java_opts      => $java_opts,
        kill_timeout   => $kill_timeout,
      }
    }
    'systemd': {
      graphdb::service::systemd { $title:
        ensure         => $ensure,
        service_ensure => $service_ensure,
        service_enable => $service_enable,
        java_opts      => $java_opts,
        kill_timeout   => $kill_timeout,
      }
    }
    default: {
      fail("Unknown service provider ${graphdb::params::service_providers}")
    }

  }

}