summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chef-config/lib/chef-config/config.rb3
-rw-r--r--lib/chef/application/solo.rb4
2 files changed, 7 insertions, 0 deletions
diff --git a/chef-config/lib/chef-config/config.rb b/chef-config/lib/chef-config/config.rb
index 2187787c5e..b9fec3230c 100644
--- a/chef-config/lib/chef-config/config.rb
+++ b/chef-config/lib/chef-config/config.rb
@@ -493,6 +493,9 @@ module ChefConfig
# A directory that contains additional configuration scripts to load for chef-client
default(:client_d_dir) { PathHelper.join(config_dir, "client.d") }
+ # A directory that contains additional configuration scripts to load for solo
+ default(:solo_d_dir) { PathHelper.join(config_dir, "solo.d") }
+
# A directory that contains additional configuration scripts to load for
# the workstation config
default(:conf_d_dir) { PathHelper.join(config_dir, "conf.d") }
diff --git a/lib/chef/application/solo.rb b/lib/chef/application/solo.rb
index 3917a080b9..a39546092e 100644
--- a/lib/chef/application/solo.rb
+++ b/lib/chef/application/solo.rb
@@ -27,9 +27,11 @@ require "chef/config_fetcher"
require "fileutils"
require "chef/mixin/shell_out"
require "pathname"
+require "chef-config/mixin/dot_d"
class Chef::Application::Solo < Chef::Application
include Chef::Mixin::ShellOut
+ include ChefConfig::Mixin::DotD
option :config_file,
:short => "-c CONFIG",
@@ -207,6 +209,8 @@ class Chef::Application::Solo < Chef::Application
def reconfigure
super
+ load_dot_d(Chef::Config[:solo_d_dir]) if Chef::Config[:solo_d_dir]
+
set_specific_recipes
Chef::Config[:solo] = true