Question

I am trying to deploy my Rails application to my remote test environment with Capistrano. I am using Git as my deploy source.

When I run cap development deploy everything appears to work. In my local log, I even see the new release supposedly deploy.

INFO [887154fa] Running /usr/bin/env echo "Branch dev deployed as release 20131219020401 by Clay; "

When I log into my remote server to validate the deploy of the release, I expect to see my web application updated. Instead, my latest commits have not been deployed. What is more curious is if I navigate to the remote myapp/releases folder I can see my release.

Why is this release not being published?

deploy.rb

require "capistrano/rvm"

set :rvm_ruby_string, :local           
set :rvm_autolibs_flag, "read-only" 
set :stages, %w(development, test, production)
set :default_stage, "development"
set :application, 'myapp'
set :repo_url, 'git@github.com:cometman/myapp.git'
set :deploy_to, '/var/www/myapp'
set :scm, :git
set :branch, "dev"
set :deploy_via, :copy
set :keep_releases, 5
Was it helpful?

Solution

The last step in a capistrano deployment is symlinking the working release directory from /app/releases/[TIMESTAMP] => /app/current. If this symlink has not been updated, but you see a release in the releases directory, something has failed along the way.

If you paste the entire logs of your deploy, I can help you find what has failed. You will need to solve the root cause of this failure in order to see a successful, complete deploy.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top