title: capistrano deploy:migration does not exist
body: <p>This is my first rails project and its been a real pleasure working with capistrano.</p>
  
  <p>My current issue is that I need to run cap deploy:migrate and cap:deploy:migration as seperate tasks. I believe there should be a cap deploy:migration which combines these.</p>
  
  <p>Here is my terminal output:</p>
  
  <pre><code>kris$ cap staging deploy:migration
        triggering load callbacks
       * executing `staging'
      the task `deploy:migration' does not exist
  </code></pre>
  
  <p>My setup is using multi stages and is using the RVM capistrano plugin.</p>
  
  <p>Here is my gem file:</p>
  
  <pre><code>source 'https://rubygems.org'
  
  gem 'rails', '3.2.1'
  
  group :development do
    gem 'sqlite3'
  end
  
  group :production do
    gem 'mysql2'
  end
  
  group :test do
    gem 'sqlite3'
    gem 'ZenTest'
  end
  
  # Gems used only for assets and not required
  # in production environments by default.
  group :assets do
    gem 'sass-rails',   '~&gt; 3.2.3'
    gem 'coffee-rails', '~&gt; 3.2.1'
    gem 'uglifier', '&gt;= 1.0.3'
  end
  
  #formtastic 2.2 breaks activeadmin
  gem "formtastic", "~&gt; 2.1.1"
  gem "activeadmin", "~&gt; 0.4.3"
  
  # meta_search required for activeadmin
  gem 'meta_search'
  
  gem 'jquery-rails'
  gem "paperclip", "~&gt; 3.0"
  
  gem 'acts_as_list'
   gem 'unicorn'
  
  # Deploy with Capistrano
   gem 'capistrano'
   gem 'rvm-capistrano'
  
  gem 'mail'
  gem 'friendly_id'
  </code></pre>
  
  <p>and here is my config/deploy file:</p>
  
  <pre><code>set :rvm_ruby_string, 'ruby-1.9.3-p194@xxx'                     # Or:
  #set :rvm_ruby_string, ENV['GEM_HOME'].gsub(/.*\//,"") # Read from local system
  
  require "rvm/capistrano"                               # Load RVM's capistrano plugin.
  require "bundler/capistrano"
  
  # set :verbose ,1
  
  require 'capistrano/ext/multistage'
  set :stages, %w(staging production)
  set :default_stage, "staging"
  set :deploy_via, :remote_cache
  
  set :user, "webm"
  # set :deploy_via, :remote_cache
  set :use_sudo, false
  
  set :scm, "git"
  set :repository, "git@xx.beanstalkapp.com:/xx.git"
  
  # :branch is being set in stage files
  
  default_run_options[:pty] = true
  # ssh_options[:forward_agent] = true
  
  after "deploy", "deploy:cleanup" # keep only the last 5 releases
  
  namespace :deploy do
      %w[start stop restart].each do |command|
          desc "#{command} unicorn server"
          task command, roles: :app, except: {no_release: true} do
              run "#{sudo} service unicorn_#{server_configuration} #{command}"
          end
      end
  
      desc "build missing paperclip styles"
      task :build_missing_paperclip_styles, :roles=&gt; :app do
          run "cd #{release_path}; RAILS_ENV=production bundle exec rake paperclip:refresh:missing_styles"
      end
      after "deploy:update", "deploy:build_missing_paperclip_styles"
  
      task :setup_config, roles: :app do
          puts "#making symlink to nginx sites-enabled"
          run "#{sudo} ln -fs #{current_path}/config/server/#{server_configuration}/nginx.conf /etc/nginx/sites-enabled/#{server_configuration}"
          puts "#making symlink to unicorn service script"
          run "#{sudo} ln -fs #{current_path}/config/server/#{server_configuration}/unicorn_init.sh /etc/init.d/unicorn_#{server_configuration}"
          puts "#making a the new config directory"
          run "mkdir -p #{shared_path}/config"
          run "sunique 1"
          put File.read("config/database.yml"), "#{shared_path}/config/database.yml"
          run "sunique 0"
          puts "Now edit the config files in #{shared_path}."
      end
      after "deploy:setup", "deploy:setup_config"
  
      task :symlink_config, roles: :app do
          run "ln -nfs #{shared_path}/config/database.yml #{release_path}/config/database.yml"
  
          puts "#for reference:"
          puts "#rvm wrapper 1.9.3@ac_helenefrance_01 ruby-1.9.3-p194@#{server_configuration} unicorn cap"
          puts "#now be sure to run: sudo update-rc.d unicorn_#{server_configuration} defaults"
      end
      after "deploy:finalize_update", "deploy:symlink_config"
  
      # desc "Make sure local git is in sync with remote."
      # task :check_revision, roles: :web do
          # if :isRemote == false
              # unless `git rev-parse HEAD` == `git rev-parse beanstalk/#{branch}`
                  # puts "WARNING: HEAD is not the same as beanstalk/#{branch}"
                  # puts "Run `git push` to sync changes."
                  # exit
              # end
          # end
      # end
      #before "deploy", "deploy:check_revision"
  end
  </code></pre>
  
  <p>Any help with why <code>deploy:migration</code> is broken would be very helpful.
  thank you.</p>