Capistrano 不显示错误或中断部署
Capistrano not showing errors or interrupting deploy
我正在使用 Capist运行o 部署我的应用程序,并且我的部署 运行 在第一次 cap 生产部署后成功部署,跳过所有错误、迁移和丢失的 gem。
INFO [b6487eaf] Finished in 0.329 seconds with exit status 0 (successful).
当然服务器不工作,因为我有一堆缺少的配置、gem 等。但是 Cap 说一切都很好,并成功终止了我的部署!
deploy.rb:
lock '3.4.0'
set :application, 'myapp'
set :repo_url, 'git@github.com:name/myapp.git'
set :deploy_to, '/home/deploy/myapp'
set :deploy_user, 'deploy'
set :linked_files, fetch(:linked_files, []).push('config/database.yml', '.env')
set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'vendor/bundle', 'public/system', 'public/uploads')
namespace :deploy do
desc 'Restart application'
task :restart do
on roles(:app), in: :sequence, wait: 5 do
execute :touch, release_path.join('tmp/restart.txt')
end
end
after :publishing, :restart
end
deploy/production.rb
role :app, %w{deploy@123.456.78.09}
role :web, %w{deploy@123.456.78.09}
role :db, %w{deploy@123.456.78.09}
set :rails_env, :production
server '123.456.78.09', user: 'deploy', roles: %w{app db web}, primary: true
set :ssh_options, {
keys: %w(/Users/user/.ssh/id_rsa),
forward_agent: true,
auth_methods: %w(publickey password)
}
原来我的 Capfile 设置错了,忘记了
require 'capistrano/rails'
行。没有它,capistrano 只是上传了没有 运行 rails 相关命令的文件
我正在使用 Capist运行o 部署我的应用程序,并且我的部署 运行 在第一次 cap 生产部署后成功部署,跳过所有错误、迁移和丢失的 gem。
INFO [b6487eaf] Finished in 0.329 seconds with exit status 0 (successful).
当然服务器不工作,因为我有一堆缺少的配置、gem 等。但是 Cap 说一切都很好,并成功终止了我的部署!
deploy.rb:
lock '3.4.0'
set :application, 'myapp'
set :repo_url, 'git@github.com:name/myapp.git'
set :deploy_to, '/home/deploy/myapp'
set :deploy_user, 'deploy'
set :linked_files, fetch(:linked_files, []).push('config/database.yml', '.env')
set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'vendor/bundle', 'public/system', 'public/uploads')
namespace :deploy do
desc 'Restart application'
task :restart do
on roles(:app), in: :sequence, wait: 5 do
execute :touch, release_path.join('tmp/restart.txt')
end
end
after :publishing, :restart
end
deploy/production.rb
role :app, %w{deploy@123.456.78.09}
role :web, %w{deploy@123.456.78.09}
role :db, %w{deploy@123.456.78.09}
set :rails_env, :production
server '123.456.78.09', user: 'deploy', roles: %w{app db web}, primary: true
set :ssh_options, {
keys: %w(/Users/user/.ssh/id_rsa),
forward_agent: true,
auth_methods: %w(publickey password)
}
原来我的 Capfile 设置错了,忘记了
require 'capistrano/rails'
行。没有它,capistrano 只是上传了没有 运行 rails 相关命令的文件