1

我正在编写一个 capistrano 脚本来部署 PHP 应用程序这是我的基本脚本

set :default_stage, "staging"
ssh_options[:forward_agent] = true
server "capistrano.myserver.com", :app, :web, :db, :primary => true
set :application, "PHP_App_capified"
set :scm, :git
set :repository, '.'
default_run_options[:pty] = true

set :user, 'capi5784'
set :deploy_to, "/home/user/public_html"    

set :deploy_via, :copy
set :use_sudo, false
set :copy_exclude, [".git", ".DS_Store", ".gitignore", ".gitmodules", "Capfile", "config/deploy.rb"]

当我运行 cap deploy 时,出现以下错误

failed: "sh -c 'cd /home/myserver/public_html/releases && tar xzf /tmp/20130808120301.tar.gz && rm /tmp/20130808120301.tar.gz'" on capistrano.myserver.com

有什么建议我做错了吗?

4

1 回答 1

1

两件事情:

  1. 你能从你的机器上 ssh 到 capistrano.myserver.com 吗?

  2. 我认为您需要启用 use_sudo。

set :use_sudo, true

您需要 sudo 访问权限才能从 /tmp 中删除某些内容

于 2013-08-08T13:43:22.253 回答