File: healthcheck.pp

package info (click to toggle)
puppet-module-oslo 25.0.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 976 kB
  • sloc: ruby: 2,304; python: 38; makefile: 10; sh: 10
file content (65 lines) | stat: -rw-r--r-- 2,672 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
# == Define: oslo::healthcheck
#
# Configure oslo_middleware options in healthcheck section
#
# === Parameters:
#
# [*detailed*]
#   (Optional) Show more detailed information as part of the response.
#   Defaults to $facts['os_service_default']
#
# [*backends*]
#   (Optional) Additional backends that can perform health checks and report
#   that information back as part of a request.
#   Defaults to $facts['os_service_default']
#
# [*allowed_source_ranges*]
#   (Optional) A list of network addresses to limit source ip allowed to access
#   healthcheck information.
#   Defaults to $facts['os_service_default']
#
# [*ignore_proxied_requests*]
#   (Optional) Ignore requests with proxy headers
#   Defaults to $facts['os_service_default']
#
# [*disable_by_file_path*]
#   (Optional) Check the presence of a file to determine if an application
#   is running on a port.
#   Defaults to $facts['os_service_default']
#
# [*disable_by_file_paths*]
#   (Optional) Check the presence of a file to determine if an application
#   is running on a port. Expects a "port:path" list of strings.
#   Defaults to $facts['os_service_default']
#
# [*enable_by_file_paths*]
#   (Optional) Check the presence of files. Used by EnableByFilesHealthcheck
#   plugin.
#   Defaults to $facts['os_service_default']
#
define oslo::healthcheck(
  $detailed                = $facts['os_service_default'],
  $backends                = $facts['os_service_default'],
  $allowed_source_ranges   = $facts['os_service_default'],
  $ignore_proxied_requests = $facts['os_service_default'],
  $disable_by_file_path    = $facts['os_service_default'],
  $disable_by_file_paths   = $facts['os_service_default'],
  $enable_by_file_paths    = $facts['os_service_default'],
) {

  $backends_real = join(any2array($backends), ',')
  $allowed_source_ranges_real = join(any2array($allowed_source_ranges), ',')
  $disable_by_file_paths_real = join(any2array($disable_by_file_paths), ',')
  $enable_by_file_paths_real = join(any2array($enable_by_file_paths), ',')

  $healthcheck_options = {
    'healthcheck/detailed'                => { value => $detailed },
    'healthcheck/backends'                => { value => $backends_real },
    'healthcheck/allowed_source_ranges'   => { value => $allowed_source_ranges_real },
    'healthcheck/ignore_proxied_requests' => { value => $ignore_proxied_requests },
    'healthcheck/disable_by_file_path'    => { value => $disable_by_file_path },
    'healthcheck/disable_by_file_paths'   => { value => $disable_by_file_paths_real },
    'healthcheck/enable_by_file_paths'    => { value => $enable_by_file_paths_real },
  }
  create_resources($name, $healthcheck_options)
}