Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

key not found: "src_md5" on kitchen converge #954

Closed
mhedgpeth opened this issue Feb 28, 2016 · 8 comments
Closed

key not found: "src_md5" on kitchen converge #954

mhedgpeth opened this issue Feb 28, 2016 · 8 comments

Comments

@mhedgpeth
Copy link

This happens intermittently when I run kitchen converge:

[2016-02-27T20:48:59.192649 #14536]  INFO -- default-windows-2012r2-chef12: Transferring files to <default-windows-2012r2-chef12>
E, [2016-02-27T20:49:06.368584 #14536] ERROR -- default-windows-2012r2-chef12: Converge failed on instance <default-windows-2012r2-chef12>.
E, [2016-02-27T20:49:06.369084 #14536] ERROR -- default-windows-2012r2-chef12: ------Exception-------
E, [2016-02-27T20:49:06.369084 #14536] ERROR -- default-windows-2012r2-chef12: Class: KeyError
E, [2016-02-27T20:49:06.369084 #14536] ERROR -- default-windows-2012r2-chef12: Message: key not found: "src_md5"
E, [2016-02-27T20:49:06.369084 #14536] ERROR -- default-windows-2012r2-chef12: ------Backtrace-------
E, [2016-02-27T20:49:06.369584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/winrm-transport-1.0.3/lib/winrm/transport/file_transporter.rb:393:in `fetch'
E, [2016-02-27T20:49:06.369584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/winrm-transport-1.0.3/lib/winrm/transport/file_transporter.rb:393:in `block in parse_response'
E, [2016-02-27T20:49:06.369584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/winrm-transport-1.0.3/lib/winrm/transport/file_transporter.rb:393:in `map'
E, [2016-02-27T20:49:06.369584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/winrm-transport-1.0.3/lib/winrm/transport/file_transporter.rb:393:in `parse_response'
E, [2016-02-27T20:49:06.369584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/winrm-transport-1.0.3/lib/winrm/transport/file_transporter.rb:260:in `decode_files'
E, [2016-02-27T20:49:06.369584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/winrm-transport-1.0.3/lib/winrm/transport/file_transporter.rb:96:in `block in upload'
E, [2016-02-27T20:49:06.370084 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/2.1.0/benchmark.rb:279:in `measure'
E, [2016-02-27T20:49:06.370084 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/winrm-transport-1.0.3/lib/winrm/transport/file_transporter.rb:87:in `upload'
E, [2016-02-27T20:49:06.370084 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/transport/winrm.rb:143:in `upload'
E, [2016-02-27T20:49:06.370084 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/provisioner/base.rb:70:in `block in call'
E, [2016-02-27T20:49:06.370084 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/transport/base.rb:86:in `initialize'
E, [2016-02-27T20:49:06.370084 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/transport/winrm.rb:492:in `new'
E, [2016-02-27T20:49:06.370084 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/transport/winrm.rb:492:in `create_new_connection'
E, [2016-02-27T20:49:06.370084 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/transport/winrm.rb:84:in `connection'
E, [2016-02-27T20:49:06.370084 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/provisioner/base.rb:66:in `call'
E, [2016-02-27T20:49:06.370084 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/instance.rb:373:in `block in converge_action'
E, [2016-02-27T20:49:06.370584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/instance.rb:495:in `call'
E, [2016-02-27T20:49:06.370584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/instance.rb:495:in `synchronize_or_call'
E, [2016-02-27T20:49:06.370584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/instance.rb:460:in `block in action'
E, [2016-02-27T20:49:06.370584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/2.1.0/benchmark.rb:279:in `measure'
E, [2016-02-27T20:49:06.370584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/instance.rb:459:in `action'
E, [2016-02-27T20:49:06.370584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/instance.rb:369:in `converge_action'
E, [2016-02-27T20:49:06.370584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/instance.rb:348:in `block in transition_to'
E, [2016-02-27T20:49:06.370584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/instance.rb:347:in `each'
E, [2016-02-27T20:49:06.370584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/instance.rb:347:in `transition_to'
E, [2016-02-27T20:49:06.370584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/instance.rb:138:in `converge'
E, [2016-02-27T20:49:06.370584 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/command.rb:176:in `public_send'
E, [2016-02-27T20:49:06.371084 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.5.0/lib/kitchen/command.rb:176:in `block (2 levels) in run_action'
E, [2016-02-27T20:49:06.371084 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/logging-1.8.2/lib/logging/diagnostic_context.rb:323:in `call'
E, [2016-02-27T20:49:06.371084 #14536] ERROR -- default-windows-2012r2-chef12: C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0/gems/logging-1.8.2/lib/logging/diagnostic_context.rb:323:in `block in create_with_logging_context'
E, [2016-02-27T20:49:06.371084 #14536] ERROR -- default-windows-2012r2-chef12: ----------------------

My kitchen.yml is pretty straightforward:


---
driver:
  name: vagrant

provisioner:
  name: chef_zero

verifier:
  name: inspec

platforms:
  - name: windows-2012r2-chef12
    driver_config:
      box: mwrock/Windows2012R2

suites:
  - name: default
    run_list:
      - recipe[contributors::default]
    attributes:
@mhedgpeth
Copy link
Author

I'm running kitchen 1.5. I'm told this may be fixed in 1.6

@mwrock
Copy link
Member

mwrock commented Feb 28, 2016

This is indeed fixed in Test-Kitchen 1.6 and caused by a bug in winrm-s that truncates responses that span multiple HTTP payloads. To unblock folks like yourself hitting this bug, I just released a dev release of the deprecated winrm-s gem that fixes this bug. Run:

chef gem install winrm-s --prerelease

This should hopefully get you past this until test-kitchen 1.6 ships.

@mhedgpeth
Copy link
Author

That worked, Matt, thanks so much!

@crerwin
Copy link

crerwin commented Mar 2, 2016

I'm still getting this issue even after installing the pre-release winrm-s gem as stated above (chef gem list shows winrm-s version 0.3.4). It's now happening consistently just after the Chef client install:

       Downloading package from https://opscode-omnibus-packages.s3.amazonaws.com/windows/2012r2/i386/chef-client-12.7.2
-1-x86.msi

       Download complete.

       Successfully verified C:\Users\vagrant\AppData\Local\Temp\chef-.msi

       Installing Chef Omnibus package C:\Users\vagrant\AppData\Local\Temp\chef-.msi

       Installation complete

       Transferring files to <tomcat8-windows2012R2-tfs>
>>>>>> ------Exception-------
>>>>>> Class: Kitchen::ActionFailed
>>>>>> Message: Failed to complete #converge action: [key not found: "src_md5"]
>>>>>> ----------------------
>>>>>> Please see .kitchen/logs/kitchen.log for more details
>>>>>> Also try running `kitchen diagnose --all` for configuration
> chef -v
Chef Development Kit Version: 0.11.2
chef-client version: 12.7.2
berks version: 4.2.0
kitchen version: 1.5.0

I'll open an issue on winrm-s, since I assume that's where the problem still lies.

@mwrock
Copy link
Member

mwrock commented Mar 2, 2016

you either need winrm-s 0.3.7.dev or upgrade to test-kitchen 1.6.0 which you can do on an existing chef dk with:

chef gem install appbundle-updater
appbundle-updater chefdk test-kitchen v1.6.0

@crerwin
Copy link

crerwin commented Mar 2, 2016

Thanks. Looks like I have bigger issues with my Chef gem path. It's installing 0.3.7.dev but Chef doesn't see it. Sorry for the incorrect info. Thanks!

@mwrock
Copy link
Member

mwrock commented Mar 2, 2016

might make sure you are using chef gem install and not gem install

@crerwin
Copy link

crerwin commented Mar 2, 2016

Yup, I am. It's installing it to .chefdk\gem\ruby\2.1.0\gems, but chef doesn't see it. Gem Paths in 'chef gem env' shows:

  - GEM PATHS:
     - C:/opscode/chefdk/embedded/lib/ruby/gems/2.1.0
     - c:\users\cerwin\.chefdk/gem/ruby/2.1.0

I'm not sure what's up with the mixed slashes, but that's probably my issue.

@test-kitchen test-kitchen locked and limited conversation to collaborators Nov 16, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants