diff options
author | Tim Smith <tsmith@chef.io> | 2019-05-06 11:46:42 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-06 11:46:42 -0700 |
commit | c23a9d65f4bf5aba2fe7cf384e04f7703631fb0b (patch) | |
tree | ae33e0ce0c34a20834f8dfdc3083ecb49015159b /lib/chef/application | |
parent | 3ba19c97144832d44a1e77c3183b8b8c9b46f004 (diff) | |
parent | 2b12cda0693ad20780156d35a5ae316a90c5174b (diff) | |
download | chef-c23a9d65f4bf5aba2fe7cf384e04f7703631fb0b.tar.gz |
Merge pull request #7758 from chef/btm/target-mode
Initial target_mode implementation
Diffstat (limited to 'lib/chef/application')
-rw-r--r-- | lib/chef/application/client.rb | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/lib/chef/application/client.rb b/lib/chef/application/client.rb index 31932b812c..2c63a54f33 100644 --- a/lib/chef/application/client.rb +++ b/lib/chef/application/client.rb @@ -301,6 +301,15 @@ class Chef::Application::Client < Chef::Application description: "Use cached cookbooks without overwriting local differences from the #{Chef::Dist::SERVER_PRODUCT}.", boolean: false + option :target, + short: "-t TARGET", + long: "--target TARGET", + description: "Target #{Chef::Dist::PRODUCT} against a remote system or device", + proc: lambda { |target| + Chef::Log.warn "-- EXPERIMENTAL -- Target mode activated, resources and dsl may change without warning -- EXPERIMENTAL --" + target + } + IMMEDIATE_RUN_SIGNAL = "1".freeze RECONFIGURE_SIGNAL = "H".freeze @@ -351,6 +360,12 @@ class Chef::Application::Client < Chef::Application Chef::Config.chef_zero.host = config[:chef_zero_host] if config[:chef_zero_host] Chef::Config.chef_zero.port = config[:chef_zero_port] if config[:chef_zero_port] + if config[:target] || Chef::Config.target + Chef::Config.target_mode.enabled = true + Chef::Config.target_mode.host = config[:target] || Chef::Config.target + Chef::Config.node_name = Chef::Config.target_mode.host unless Chef::Config.node_name + end + if Chef::Config[:daemonize] Chef::Config[:interval] ||= 1800 end |