Hey Ezra,
I really appreciate the offer. I'm afraid my ideas are still in the
vague/proof-of-concept/experimenting state, but right now these are
the things I know that I want to happen for Capistrano 2.0:
* Decouple the core from the standard recipes. This should slim the
core stuff down quite a bit.
* Decouple the deployment method from the SCM, so you can use any SCM
you want with any supported deployment method (e.g. "checkout",
"export", "copy", "rsync", etc.)
* Get serious about the tests. Right now they're admittedly
weaksauce. My testing-fu is quite challenged by the ssh requirement.
It'd be lovely to have a "mock server" that ships with Net::SSH,
which could be used to do testing with Net::SSH, but that's a tall
order.
I've also been toying with the idea of having a minimal DSL for
writing shell scripts, primarily so that capistrano's default recipes
can work with non-POSIX shells (like csh and tcsh). This would have
the happy side-effect of making it easier to write simple
conditionals in scripts; currently it requires shell-script-fu as
well as a knowledge of how capistrano is going to mangle the script
when it runs it.
The only one of the above that I'm working on right now with any
degree of effort is the second one--decoupling the SCM from the
deployment method. If anyone wants to tinker on any of the others, or
even propose their own ideas, I wouldn't be upset at all. :)
Note that the idea with Capistrano 2.0 is "less capistrano", not
"more capistrano". Let's focus on slimming it down and making it
simpler, as much as possible.
- Jamis
On Jan 18, 2007, at 12:33 PM, Ezra Zygmuntowicz wrote:
I would also love to see this happen for cap 2.0. Jamis- is
there anything moving towards 2.0 that you would like to see that
I can help work on? I know your a busy guy.
Cheers-
-Ezra
On Jan 17, 2007, at 11:42 PM, Mike Bailey wrote:
I think this is great news!
It will make life easier for people writing plugin gems which in turn
will lead to more and varied recipe gems surfacing.
Another system built around the 'everything is a plugin' idea is
Nagios
network monitoring. Is just makes things easier to grok when the core
is simplified and decoupled from the peripheral bits.
- Mike
On 18/01/2007, at 3:11 PM, Jamis Buck wrote:
Neil,
My vision for Capistrano 2.0 is to follow the suggestions a
few people have offered and decouple "Capistrano-the-part-
that- executes- remote-processes" from "Capistrano-does-rails-
deployment". The "core" capistrano bit would be installable
standalone, with no defaults. The rails-specific bits would
then depend on capistrano-core.
- Jamis
On Jan 17, 2007, at 3:20 AM, NeilW wrote:
How does '-x' work with this lot?
It would be quite useful if '-x' skipped preloading of any
task library
- including standard. I might be (and often am!) doing
something with
capistrano that doesn't involve Rails deployment at all.
>
>
>
-- Ezra Zygmuntowicz -- Lead Rails Evangelist
-- [EMAIL PROTECTED]
-- Engine Yard, Serious Rails Hosting
-- (866) 518-YARD (9273)
>
--~--~---------~--~----~------------~-------~--~----~
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/capistrano
-~----------~----~----~----~------~----~------~--~---