Class: Ansible::Ruby::Modules::Consul

Inherits:
Base show all
Defined in:
lib/ansible/ruby/modules/generated/clustering/consul.rb

Overview

Registers services and checks for an agent with a consul cluster. A service is some process running on the agent node that should be advertised by consul’s discovery mechanism. It may optionally supply a check definition, a periodic service test to notify the consul cluster of service’s health. Checks may also be registered per node e.g. disk usage, or cpu usage and notify the health of the entire node to the cluster. Service level checks do not require a check name or id as these are derived by Consul from the Service name and id respectively by appending ‘service:’ Node level checks require a check_name and optionally a check_id. Currently, there is no complete way to retrieve the script, interval or ttl metadata for a registered check. Without this metadata it is not possible to tell if the data supplied with ansible represents a change to a check. As a result this does not attempt to determine changes and will always report a changed occurred. An api method is planned to supply this metadata so at that stage change management will be added. See consul.io for more details.

Instance Method Summary collapse

Methods inherited from Base

#ansible_name, #to_h

Methods inherited from Ansible::Ruby::Models::Base

attr_option, attr_options, attribute, fix_inclusion, #initialize, remove_existing_validations, #to_h, validates

Constructor Details

This class inherits a constructor from Ansible::Ruby::Models::Base

Instance Method Details

#check_idString?



66
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 66

attribute :check_id

#check_nameString?



70
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 70

attribute :check_name

#hostString?



27
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 27

attribute :host

#httpString?



77
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 77

attribute :http

#intervalString?



62
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 62

attribute :interval

#notesObject?



43
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 43

attribute :notes

#portInteger?



31
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 31

attribute :port

#schemeString?



35
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 35

attribute :scheme

#scriptString?



58
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 58

attribute :script

#service_addressString?



50
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 50

attribute :service_address

#service_idString?



23
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 23

attribute :service_id

#service_nameString?



19
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 19

attribute :service_name

#service_portInteger?



46
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 46

attribute :service_port

#state:present, :absent



15
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 15

attribute :state

#tagsArray<String>, ...



54
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 54

attribute :tags

#timeoutObject?



81
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 81

attribute :timeout

#tokenObject?



84
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 84

attribute :token

#ttlObject?



74
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 74

attribute :ttl

#validate_certs:yes, ...



39
# File 'lib/ansible/ruby/modules/generated/clustering/consul.rb', line 39

attribute :validate_certs