1
我使用两个相同的用于测试capistrano部署过程的相同流浪盒。我可以成功地将应用程序从dev
框部署到prod
框。但是,我无法摆脱密码确认。在流浪环境中摆脱mkdir命令的capistrano密码确认
据我可以看到从输出,确认发生在部署过程试图运行mkdir -p /capistrano/tmp
如下所示。
$ bundle exec cap production deploy --trace
** Invoke production (first_time)
** Execute production
** Invoke load:defaults (first_time)
** Execute load:defaults
** Invoke deploy (first_time)
** Execute deploy
** Invoke deploy:starting (first_time)
** Execute deploy:starting
** Invoke deploy:check (first_time)
** Invoke git:check (first_time)
** Invoke git:wrapper (first_time)
** Execute git:wrapper
00:00 git:wrapper
01 mkdir -p /capistrano/tmp
[email protected]'s password:
prod
服务器上的当前权限如下(我已经如所描述的手动scp: /tmp/git-ssh.sh: Permission denied授予777):
[email protected]:~$ ls -l/
drwxrwxrwx 3 vagrant vagrant 4096 Apr 7 16:30 capistrano
[email protected]:~$ ls -l /capistrano/
drwxrwxrwx 2 vagrant vagrant 4096 Apr 7 16:33 tmp
然后,当我键入密码,它下/capistrano/tmp/
路径创建git-ssh-football-production-vagrant.sh
。
[email protected]:~$ ls -l /capistrano/tmp/
-rwx------ 1 vagrant vagrant 93 Apr 7 16:33 git-ssh-football-production-vagrant.sh
我已经删除/创建/使用不同的文件夹有777个权限游民用户,并试图www-data
很好,但无法摆脱密码确认。
deploy.rb
...
set :tmp_dir, "/capistrano/tmp"
set :user, "vagrant"
...
production.rb