realityforge/chef-kibana

CheckSumMismatch installing kibana-3.1.0

Opened this issue · 3 comments

I'm getting a checksum mismatch when installing kibana-3.1.0. Testing using chef 12.0.3 fails as below. Locking the version to 11.16.4 works fine.

Error executing action create on resource 'remote_file[/var/chef/cache/kibana-3.1.0.tar.gz]'

Chef::Exceptions::ChecksumMismatch

Checksum on resource (059a4b) does not match checksum on content (df25bc)

Resource Declaration:

In /var/chef/cache/cookbooks/ark/providers/default.rb

45: remote_file new_resource.release_file do
46: Chef::Log.debug('DEBUG: new_resource.release_file')
47: source new_resource.url
48: checksum new_resource.checksum if new_resource.checksum
49: action :create
50: notifies :run, "execute[unpack #{new_resource.release_file}]"
51: end
52:

Compiled Resource:

Declared in /var/chef/cache/cookbooks/ark/providers/default.rb:45:in `block in class_from_file'

remote_file("/var/chef/cache/kibana-3.1.0.tar.gz") do
provider Chef::Provider::RemoteFile
action [:create]
retries 0
retry_delay 2
default_guard_interpreter :default
path "/var/chef/cache/kibana-3.1.0.tar.gz"
backup 5
atomic_update true
source ["https://download.elasticsearch.org/kibana/kibana/kibana-3.0.0.tar.gz"]
use_etag true
use_last_modified true
declared_type :remote_file
cookbook_name "kibana"
checksum "059a4b6b507b9ff771901d12035e499b0e8d1cae7d9e5284633e19da6c294e07"
end

[2014-12-22T03:50:08+00:00] INFO: Running queued delayed notifications before re-raising exception
[2014-12-22T03:50:08+00:00] INFO: directory[/usr/local/kibana-3.1.0] sending run action to executeunpack /var/chef/cache/kibana-3.1.0.tar.gz
[2014-12-22T03:50:08+00:00] INFO: Processing execute[unpack /var/chef/cache/kibana-3.1.0.tar.gz] action run (/var/chef/cache/cookbooks/ark/providers/default.rb line 55)

+1, just encountered this yesterday and confirm locking to Chef 11 as a temporary workaround.

The cause of the problem is Kibana::Url class does not handle version properly in Chef 12 by ignoring node['kibana']['kibana3_version'] and using default value defined in version.rb.

You can avoid this bug by specifying node['kibana']['url'] explicitly. For example, you can set the attribute in your wrapper cookbook as below.

default['kibana']['url'] = 'https://download.elasticsearch.org/kibana/kibana/kibana-3.1.0.tar.gz'

I just tested this with overriding the kibana3_version and checksum in a node file and things appear to work for me (Chef 12.8.1).