Sorry setting it by lambda doesn't change anything; you need to reset the 
repository between calls to deploy

I'm confused by your namespaces

You have deploy:tag and i18n:update which appear to attempt to modify the 
repository

Your invocation of

> cap test2 deploy

Won't execute deploy:tag automatically

And your invocation of

> cap test2 i18n:update

Won't magically call deploy

There are other variables that may have been set on the first invocation that 
you will need to override; the one that holds the current scm ref comes to  
mind;

Another way to get two different top level deploys is to create a task that 
uses system() to execute another invocation of capistrano in a subshell if the 
pollution of the configuration is too extreme to deal with. 

On Nov 8, 2011, at 5:26 PM, Rafa García <[email protected]> wrote:

> I'm not sure but Craig try to set repository with a lambda (If it works maybe 
> you should do the same for others variables).
> 
> set :repository, lambda { repo_path }
> 
> Good night
> 
> 2011/11/8 Craig White <[email protected]>
> Perhaps significantly, I am using multistage extension and thus can't invoke 
> as you suggest and it doesn't seem to work. I can 'deploy' the first 
> repository but not the second (url seems to be perfect but never checks out 
> the code from svn).
> 
> here's an abbreviation/simplification of my deploy.rb
> 
> namespace :deploy do
>  task :tag do
>    url = url_to_deploy(svn_user, svn_pass)
> 
>    repo_path = " --no-auth-cache"
>    repo_path << " --username #{user}"
>    repo_path << " #{url}"
> 
>    set :deploy_to, "#{deploy_path}"
>    set :application, "ids"
>    set :copy_cache, "#{deploy_to}/cached-copy"
>    set :repository, repo_path
> 
>    p "    
> ------------------------------------------------------------------------------------------"
>    p "      Deploying: #{url} "
>    p "    
> ------------------------------------------------------------------------------------------"
>  end
>  ..snip other deploy:tasks..
> end
> 
> namespace :i18n do
>  desc "Deploys i18n translations"
>  task :update do
>    url = url_to_deploy(svn_user, svn_pass) unless exists?(:url)
>    url = "#{url}/#{i18n_sub_path}"
> 
>    repo_path = " --no-auth-cache"
>    repo_path << " --username #{user}"
>    repo_path << " #{url}"
> 
>    set :deploy_to, "#{deploy_path}/i18n"
>    set :application, "xlate"
>    set :copy_cache, "#{deploy_to}/cached-copy"
>    set :repository, repo_path
> 
>    p "    
> ------------------------------------------------------------------------------------------"
>    p "      Deploying: #{url} "
>    p "    
> ------------------------------------------------------------------------------------------"
>  end
>  ..snip other i18n:tasks..
> end
> 
> so the top task works fine: 'cap test2 deploy'
> the bottom task doesn't ever check out the code: 'cap test2 i18n:update' 
> though the 'url' is fine, the use of 'Highline' tells me that the 
> authentication/selection of tags is fine and the "#{deploy_to}/cached-copy" 
> exists but it never seems to actually even try to perform an svn checkout.
> 
> Craig
> 
> On Nov 4, 2011, at 6:38 PM, Donovan Bray wrote:
> 
> > Just create tasks that override the deploy_to, repository, and application
> >
> > task :app1 do
> >  set :application, "app1"
> >  set :repository, "[email protected]:vanpelt/rails-app.git"
> > set :deploy_to, "/var/www/app1"
> > end
> >
> > task :app2 do
> >  set :application, "app2"
> >  set :repository, "[email protected]:vanpelt/rails-app2.git"
> > set :deploy_to, "/var/www/app2"
> > end
> >
> > cap app1 deploy
> > cap app2 deploy
> > cap app1 deploy app2 deploy
> >
> > Should all work as expected.
> >
> > On Nov 4, 2011, at 11:45 AM, Craig White <[email protected]> wrote:
> >
> >> We mostly use capistrano but for one particular project, we use a hacked 
> >> version of vlad
> >>
> >> The problem is that there are 2 subversion URL's/codebases...
> >>
> >> - one for the ruby code
> >>
> >> - one for the language translation files
> >>
> >> and they may be deployed simulataneously or separately, as is more often 
> >> the case.
> >>
> >> The recent questions and answers suggest that more sophistication is 
> >> possible (like the reference to 'recipes/deploy.rb') but it's far from 
> >> clear to me how I might accomplish having 2 different :repository URL's in 
> >> the same deploy.rb file
> >>
> >> Secondly... perhaps I am deficient but all I seem to be able to find for 
> >> documentation is the 'Handbook' and the GitHub guide and they are pretty 
> >> spartan... is there more complete documentation for Capistrano somewhere 
> >> that I am missing?
> 
> --
> * You received this message because you are subscribed to the Google Groups 
> "Capistrano" group.
> * To post to this group, send email to [email protected]
> * To unsubscribe from this group, send email to 
> [email protected] For more options, visit this group at 
> http://groups.google.com/group/capistrano?hl=en
> 
> -- 
> * You received this message because you are subscribed to the Google Groups 
> "Capistrano" group.
> * To post to this group, send email to [email protected]
> * To unsubscribe from this group, send email to 
> [email protected] For more options, visit this group at 
> http://groups.google.com/group/capistrano?hl=en

-- 
* You received this message because you are subscribed to the Google Groups 
"Capistrano" group.
* To post to this group, send email to [email protected]
* To unsubscribe from this group, send email to 
[email protected] For more options, visit this group at 
http://groups.google.com/group/capistrano?hl=en

Reply via email to