forward3d/cap-ec2

`aws-sdk` v2 is out and stable but breaking `cap-ec2`

Tomtomgo opened this issue · 0 comments

Amazon updated their SDK Gem: http://ruby.awsblog.com/post/TxFKSK2QJE6RPZ/Upcoming-Stable-Release-of-AWS-SDK-for-Ruby-Version-2.

When one runs bundle update this new version of aws-sdk will be installed. There's a new namespace, Aws instead of AWS, which breaks cap-ec2. I tried changing just the namespace, but there are deeper changes required to use the v2 of aws-sdk, it's not a simple replace ;)

This is what happens when I run my deploy with the aws-sdk v2:

$ bundle exec cap next deploy --trace
** Invoke next (first_time)
** Execute next
** Invoke load:defaults (first_time)
** Execute load:defaults
cap aborted!
NameError: uninitialized constant CapEC2::EC2Handler::AWS
/usr/local/rvm/gems/ruby-2.1.2@moi/gems/cap-ec2-0.0.17/lib/cap-ec2/ec2-handler.rb:15:in `ec2_connect'
/usr/local/rvm/gems/ruby-2.1.2@moi/gems/cap-ec2-0.0.17/lib/cap-ec2/ec2-handler.rb:10:in `block in initialize'
/usr/local/rvm/gems/ruby-2.1.2@moi/gems/cap-ec2-0.0.17/lib/cap-ec2/ec2-handler.rb:9:in `each'
/usr/local/rvm/gems/ruby-2.1.2@moi/gems/cap-ec2-0.0.17/lib/cap-ec2/ec2-handler.rb:9:in `initialize'
/usr/local/rvm/gems/ruby-2.1.2@moi/gems/cap-ec2-0.0.17/lib/cap-ec2/capistrano.rb:19:in `new'
/usr/local/rvm/gems/ruby-2.1.2@moi/gems/cap-ec2-0.0.17/lib/cap-ec2/capistrano.rb:19:in `ec2_handler'
/usr/local/rvm/gems/ruby-2.1.2@moi/gems/cap-ec2-0.0.17/lib/cap-ec2/capistrano.rb:23:in `ec2_role'