4

执行后

cap deploy:setup

我收到这个错误

failed: "sh -c 'sudo -p '\\''sudo password: '\\'' mkdir -p /u/apps/blog /u/apps/blog/releases /u/apps/blog/shared /u/apps/blog/shared/system /u/apps/blog/shared/log /u/apps/blog/shared/pids'" on foobar.com

这是我的 deploy.rb 的内容

require 'capistrano'


    # Account Settings
    set :user, "user"
    set :password, "pass"
    set :domain, "foobar.com"
    set :mount_path, "/"
    set :application, "blog"

    set :repository, "/Users/me/Desktop/project"
    set :local_repository, "/Users/me/Desktop/project"
    set :scm, :git
    set :deploy_via, :copy

    role :app, 'foobar.com'
role :web, 'foobar.com'

可能是什么问题呢 ?

//编辑

*** [err :: foobar.com] stdin: is not a tty
*** [err :: foobar.com] sudo:
*** [err :: foobar.com] can't mkdir /var/db/sudo: No such file or directory
*** [err :: foobar.com] sudo:
*** [err :: foobar.com] no tty present and no askpass program specified
failed: "sh -c 'sudo -p '\\''sudo password: '\\'' mkdir -p /u/apps/blog /u/apps/blog/releases /u/apps/blog/shared /u/apps/blog/shared/system /u/apps/blog/shared/log /u/apps/blog/shared/pids'" on foobar.com
4

2 回答 2

24

将此行添加到您的deploy.rb(例如之后set :application, "blog"

default_run_options[:pty] = true

现在运行:

cap -v deploy:setup

如果您没有 sudo 权限,请将此行添加到deploy.rb

set :use_sudo, false

/u/apps/blog您必须具有创建目录或更改部署文件夹的权限:

set :deploy_to, "/home/user_name/apps/blog"
于 2012-07-19T14:14:25.030 回答
1
# Default value for :pty is false
set :pty, true
于 2015-12-14T13:38:01.080 回答