diff options
author | danielsdeleo <dan@opscode.com> | 2013-05-22 16:36:04 -0700 |
---|---|---|
committer | danielsdeleo <dan@opscode.com> | 2013-05-23 12:59:13 -0700 |
commit | e94e935e0ce206216e518ce5c4c3e3e509d14e3e (patch) | |
tree | 6a5fb3a148d8a42f701b2a3ab3cea397a063a4d8 /lib/chef/provider/remote_file | |
parent | e3a3346bd6082493f192f94d2f3c0f4b92c7c862 (diff) | |
download | chef-e94e935e0ce206216e518ce5c4c3e3e509d14e3e.tar.gz |
ensure HTTP backend sets cksum on cache control data
Diffstat (limited to 'lib/chef/provider/remote_file')
-rw-r--r-- | lib/chef/provider/remote_file/http.rb | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/chef/provider/remote_file/http.rb b/lib/chef/provider/remote_file/http.rb index 4ae8cb49e8..855041f91e 100644 --- a/lib/chef/provider/remote_file/http.rb +++ b/lib/chef/provider/remote_file/http.rb @@ -18,6 +18,7 @@ # require 'chef/rest' +require 'chef/digester' require 'chef/provider/remote_file' require 'chef/provider/remote_file/result' require 'chef/provider/remote_file/cache_control_data' @@ -60,7 +61,7 @@ class Chef begin rest = Chef::REST.new(uri, nil, nil, http_client_opts) tempfile = rest.streaming_request(uri, headers) - update_cache_control_data(rest.last_response) + update_cache_control_data(tempfile, rest.last_response) rescue Net::HTTPRetriableError => e if e.response.is_a? Net::HTTPNotModified tempfile = nil @@ -73,7 +74,8 @@ class Chef private - def update_cache_control_data(response) + def update_cache_control_data(tempfile, response) + cache_control_data.checksum = Chef::Digester.checksum_for_file(tempfile.path) cache_control_data.mtime = last_modified_time_from(response) cache_control_data.etag = etag_from(response) cache_control_data.save |