diff --git a/libraries/consul_config.rb b/libraries/consul_config.rb index f8fbe3e4..a4115aa6 100644 --- a/libraries/consul_config.rb +++ b/libraries/consul_config.rb @@ -73,6 +73,8 @@ class ConsulConfig < Chef::Resource attribute(:performance, kind_of: [Hash, Mash]) attribute(:ports, kind_of: [Hash, Mash]) attribute(:protocol, kind_of: String) + attribute(:raft_multiplier, kind_of: Integer) + attribute(:reap, equal_to: [true, false]) attribute(:reconnect_timeout, kind_of: String) attribute(:reconnect_timeout_wan, kind_of: String) attribute(:recursor, kind_of: String) @@ -81,8 +83,11 @@ class ConsulConfig < Chef::Resource attribute(:retry_interval, kind_of: String) attribute(:retry_interval_wan, kind_of: String) attribute(:retry_join, kind_of: Array) + attribute(:retry_join_ec2, kind_of: [Hash, Mash]) attribute(:retry_join_wan, kind_of: Array) attribute(:rejoin_after_leave, equal_to: [true, false], default: true) + attribute(:serf_lan_bind, kind_of: String) + attribute(:serf_wan_bind, kind_of: String) attribute(:server, equal_to: [true, false], default: true) attribute(:server_name, kind_of: String) attribute(:session_ttl_min, kind_of: String) @@ -107,7 +112,7 @@ class ConsulConfig < Chef::Resource # Transforms the resource into a JSON format which matches the # Consul service's configuration format. def to_json - for_keeps = %i{acl_datacenter acl_default_policy acl_down_policy acl_master_token acl_replication_token acl_token acl_ttl addresses advertise_addr advertise_addr_wan atlas_acl_token atlas_infrastructure atlas_join atlas_token atlas_endpoint bind_addr check_update_interval client_addr data_dir datacenter disable_anonymous_signature disable_compression disable_remote_exec disable_update_check dns_config domain enable_debug enable_syslog encrypt leave_on_terminate log_level node_name performance ports protocol reconnect_timeout reconnect_timeout_wan recursor recursor_timeout recursors retry_interval retry_interval_wan retry_join retry_join_wan rejoin_after_leave server server_name session_ttl_min skip_leave_on_interrupt start_join start_join_wan statsd_addr statsite_addr statsite_prefix telemetry syslog_facility translate_wan_addrs udp_answer_limit ui ui_dir verify_incoming verify_outgoing verify_server_hostname watches dev_mode unix_sockets} + for_keeps = %i{acl_datacenter acl_default_policy acl_down_policy acl_master_token acl_replication_token acl_token acl_ttl addresses advertise_addr advertise_addr_wan atlas_acl_token atlas_infrastructure atlas_join atlas_token atlas_endpoint bind_addr check_update_interval client_addr data_dir datacenter disable_anonymous_signature disable_compression disable_remote_exec disable_update_check dns_config domain enable_debug enable_syslog encrypt leave_on_terminate log_level node_name performance ports protocol reap reconnect_timeout reconnect_timeout_wan recursor recursor_timeout recursors retry_interval retry_interval_wan retry_join retry_join_ec2 retry_join_wan rejoin_after_leave serf_lan_bind serf_wan_bind server server_name session_ttl_min skip_leave_on_interrupt start_join start_join_wan statsd_addr statsite_addr statsite_prefix telemetry syslog_facility translate_wan_addrs udp_answer_limit ui ui_dir verify_incoming verify_outgoing verify_server_hostname watches dev_mode unix_sockets} for_keeps << %i{bootstrap bootstrap_expect} if server for_keeps << %i{ca_file cert_file key_file} if tls? for_keeps = for_keeps.flatten