Adds configurable default HTTP client for Chef Server communication. This prevents the need for us to thread chef_config all over the place in ChefDK and makes the cookbook omnifetch abstraction less leaky from that side.
Fixes the lock data for the Chef Server Artifact Location--the lock data emitted needs to be "round-trip-able" such that feeding it to CookbookOmnifetch.init will return the same location object type. If not, chef install with a lockfile present will error out trying to locate/install the cookbook
Implement #cached_cookbook for Chef Server and Chef Server Artifact locations -- this is invoked when cookbooks must be "pre-fetched" in order to feed the correct constraints to the solver, such as when there's a cookbook "foo", options line in the Policyfile.rb.
chef_config
all over the place in ChefDK and makes the cookbook omnifetch abstraction less leaky from that side.CookbookOmnifetch.init
will return the same location object type. If not,chef install
with a lockfile present will error out trying to locate/install the cookbook#cached_cookbook
for Chef Server and Chef Server Artifact locations -- this is invoked when cookbooks must be "pre-fetched" in order to feed the correct constraints to the solver, such as when there's acookbook "foo", options
line in the Policyfile.rb.