title: Capistrano 3.4 Deployment Problems
body: <p>I have inherited a Rails project and I am unable to deploy it using the supplied instructions using Capistrano. I am not familiar with capistrano at all.</p>
  
  <p>Whatever I try I always get the following error message</p>
  
  <pre><code>(Backtrace restricted to imported tasks)
  cap aborted!
  ArgumentError: wrong number of arguments (1 for 2)
  
  Tasks: TOP =&gt; production
  (See full trace by running task with --trace)
  </code></pre>
  
  <p>This includes </p>
  
  <pre><code>$ bundle exec cap -T
  
  $ bundle exec cap production deploy
  </code></pre>
  
  <p>I am following the guide here <a href="https://github.com/capistrano/capistrano" rel="nofollow">https://github.com/capistrano/capistrano</a></p>
  
  <p>I have starred out important info but here is the a copy of the config/deploy/staging.rb</p>
  
  <pre><code>role :app, %w{deploy@**.**.**.**:****}
  role :web, %w{deploy@**.**.**.**:****}
  role :db,  %w{deploy@**.**.**.**:****}
  
  set :branch, 'develop'
  set :deploy_to, '/var/www/soreen.staged.ws'
  
  set :ssh_options, {
    keepalive: true,
    keepalive_interval: 60 #seconds
  }
  </code></pre>
  
  <p>and here is Capfile </p>
  
  <pre><code># Load DSL and Setup Up Stages
  require 'capistrano/setup'
  
  # Includes default deployment tasks
  require 'capistrano/deploy'
  
  require 'capistrano/rbenv'
  require 'capistrano/bundler'
  require 'capistrano/rails/migrations' 
  require 'capistrano/rails/assets'
  require 'capistrano/rails/collection'
  
  # Loads custom tasks from `lib/capistrano/tasks' if you have any defined.
  Dir.glob('lib/capistrano/tasks/*.rake').each { |r| import r }
  </code></pre>
  
  <p>and here is config/deploy.rb</p>
  
  <pre><code># config valid only for current version of Capistrano
  lock '3.4.0'
  
  set :application, 'Soreen'
  set :repo_url =&gt; "****************" 
  
  set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'vendor/bundle', 'public/system')
  
  set :rbenv_type, :user # or :system, depends on your rbenv setup
  set :rbenv_ruby, '2.1.2'
  set :rbenv_prefix, "RBENV_ROOT=#{fetch(:rbenv_path)} RBENV_VERSION=#    {fetch(:rbenv_ruby)} #{fetch(:rbenv_path)}/bin/rbenv exec"
  set :rbenv_map_bins, %w{rake gem bundle ruby rails}
  set :rbenv_roles, :all # default value
  
  namespace :deploy do
  
    desc 'Restart application'
    task :restart do
  on roles(:app), in: :sequence, wait: 5 do
        # Your restart mechanism here, for example:
        execute :mkdir, '-p', "#{ release_path }/tmp"
        execute :touch, release_path.join('tmp/restart.txt')
      end
    end
  
    after :publishing, :restart
  
    after :restart, :clear_cache do
      on roles(:web), in: :groups, limit: 3, wait: 10 do
  
      end
    end
  
  end
  </code></pre>
  
  <p>Please help !</p>