Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

Refactor for Capistrano 3 #54

merged 2 commits into from Aug 22, 2014


None yet
4 participants

thoward commented Dec 18, 2013

These changes update supply_drop to work with Capistrano 3 (as it is today).

Some notable omissions:

  • I had to remove the various writers, and the streaming and file output they support. Too much changed with the logging in Cap 3 for that model to make sense. This could be re-thought and re-imagined, and added back in.
  • Cap 3 also doesn't have transactions, so I implemented the lock/unlock semantics with begin ... ensure blocks. Hopefully that satisfies the expected contract of the transaction DSL for these purposes.

Otherwise, the output is a little uglier, but it works fine for me on an Amazon Linux EC2 instance (RHEL/Centos compat). I haven't tried w/ Ubuntu yet, but I imagine it will be fine. I'd run it through the vagrant box tests before accepting the PR.

Unit tests all pass.


pitluga commented Dec 18, 2013

Thanks man! This seems like a pretty big change. We are still using the 2.x version of cap here. How would you feel if I released this as a "beta" gem? Maybe this could be the start of the 1.0 branch. Seems like a good time to simplify some things. I'll dig deeper this weekend.


thoward commented Dec 18, 2013

Yeah, I had to pull out a bunch of wires to make things work with Cap 3. So many breaking changes...

I've just started a green-field project w/ Cap3/Puppet and supply_drop in the middle, on EC2 using Amazon Linux. So I will be able to keep testing changes in that environment.

Travis CI is failing due to a bundler error, related to out-of-sync Gemfile.lock. I'll commit that and see if it starts passing.

Any progress on this?


thoward commented Jul 2, 2014

I'd be glad to help out however I can!
On Jul 2, 2014 12:07 AM, "Bjorn Neergaard" notifications@github.com wrote:

Any progress on this?

Reply to this email directly or view it on GitHub
#54 (comment).


prachetasp commented Aug 18, 2014

@thoward This is great stuff!
@pitluga Can this be placed into a different branch so that I can create PR's to it?


pitluga commented Aug 22, 2014

I'm having a hard time getting this stuff working. I generally use the examples folder in addition to the unit tests to ensure things are in a good spot. Since I've let this repo linger a bit, getting everything working again is going to take some time.

I've push a new branch called cap-2x for the existing 0.x versions that will maintain cap 2 functionality. I'll try to merge this PR into master and we can start a 1.0.0-beta version for cap-3x once I get it working. Let me see how far I can get on this today.

@pitluga pitluga merged commit 860eee4 into pitluga:master Aug 22, 2014

1 check passed

default The Travis CI build passed

pitluga added a commit that referenced this pull request Aug 22, 2014

Violently upgrade to Capistrano 3.x
Based on the great work by thoward in #54

This upgrade sacrifices some features:
* Writing output to a file
* Grouping log output by server
* Syntax checking

prachetasp commented Aug 22, 2014

@pitluga awesome! Let me know if I can be of any help

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment