matschaffer / knife-solo

DEPRECATED: Please consider using https://knife-zero.github.io/, ansible, or visit https://www.chef.io/ for other ideas
MIT License
787 stars 213 forks source link

gem dependency conflicts #517

Closed el-dude closed 7 years ago

el-dude commented 7 years ago

CentOS Linux release 7.3.1611 (Core) 
[vagrant@localhost ~]$ rpm -qa | grep [c]hef
chefdk-2.0.26-1.el7.x86_64
[vagrant@localhost ~]$ gem list knife-solo

*** LOCAL GEMS ***

knife-solo (0.6.0)
[vagrant@localhost ~]$ sudo knife solo init chef_dir/
/opt/chefdk/embedded/lib/ruby/2.4.0/rubygems/specification.rb:2291:in `raise_if_conflicts': Unable to activate knife-solo-0.6.0, because net-ssh-4.1.0 conflicts with net-ssh (< 4.0, >= 2.7) (Gem::ConflictError)
    from /opt/chefdk/embedded/lib/ruby/2.4.0/rubygems/specification.rb:1411:in `activate'
    from /opt/chefdk/embedded/lib/ruby/2.4.0/rubygems.rb:220:in `rescue in try_activate'
    from /opt/chefdk/embedded/lib/ruby/2.4.0/rubygems.rb:213:in `try_activate'
    from /opt/chefdk/embedded/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:126:in `rescue in require'
    from /opt/chefdk/embedded/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:40:in `require'
    from /root/.chefdk/gem/ruby/2.4.0/gems/knife-solo-0.6.0/lib/chef/knife/cook.rb:1:in `<top (required)>'
    from /opt/chefdk/embedded/lib/ruby/gems/2.4.0/gems/chef-13.2.20/lib/chef/knife/core/subcommand_loader.rb:85:in `load'
    from /opt/chefdk/embedded/lib/ruby/gems/2.4.0/gems/chef-13.2.20/lib/chef/knife/core/subcommand_loader.rb:85:in `block in load_commands'
    from /opt/chefdk/embedded/lib/ruby/gems/2.4.0/gems/chef-13.2.20/lib/chef/knife/core/subcommand_loader.rb:85:in `each'
    from /opt/chefdk/embedded/lib/ruby/gems/2.4.0/gems/chef-13.2.20/lib/chef/knife/core/subcommand_loader.rb:85:in `load_commands'
    from /opt/chefdk/embedded/lib/ruby/gems/2.4.0/gems/chef-13.2.20/lib/chef/knife/core/subcommand_loader.rb:95:in `load_command'
    from /opt/chefdk/embedded/lib/ruby/gems/2.4.0/gems/chef-13.2.20/lib/chef/knife/core/subcommand_loader.rb:109:in `command_class_from'
    from /opt/chefdk/embedded/lib/ruby/gems/2.4.0/gems/chef-13.2.20/lib/chef/knife.rb:153:in `subcommand_class_from'
    from /opt/chefdk/embedded/lib/ruby/gems/2.4.0/gems/chef-13.2.20/lib/chef/knife.rb:214:in `run'
    from /opt/chefdk/embedded/lib/ruby/gems/2.4.0/gems/chef-13.2.20/lib/chef/application/knife.rb:156:in `run'
    from /opt/chefdk/embedded/lib/ruby/gems/2.4.0/gems/chef-13.2.20/bin/knife:25:in `<top (required)>'
    from /bin/knife:264:in `load'
    from /bin/knife:264:in `<main>'
[vagrant@localhost ~]$```
matschaffer commented 7 years ago

The 0.7.0 prerelease should solve this.

zsellera commented 6 years ago

For others who run into this:

gem uninstall knife-solo
gem install knife-solo --pre

(http://shinshin86.hateblo.jp/entry/2018/04/09/191441)

matschaffer commented 6 years ago

Thanks @zsellera. It's probably time I just give up on the integration suite and release the pre as 0.7.0 ☹️

dermarens commented 6 years ago

Any further plans for the 0.7 release? i just stumbled into this with Chef Development Kit Version: 3.0.36 chef-client version: 14.1.12

matschaffer commented 6 years ago

Yeah, I'm still pretty conflicted there, but maybe it's time to just pull the trigger and release 0.7.0 from master even though the integration suite is failing. So hard to say since I really haven't used the tool at all in years.

Any opinions there @tmatilai @aried3r @iidatomohiko or @tknerr ?

aried3r commented 6 years ago

I've been pointing my Gemfile to 0.7.0.pre3 for the longest time and haven't faced any issues. But I use a very minimal subset of what knife-solo can do probably.

But I understand that releasing with a failing test suite feels weird. But I see a green build here: https://travis-ci.org/matschaffer/knife-solo/branches What exactly is failing?

matschaffer commented 6 years ago

These ones are failing https://github.com/matschaffer/knife-solo/blob/master/Rakefile#L84 they use EC2 instance to do full integration testing. They do catch problems but mostly they go red just because something else in the ecosystem moved around a bit.

aried3r commented 6 years ago

And they are quite old from what I can see, Ubuntu 12.04 is EOL even. Understandably you don't want to release something where not all tests run, but I'd argue quite some work would have to go into that setup to make it work again.

I'm all for a 0.7.0 or even 1.0.0 of knife-solo. I've been using it for quite some time and it's almost always been other moving parts, not knife-solo that broke. :)

matschaffer commented 6 years ago

Alrighty then :) I'll prep the release

On Mon, Oct 22, 2018 at 20:04 Anton Rieder notifications@github.com wrote:

And they are quite old from what I can see, Ubuntu 12.04 is EOL even. Understandably you don't want to release something where not all tests run, but I'd argue quite some work would have to go into that setup to make it work again.

I'm all for a 0.7.0 or even 1.0.0 of knife-solo. I've been using it for quite some time and it's almost always been other moving parts, not knife-solo that broke. :)

— You are receiving this because you modified the open/close state.

Reply to this email directly, view it on GitHub https://github.com/matschaffer/knife-solo/issues/517#issuecomment-431796481, or mute the thread https://github.com/notifications/unsubscribe-auth/AAACsqH9ucFfcUgv0f3hvANGxw527rs_ks5unaY9gaJpZM4OnPhQ .

--

-Mat

matschaffer.com

matschaffer commented 5 years ago

https://rubygems.org/gems/knife-solo/versions/0.7.0 is up - tests seem to pass. Hope it works for everyone.