2016-02-28 60 views
0

我試圖使Node.js應用程序部署到運行capistrano 3:帽子流產了!不知道如何建設任務「部署:更新」

cap staging deploy:setup 

我上線得到一個錯誤,我的遠程服務器 :

after "deploy:update", "deploy:cleanup" 

默認部署任務應該是所有負載(更新,清理,..)?

這裏是我的deploy.rb文件

# config valid only for current version of Capistrano 
lock '3.4.0' 

set :application, 'cockpit-api' 
set :scm, :git 

set :repository, '[email protected]:user/myapp.git' 
set :branch, "master" 
set :deploy_to, '/var/www/myapp' 
set :deploy_via, :remote_cache 

set :copy_strategy, :checkout 
set :keep_releases, 5 

set :use_sudo, false 
set :copy_compression, :bz2 
set :normalize_asset_timestamps, false 

set :document_root, "/var/www/myapp" 

set :ssh_options, {:forward_agent => true} 
set :user, "deploy" 

命名空間:部署做

task :start do 
    on primary roles :app do 
    run "sudo restart #{application} || sudo start #{application}" 
    end 
end 

task :stop do 
    on primary roles :app do 
    run "sudo stop #{application}" 
    end 
end 

task :restart do 
    on primary roles :app do 
    start 
    end 
end 

task :npm_install do 
    on primary roles :app do 
    run "cd #{release_path} && npm install" 
    end 
end 

後 「部署:更新」 結束

, 「部署:清理」 後「deploy:update_code」,「deploy:npm_install」

staging.r b

set :stage, :staging 
server 'myapp.mydomain.com', user: 'deploy', roles: %w{app} 
role :app, "[email protected]" 

Capfile是相當最小

# Load DSL and set up stages 
require 'capistrano/setup' 

# Include default deployment tasks 
require 'capistrano/deploy' 

# Load custom tasks from `lib/capistrano/tasks` if you have any defined 
Dir.glob('lib/capistrano/tasks/*.rake').each { |r| import r } 
+0

我不清楚,有什麼錯誤? –

回答

0

我不知道怎麼的Node.js通常通過Capistrano的3部署,但也有這裏有很多錯誤。例如,Capistrano 3中沒有deploy:update這樣的東西,也沒有deploy:update_code。此外,Capistrano 3不具有稱爲:copy_strategy:copy_compression的設置。

我的猜測是,您遵循了爲Capistrano 2編寫的文檔或示例,並試圖將其添加到Capistrano 3項目中。不幸的是,這將無法正常工作,因爲Capistrano 2和3完全不同且不兼容。

我建議尋找一個最高的Node.js + Capistrano的日期的例子,明確提到Capistrano的3

+0

感謝馬特...我現在已經設置了Capistrano 3部署,刪除不推薦使用的設置並在掛接後更新...沒有實際特定於node.js部署的任何內容,除了將節點模塊安裝到共享文件夾中的任務以及啓動新手工作(如果使用,像我一樣) – erwin

相關問題