I have found that the cleanest way to do staging and production
tasks like this is this way:
task :production do
role :web, '65.74.169.199:8192'
role :app, '65.74.169.199:8192'
role :db, '65.74.169.199:8192', :primary => true
end
task :staging do
role :web, '65.74.169.199:8194'
role :app, '65.74.169.199:8194'
role :db, '65.74.169.199:8194', :primary => true
end
Then you can do:
$ cap staging deploy
$ cap production deploy
Cheers-
-Ezra
On Mar 29, 2007, at 7:49 AM, Jamis Buck wrote:
>
> On Mar 28, 2007, at 2:02 AM, dubek wrote:
>
>> Many people have this kind of situation (usually with 3 environments:
>> dev, staging and production). Just search the capistrano and rails
>> groups for "staging" and you'll find all the talks about it... I have
>> a feeling the Jamis is planning some solution for it in the next big
>> release. ;-)
>
> I'm curious why you have that feeling. :) Even more, though, I'm
> curious what you think Capistrano ought to do about this. Personally,
> I think the case statement is a great solution. Totally fine. What
> could Capistrano do that would be cleaner and easier to read than:
>
> case ENV['STAGE']
> when "production"
> role ....
> set ...
> ...
> when "development"
> ....
> ...
> end
>
> If it is the environment variable that looks klunky you, you can use
> capistrano variables instead:
>
> case stage
> ...
> end
>
> And then invoke it like this
>
> cap -S stage=production deploy
>
> - Jamis
>
>
> >
-- 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
-~----------~----~----~----~------~----~------~--~---