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

If Berksfile is present, kitchen never finds Cheffile #686

Closed
luckymike opened this issue Apr 13, 2015 · 3 comments
Closed

If Berksfile is present, kitchen never finds Cheffile #686

luckymike opened this issue Apr 13, 2015 · 3 comments

Comments

@luckymike
Copy link

On a system with Librarian installed, but no Berkshelf, if a cookbook has both a Berksfile and a Cheffile kitchen will see the Berskfile, attempt to resolve dependencies, and then fail.

This is especially problematic due to ChefDK, since Berks is rarely included in the Gemfile any longer.

$ be kitchen test service-ubuntu-1204
-----> Starting Kitchen (v1.3.1)
!!!!!! The `berkshelf' gem is missing and must be installed or cannot be properly activated. Run `gem install berkshelf` or add the following to your Gemfile if you are using Bundler: `gem 'berkshelf'`.
>>>>>> ------Exception-------
>>>>>> Class: Kitchen::UserError
>>>>>> Message: Could not load or activate Berkshelf (cannot load such file -- berkshelf)
>>>>>> ----------------------
>>>>>> Please see .kitchen/logs/kitchen.log for more details
>>>>>> Also try running `kitchen diagnose --all` for configuration

$ ls
Berksfile       CONTRIBUTING.md Gemfile         README.md       attributes      metadata.rb     test
Berksfile.lock  Cheffile        Gemfile.lock    Rakefile        files           recipes
CHANGELOG.md    Cheffile.lock   LICENSE         TESTING.md      libraries       templates

$ cat Gemfile
source 'https://rubygems.org'

gem 'chefspec',   '~> 3.0'
gem 'foodcritic', '~> 3.0'
gem 'rubocop'

group :integration do
  gem 'test-kitchen'
  gem 'kitchen-vagrant'
  gem 'librarian-chef'
end

group :release do
  gem 'emeril'
  gem 'rake'
end
@tyler-ball tyler-ball added this to the Later milestone Apr 14, 2015
@tyler-ball
Copy link
Contributor

@fnichol has an idea to introduce a new resolver plugin type. This resolver could be Berkshelf, or Librarian or policy files. Late loading of these plugins should resolve these load issues, as well as allowing users to specify whether they want to use Berkshelf or Librarian.

I'm marking this as 'later' because we want to finish up the current (1.4) release before tackling new work.

@luckymike
Copy link
Author

FWIW, if you go a resolver plugin route, I think that should be totally open, rather than a supported list.

@fnichol fnichol added the Triaged label May 8, 2015
@smurawski smurawski modified the milestones: 1.5, Accepted Minor, 1.6 Jan 21, 2016
@cheeseplus cheeseplus modified the milestones: 1.6, Accepted Minor Mar 15, 2016
@cheeseplus cheeseplus removed this from the Accepted Minor milestone Mar 23, 2016
@cheeseplus
Copy link

Given that this one is over 2 years old and librarian is effectively no longer maintained closing.

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

No branches or pull requests

5 participants