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

can't load 'nodes' provisioner from load path #29

Open
smartb-pair opened this issue Oct 5, 2016 · 9 comments
Open

can't load 'nodes' provisioner from load path #29

smartb-pair opened this issue Oct 5, 2016 · 9 comments

Comments

@smartb-pair
Copy link

We may be missing something easy, but we keep seeing this error when trying to use the 'nodes' plugin:

$ bundle exec kitchen converge postgres
-----> Starting Kitchen (v1.13.2)
>>>>>> ------Exception-------
>>>>>> Class: Kitchen::ClientError
>>>>>> Message: Could not load the 'nodes' provisioner from the load path. Please ensure that your provisioner is installed as a gem or included in your Gemfile if using Bundler.
>>>>>> ----------------------
>>>>>> Please see .kitchen/logs/kitchen.log for more details
>>>>>> Also try running `kitchen diagnose --all` for configuration

Our sanitized .kitchen.yml looks like this:


---
driver:
  name: joyent

transport:
  name: rsync

driver_config:
  joyent_version: '~7.0'
  joyent_username: smartb
  joyent_keyfile: <redacted>
  joyent_keyname: <redacted>
  joyent_url: https://eu-ams-1.api.joyent.com
  joyent_image_id: 643d5524-7eba-4a72-8fca-8dbb84d8d35d # ubuntu-certified-14.04
  joyent_flavor_id: k4-highcpu-kvm-3.75G
  username: ubuntu

provisioner:
  name: nodes
  require_chef_omnibus: 12.13.37

platforms:
  - name: ubuntu-14.04

suites:
  - name: pgbouncer
    run_list:
      - recipe[postgres::pgbouncer]

  - name: postgres-primary
    run_list:
      - recipe[postgres::primary]

  - name: postgres-replica
    run_list:
      - recipe[postgres::replica]

cc: @arochaf @bixu

@mwrock
Copy link
Owner

mwrock commented Oct 5, 2016

Are you using chef-dk? If so which version? and are you using a Gemfile?

@smartb-pair
Copy link
Author

smartb-pair commented Oct 5, 2016

We are using rbenv and a Gemfile:

$ rbenv versions
  system
* 2.3.1 (set by /Users/smartb/.rbenv/version
$ cat Gemfile
source "https://rubygems.org"

gem 'berkshelf'
gem 'foodcritic'
gem 'kitchen-joyent'
gem 'kitchen-sync'
gem 'kitchen-nodes'
gem 'kitchen-vagrant

@mwrock
Copy link
Owner

mwrock commented Oct 5, 2016

usually the root cause of those errors are some gem conflict somewhere. Try running with -l debug and that may reveal a nested load error. Also you need chef in your Gemfile which may be the problem.

@smartb-pair
Copy link
Author

Yes, adding chef to the Gemfile seems to fix the 'can't load nodes' error. Maybe we can specify chef as a dependency for the kitchen-nodes gem, so that Bundler auto-installs it?

Also, we now see an error like this:

>>>>>>     Failed to complete #converge action: [scp: /tmp/kitchen/nodes/postgres-primary-ubuntu-1404.json: Permission denied
] on postgres-primary-ubuntu-1404
>>>>>>     Failed to complete #converge action: [scp: /tmp/kitchen/nodes/postgres-primary-ubuntu-1404.json: Permission denied
] on postgres-replica-ubuntu-1404

Will have another go at this in the morning, need to leave the office now.

@smartb-pair
Copy link
Author

The permissions issue seems to go away if we destroy and re-test.

@legal90
Copy link
Contributor

legal90 commented Nov 3, 2016

I've reproduced the same issue with ChefDK v0.18.13
The reason is the version constraint fortest-kitchen. Logfile .kitchen/logs/kitchen.log is pointing on this:

#...
E, [2016-11-03T11:21:11.778739 #30796] ERROR -- Kitchen: ---Nested Exception---
E, [2016-11-03T11:21:11.778755 #30796] ERROR -- Kitchen: Class: Gem::ConflictError
E, [2016-11-03T11:21:11.778774 #30796] ERROR -- Kitchen: Message: Unable to activate kitchen-nodes-0.8.0, because test-kitchen-1.12.0 conflicts with test-kitchen (~> 1.13)
E, [2016-11-03T11:21:11.778818 #30796] ERROR -- Kitchen: ----------------------
#...

@Blankf
Copy link

Blankf commented Oct 16, 2019

trying to work with nodes again but with newer version, got same error.

---Nested Exception---
D Class: Gem::ConflictError
D Message: Unable to activate kitchen-nodes-0.9.1, because test-kitchen-2.2.5 conflicts with test-kitchen (~> 1.13)
D ----------------------

@scalp42
Copy link

scalp42 commented Nov 1, 2019

@Blankf if you're feeling adventurous, https://rubygems.org/gems/kitchen-nodes-scalp42 works

@jackyim1123
Copy link

chef exec gem install kitchen-nodes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants