Folks,

I searched around this group and googled around but didn't find a
clear answer to this question. Hopefully this group can point me in
the right direction.

I have the following structure in my repository

<base dir>/Trunk/<typical RoR folders>
<base dir>/Trunk/public   <-- This is svn:external pointing to <base
dir>/shared/public
<base dir>/Trunk/vendor/rails   <-- This is svn: external pointing to
<base dir>/shared/vendor/rails

Couple questions -

1. When I do a cap deploy I get an error that says

    [www.mydomain.com] executing command
 ** [www.mydomain.com :: err] svn: '.' is not a working copy
 ** [www.mydomain.com :: err] svn: Can't open file '.svn/entries': No
such file or directory

When I take the svn checkout command that gets generated and add "--
ignore-externals" and run that it works fine without the error above.
It sounds like I need to add "--ignore-externals" to the svn checkout
command that gets generated.

I dug into the capistrano gem and found that in subversion.rb the
"authentication" function returns the svn command string. I added "--
ignore-externals" there conditioned on a variable in my deploy.rb.
However, it turns out that "svn info" command which runs before "svn
checkout" runs (to determine the latest version) also uses the same
"authentication" function to generate the command string and the "--
ignore-externals" that gets added to the "svn info" command is not a
valid option and it barfs.

So the question here is how do I do a cap deploy of my codebase where
there are directories that point to shared directories using
svn:external?

2. What is the best practice in terms of adding tasks for deploying
your shared code? In my case I will be making changes to files under
shared/public/javascripts directory that is linked from <base dir>/
Trunk/public/javascripts. Do I create separate tasks within the same
deploy.rb? Should I create a separate deploy_shared.rb that contains
tasks only for shared deployment? If so (and this is probably a simple
question but isn't obvious to me), how will deploy_shared.rb get
recognized by the capistrano infrastructure and how will one call
tasks listed within deploy_shared.rb? I created a deploy_shared.rb but
can't find a way to call tasks in that file from the cap command.

Thanks,
-S


--~--~---------~--~----~------------~-------~--~----~
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at http://groups.google.com/group/capistrano
-~----------~----~----~----~------~----~------~--~---

Reply via email to