Puppet Class: designate::mdns

Inherits:
designate::params
Defined in:
manifests/mdns.pp

Overview

Class designate::mdns

Configure designate Mini DNS service

Parameters:

package_ensure

(Optional) The state of the package. Defaults to ‘present’.

mdns_package_name

(Optional) Name of the package containing mdns resources. Defaults to mdns_package_name from designate::params.

enabled

(Optional) Whether to enable services. Defaults to true.

manage_service

(Optional) Whether the designate mdns service will be managed. Defaults to true.

workers

(Optional) Number of mdns worker processes to spawn. Defaults to $facts.

threads

(Optional) Number of mdns greenthreads to spawn. Defaults to $facts.

tcp_backlog

(Optional) mDNS TCP Backlog. Defaults to $facts.

tcp_recv_timeout

(Optional) mDNS TCP Receive Timeout. Defaults to $facts.

all_tcp

(Optional) Send all traffic over TCP. Defaults to $facts.

query_enforce_tsig

(Optional) Enforce all incoming queries (including AXFR) are TSIG signed. Defaults to $facts.

storage_driver

(Optional) The storage driver to use. Defaults to $facts.

max_message_size

(Optional) Maximum message size to emit. Defaults to $facts.

listen

(Optional) mDNS host:port pairs to listen on. Defaults to $facts.

topic

(Optional) RPC topic name for mdns. Defaults to $facts.

xfr_timeout

(Optional) Timeout in seconds for XFR’s. Defaults to $facts.

Parameters:

  • package_ensure (Any) (defaults to: present)
  • mdns_package_name (Any) (defaults to: $::designate::params::mdns_package_name)
  • enabled (Any) (defaults to: true)
  • manage_service (Any) (defaults to: true)
  • workers (Any) (defaults to: $facts['os_workers'])
  • threads (Any) (defaults to: $facts['os_service_default'])
  • tcp_backlog (Any) (defaults to: $facts['os_service_default'])
  • tcp_recv_timeout (Any) (defaults to: $facts['os_service_default'])
  • all_tcp (Any) (defaults to: $facts['os_service_default'])
  • query_enforce_tsig (Any) (defaults to: $facts['os_service_default'])
  • storage_driver (Any) (defaults to: $facts['os_service_default'])
  • max_message_size (Any) (defaults to: $facts['os_service_default'])
  • listen (Any) (defaults to: $facts['os_service_default'])
  • topic (Any) (defaults to: $facts['os_service_default'])
  • xfr_timeout (Any) (defaults to: $facts['os_service_default'])


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
106
107
108
109
110
111
112
# File 'manifests/mdns.pp', line 67

class designate::mdns (
  $package_ensure     = present,
  $mdns_package_name  = $::designate::params::mdns_package_name,
  $enabled            = true,
  $manage_service     = true,
  $workers            = $facts['os_workers'],
  $threads            = $facts['os_service_default'],
  $tcp_backlog        = $facts['os_service_default'],
  $tcp_recv_timeout   = $facts['os_service_default'],
  $all_tcp            = $facts['os_service_default'],
  $query_enforce_tsig = $facts['os_service_default'],
  $storage_driver     = $facts['os_service_default'],
  $max_message_size   = $facts['os_service_default'],
  $listen             = $facts['os_service_default'],
  $topic              = $facts['os_service_default'],
  $xfr_timeout        = $facts['os_service_default'],
) inherits designate::params {

  include designate::deps
  include designate::db

  validate_legacy(Boolean, 'validate_bool', $manage_service)
  validate_legacy(Boolean, 'validate_bool', $enabled)

  designate_config {
    'service:mdns/workers'            : value => $workers;
    'service:mdns/threads'            : value => $threads;
    'service:mdns/tcp_backlog'        : value => $tcp_backlog;
    'service:mdns/tcp_recv_timeout'   : value => $tcp_recv_timeout;
    'service:mdns/all_tcp'            : value => $all_tcp;
    'service:mdns/query_enforce_tsig' : value => $query_enforce_tsig;
    'service:mdns/storage_driver'     : value => $storage_driver;
    'service:mdns/max_message_size'   : value => $max_message_size;
    'service:mdns/listen'             : value => join(any2array($listen), ',');
    'service:mdns/topic'              : value => $topic;
    'service:mdns/xfr_timeout'        : value => $xfr_timeout;
  }

  designate::generic_service { 'mdns':
    enabled        => $enabled,
    manage_service => $manage_service,
    package_ensure => $package_ensure,
    package_name   => $mdns_package_name,
    service_name   => $::designate::params::mdns_service_name,
  }
}