| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
edit_hash is similar to edit_data except that it returns an uninflated
hash. edit_data returns either a string/IO, a hash, or a full ruby
object, making it difficult to work with.
|
|\
| |
| | |
Update knife missing gem message for ChefDK
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Knife now gives an error message like this when an SSL error occurs:
```
ERROR: Could not establish a secure connection to the server.
Use `knife ssl check` to troubleshoot your SSL configuration.
If your Chef Server uses a self-signed certificate, you can use
`knife ssl fetch` to make knife trust the server's certificates.
Original Exception: OpenSSL::SSL::SSLError: SSL_connect returned=1
errno=0 state=SSLv3 read server certificate B: certificate verify failed
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Unreleased Chef 12.0.0 bug caught in testing where only the searching
upwards from PWD to find .chef in order to get the plugin path for knife
was busted. The chef_config_dir was being used before load_config was
being called, so it was nil, which broke finding knife plugins. This
was fixed by adding some lazy initialization of the config_loader object
itself and the chef_config_dir.
The reset_config_loader! is added entirely to reset the global state for unit
testing. This whole class is a bit horrible and needs to have all its
global state removed from it, class methods removed, class ivars and the
class-variable-in-a-class-method-for-inheritance-lolwut needs to be removed.
Unfortunately, that requires some delicate surgery because Chef::Knife
gets used as a public API, and is beyond the scope of gettting Chef 12
shipped.
|
| |
|
| |
|
|
|
|
|
|
|
| |
To resolve a chicken/egg issue with the logger being configured *after*
the config is located and read, knife will now check for a KNIFE_DEBUG
variable and initialize the logger to debug early in the startup process
when that variable is set.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Fixes CHEF-4711
|
| |
|
|
|
|
| |
Also the associated test is removed as I am not sure how it should be fixed.
|
| |
|
| |
|
|
|
|
|
| |
* Uses Chef::HTTP::Simple rather than Chef::REST to fetch files
* Re-use error handling logic in ConfigFetcher
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
If a Knife subcommand class were inheriting or including other classes
with lazy loading dependencies, a later call to `Knife.deps` overwrote
the earlier block. Fix it by collecting the blocks to an array.
|
| |
|
|
|
|
|
|
|
|
|
| |
Takes advantage of new mixlib-cli option to keep default values from the
mixlib-cli DSL separate from user-supplied values. Config settings are
merged:
1. Defaults from mixlib-cli DSL
2. Settings from Chef::Config[:knife]
3. Values from CLI options
|
|
|
|
|
|
| |
Config changes a ton of global state and is based on the state of the
machine it runs on (most importantly, the user's config file). Running
configure_chef in the initializer makes unit tests extremely fragile
|
| |
|
|
|
|
| |
configuring
|
| |
|
|
|
|
|
|
| |
Prefer ENV["PWD"] for current working dir, but fall back to Dir.pwd if
not set. Fixes config path searching when part of the path hierarchy is
a symlinked directory.
|
|
The opscode/chef repository now only contains the core Chef library code
used by chef-client, knife and chef-solo!
|