I'm stumped. I've never seen that message from subversion before. What version of svn have you got? What are you typing to deploy your app?
- Jamis On May 31, 2007, at 2:29 PM, Scott wrote: > > 1.4.1 with no 3rd party extensions that I am aware of. > > My deploy.rb follows. > > Thanks! > > > > # This defines a deployment "recipe" that you can feed to capistrano > # (http://manuals.rubyonrails.com/read/book/17). It allows you to > automate > # (among other things) the deployment of your application. > > # > ====================================================================== > ======= > # REQUIRED VARIABLES > # > ====================================================================== > ======= > # You must always specify the application and repository for every > recipe. The > # repository must be the URL of the repository you want this recipe to > # correspond to. The deploy_to path must be the path on each machine > that will > # form the root of the application path. > > set :application, "my_app" > set :repository, "svn+ssh://[EMAIL PROTECTED]/var/www/virtual/ > my_app.com/ > svn/repository/my_app" > # > ====================================================================== > ======= > # ROLES > # > ====================================================================== > ======= > # You can define any number of roles, each of which contains any > number of > # machines. Roles might include such things as :web, or :app, or :db, > defining > # what the purpose of each machine is. You can also specify options > that can > # be used to single out a specific subset of boxes in a particular > role, like > # :primary => true. > > role :web, "www.myapp.com" > role :app, "www.myapp.com" > role :db, "www.myapp.com" > > # > ====================================================================== > ======= > # OPTIONAL VARIABLES > # > ====================================================================== > ======= > set :deploy_to, "/var/www/virtual/my_app.com/#{application}" # > defaults to "/u/apps/#{application}" > set :user, "me" # defaults to the currently logged in user > # set :scm, :darcs # defaults to :subversion > # set :svn, "/path/to/svn" # defaults to searching the PATH > # set :darcs, "/path/to/darcs" # defaults to searching the PATH > # set :cvs, "/path/to/cvs" # defaults to searching the PATH > # set :gateway, "gate.host.com" # default to no gateway > > # > ====================================================================== > ======= > # SSH OPTIONS > # > ====================================================================== > ======= > # ssh_options[:keys] = %w(/path/to/my/key /path/to/another/key) > # ssh_options[:port] = 25 > > # > ====================================================================== > ======= > # TASKS > # > ====================================================================== > ======= > # Define tasks that run on all (or only some) of the machines. You can > specify > # a role (or set of roles) that each task should be executed on. You > can also > # narrow the set of servers to a subset of a role by specifying > options, which > # must match the options given for the servers to select > (like :primary => true) > > desc <<DESC > An imaginary backup task. (Execute the 'show_tasks' task to display > all > available tasks.) > DESC > task :backup, :roles => :db, :only => { :primary => true } do > # the on_rollback handler is only executed if this task is executed > within > # a transaction (see below), AND it or a subsequent task fails. > on_rollback { delete "/tmp/dump.sql" } > > run "mysqldump -u theuser -p thedatabase > /tmp/dump.sql" do |ch, > stream, out| > ch.send_data "thepassword\n" if out =~ /^Enter password:/ > end > end > > # Tasks may take advantage of several different helper methods to > interact > # with the remote server(s). These are: > # > # * run(command, options={}, &block): execute the given command on all > servers > # associated with the current task, in parallel. The block, if > given, should > # accept three parameters: the communication channel, a symbol > identifying the > # type of stream (:err or :out), and the data. The block is invoked > for all > # output from the command, allowing you to inspect output and act > # accordingly. > # * sudo(command, options={}, &block): same as run, but it executes > the command > # via sudo. > # * delete(path, options={}): deletes the given file or directory from > all > # associated servers. If :recursive => true is given in the options, > the > # delete uses "rm -rf" instead of "rm -f". > # * put(buffer, path, options={}): creates or overwrites a file at > "path" on > # all associated servers, populating it with the contents of > "buffer". You > # can specify :mode as an integer value, which will be used to set > the mode > # on the file. > # * render(template, options={}) or render(options={}): renders the > given > # template and returns a string. Alternatively, if the :template key > is given, > # it will be treated as the contents of the template to render. Any > other keys > # are treated as local variables, which are made available to the > (ERb) > # template. > > desc "Demonstrates the various helper methods available to recipes." > task :helper_demo do > # "setup" is a standard task which sets up the directory structure > on the > # remote servers. It is a good idea to run the "setup" task at least > once > # at the beginning of your app's lifetime (it is non-destructive). > setup > > buffer = render("maintenance.rhtml", :deadline => ENV['UNTIL']) > put buffer, "#{shared_path}/system/maintenance.html", :mode => 0644 > sudo "killall -USR1 dispatch.fcgi" > run "#{release_path}/script/spin" > delete "#{shared_path}/system/maintenance.html" > end > > # Override the restart task - SJT > desc "Restart mongrel on my server" > task :restart_mongrel do > run "mongrel_rails cluster::stop" > run "mongrel_rails cluster::start" > end > > #Override the deploy task - SJT > desc "Deploy to my server." > task :deploy do > transaction do > update_code > symlink > #migrate > #restart_mongrel > end > end > > #Override the migrate task - SJT > desc "Migrate the db" > task :migrate do > run "RAILS_ENV=production rake db:migrate" > end > > # You can use "transaction" to indicate that if any of the tasks > within it fail, > # all should be rolled back (for each task that specifies an > on_rollback > # handler). > > desc "A task demonstrating the use of transactions." > task :long_deploy do > transaction do > update_code > disable_web > symlink > migrate > end > > restart > enable_web > end > > > On 31 May, 10:19, Jamis Buck <[EMAIL PROTECTED]> wrote: >> Scott, >> >> What version of capistrano are you using? What does your deploy.rb >> look like? Are you using any third-party capistrano extensions? >> >> - Jamis >> >> On May 31, 2007, at 10:45 AM, Scott wrote: >> >> >> >>> Hi, >> >>> I have backgroundrb installed via a svn external in my local env. >>> Now >>> all of a sudden when I do a cap deploy, I am getting the following >>> error: >> >>> svn: '/var/www/virtual/myhost.com/me/releases/20070531163621/vendor/ >>> plugins/backgroundrb' is already a working copy for a different URL >> >>> This was working before and something seemed to change. Anyone have >>> any ideas? >> >>> Thanks, >> >>> Scott > > > > --~--~---------~--~----~------------~-------~--~----~ To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/capistrano -~----------~----~----~----~------~----~------~--~---
