[chef-dev] Re: Freshly Released Gems


Chronological Thread 
  • From: Tyler Ball < >
  • To: ,
  • Subject: [chef-dev] Re: Freshly Released Gems
  • Date: Tue, 7 Apr 2015 17:24:57 -0500

In response to an dependency issue, I have just released chef-provisioning-aws 1.0.4 and cheffish 1.1.1.  If you were affected by the chef-zero dependency issue, you can updated to the latest cheffish and chef-provisioning-aws gems to fix it.  If you want the whole story, read on!

The issue: the current omnibus chef (12.2.1) uses appbundling to pin the version of dependencies activated when using chef.  The current omnibus chef package has a gem constraint of `chef-zero ‘~> 4.0’` - this means that chef-zero 4.2 can successfully fulfill that constraint.  But because omnibus chef 12.2.1 was released before chef-zero 4.2 existed, it has been appbundled to activate chef-zero 4.0 as soon as a chef command (chef-client, chef-shell, etc.) is ran.

This was causing an issue for customers using omnibus chef 12.2.1 and chef-provisioning.  The latest cheffish and chef-provisioning-aws gems had a `~> 4.2` constraint - they must have at least 4.2 activated to run.  But because appbundling had already activated chef-zero 4.0, Rubygems threw a lovely error:

Gem::ConflictError: Unable to activate cheffish-1.1.0, because chef-zero-4.0 conflicts with chef-zero (~> 4.2)

I have reverted the constraint in cheffish and chef-provisioning-aws from `~> 4.2` to `~> 4.0`.  The changes in chef-zero are only used in development so their lack in production shouldn’t affect chef-provisioning.

The ChefDK omnibus 0.5.0 RC5 does not have this issue - if you install that locally you will be able to develop against chef-provisioning and leverage the RSpec support that chef-zero 4.2.0 includes.

Cheers!
-T


On Apr 7, 2015, at 12:55 PM, Tyler Ball < " class=""> > wrote:

Greetings!

Today and yesterday, I’ve been on a furious gem-releasing run.  I’ve released updated versions of chef-zero, cheffish, chef-provisioning and chef-provisioning-aws.  Much of this is in preparation for the new ChefDK release I’m working on.

I may potentially perform some more releases of these same gems but I wanted to go ahead and get the word out about my changes in case anyone sees issues.

All the affected changelogs have been updated, but I’ll post a summary of the changes here:

chef-zero 4.2.1
  • bump ffi-yajl dependencies
  • Update rspec support method `with_chef_server` to take :organization and :data_scope parameters
cheffish 1.1.0
  • Add encapsulated chef runs that capture and stream output
  • Cleaned up dependencies which were causing build failures - no longer depend on chef-provisioning-aws
  • Updated to cheffish ~> 1.1
  • Update chef-provisioning, chef-zero and cheffish to use latest gem versions and no longer depend on github

Cheers, and let me know if anyone encounters issues!

-Tyler




Archive powered by MHonArc 2.6.16.

§