From 2dcdfee9a788149f5a0b80002d49a4fea3829135 Mon Sep 17 00:00:00 2001 From: Gavin Heavyside Date: Sat, 31 May 2014 15:13:17 +0100 Subject: [PATCH] -config-dir for service definitions Defaults to /etc/config.d --- README.md | 6 ++++++ attributes/default.rb | 1 + metadata.rb | 2 +- recipes/service.rb | 3 +++ templates/default/consul-init.erb | 2 +- 5 files changed, 12 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 4ecf5d5a..2ebff2a3 100644 --- a/README.md +++ b/README.md @@ -52,6 +52,12 @@ Ubuntu 12.04, 14.04 Location to store consul's data in /var/lib/consul + + ['consul']['config_dir'] + String + Location to read service definitions from (directoy will be created) + /etc/consul.d + ['consul']['servers'] Array Strings diff --git a/attributes/default.rb b/attributes/default.rb index cd52bd90..624efafb 100644 --- a/attributes/default.rb +++ b/attributes/default.rb @@ -36,6 +36,7 @@ # Service attributes default[:consul][:service_mode] = 'bootstrap' default[:consul][:data_dir] = '/var/lib/consul' +default[:consul][:config_dir] = '/etc/consul.d' default[:consul][:servers] = [] # UI attributes diff --git a/metadata.rb b/metadata.rb index ca059352..4ce59b30 100644 --- a/metadata.rb +++ b/metadata.rb @@ -4,7 +4,7 @@ license 'Apache v2.0' description 'Installs/Configures consul' long_description 'Installs/Configures consul' -version '0.2.0' +version '0.2.2' recipe 'consul', 'Installs and starts consul service.' recipe 'consul::binary_install', 'Installs consul service from binary.' diff --git a/recipes/service.rb b/recipes/service.rb index b9137bd1..4826533d 100644 --- a/recipes/service.rb +++ b/recipes/service.rb @@ -17,12 +17,15 @@ service_params = "#{service_params} -ui-dir #{node[:consul][:ui_dir]}/consul_ui -client #{node[:consul][:client_addr]}" end +directory node[:consul][:config_dir] + template '/etc/init.d/consul' do source 'consul-init.erb' mode 0755 variables( consul_binary: "#{node[:consul][:install_dir]}/consul", data_dir: node[:consul][:data_dir], + config_dir: node[:consul][:config_dir], service_params: service_params ) end diff --git a/templates/default/consul-init.erb b/templates/default/consul-init.erb index 07fa6911..92262d5d 100644 --- a/templates/default/consul-init.erb +++ b/templates/default/consul-init.erb @@ -14,7 +14,7 @@ # * Multi Datacenter ### END INIT INFO -CMD="<%= @consul_binary %> agent <%= @service_params %> -data-dir <%= @data_dir %>" +CMD="<%= @consul_binary %> agent <%= @service_params %> -data-dir <%= @data_dir %> -config-dir <%= @config_dir %>" NAME="consul" PIDFILE="/var/run/$NAME.pid"