Ich bekomme den folgenden Fehler, wenn ich versuche, eine Bereitstellung über ein "deploy" Benutzerkonto zu tun.capistrano Deployment Alptraum
1782001..ae10d1b master -> master
** transaction: start
* executing `deploy:update_code'
updating the cached checkout on all servers
executing locally: "git ls-remote [email protected]:username/app_name.git master"
* executing "if [ -d /var/www/app_name/shared/cached-copy ]; then cd /var/www/app_name/shared/cached-copy && git fetch -q origin && git reset -q --hard ae10d1bfe43820d8d69bbc92761a3f666cf56765 && git clean -q -d -x -f; else git clone -q [email protected]:username/app_name.git /var/www/app_name/shared/cached-copy && cd /var/www/app_name/shared/cached-copy && git checkout -q -b deploy ae10d1bfe43820d8d69bbc92761a3f666cf56765; fi"
servers: ["173.230.158.13"]
[173.230.158.13] executing command
** [173.230.158.13 :: out] error: cannot open .git/FETCH_HEAD: Permission denied
**
command finished
*** [deploy:update_code] rolling back
* executing "rm -rf /var/www/app_name/releases/20100930022459; true"
servers: ["173.230.158.13"]
[173.230.158.13] executing command
command finished
failed: "sh -c 'if [ -d /var/www/app_name/shared/cached-copy ]; then cd /var/www/app_name/shared/cached-copy && git fetch -q origin && git reset -q --hard ae10d1bfe43820d8d69bbc92761a3f666cf56765 && git clean -q -d -x -f; else git clone -q [email protected]:username/app_name.git /var/www/app_name/shared/cached-copy && cd /var/www/app_name/shared/cached-copy && git checkout -q -b deploy ae10d1bfe43820d8d69bbc92761a3f666cf56765; fi'" on 173.230.158.13
Ich kann bestätigen, dass ich ein „git clone“ tun, um die deploy Konto auf dem Server und SSH mit
Das gleiche Rezept [email protected] funktioniert gut, wenn ich „root“ angeben als die Benutzervariable.
Hier ist meine deploy.rb
Auch ich bin nicht sicher, was genau bedeutet das: Gruppenvariable dieses Rezept ist in.
drwxr-xr-x 14 deploy www-data 4096 2010-09-29 20:38 .
drwxr-xr-x 10 deploy www-data 4096 2010-09-29 20:38 ..
drwxr-xr-x 7 deploy www-data 4096 2010-09-29 13:13 app
-rwxr-xr-x 1 deploy www-data 240 2010-09-29 20:38 Capfile
drwxr-xr-x 5 deploy www-data 4096 2010-09-29 20:38 config
drwxr-xr-x 4 deploy www-data 4096 2010-09-29 20:38 db
drwxr-xr-x 2 deploy www-data 4096 2010-09-29 20:38 doc
drwxr-xr-x 9 deploy www-data 4096 2010-09-29 20:38 generate
drwxr-xr-x 8 deploy www-data 4096 2010-09-29 20:38 .git
-rwxr-xr-x 1 deploy www-data 156 2010-09-29 20:38 .gitignore
-rwxr-xr-x 1 deploy www-data 145 2010-09-29 20:38 .gitignore~
drwxr-xr-x 3 deploy www-data 4096 2010-09-29 20:38 lib
lrwxrwxrwx 1 deploy www-data 28 2010-09-29 20:38 log -> /var/www/voteable/shared/log
drwxr-xr-x 5 deploy www-data 4096 2010-09-29 20:38 public
-rwxr-xr-x 1 deploy www-data 457 2010-09-29 20:38 Rakefile
-rwxr-xr-x 1 deploy www-data 10011 2010-09-29 20:38 README
-rwxr-xr-x 1 deploy www-data 41 2010-09-29 20:38 REVISION
drwxr-xr-x 3 deploy www-data 4096 2010-09-29 20:38 script
drwxr-xr-x 6 deploy www-data 4096 2010-09-29 20:38 test
drwxr-xr-x 2 deploy www-data 4096 2010-09-29 20:38 tmp
-rwxr-xr-x 1 deploy www-data 810605 2010-09-29 20:38 uninstall
drwxr-xr-x 3 deploy www-data 4096 2010-09-29 13:13 vendor
Wer ist "Sie" in Ihrem eigenen .git. das Bereitstellungskonto? Bitte beachten Sie auch diesen anderen Beitrag zum selben/ähnlichen Problem .. kann verwandt sein http://stackoverflow.com/questions/3827331/strange-ssh-issues-with-github – badnaam
Sie sind Ihr Deploy Account. Wenn Sie ein 'ls -la' auf Ihrem .git/FETCH_HEAD machen, werden Sie sehen, dass es im Besitz von root ist. Sie müssen es also entweder dem Bereitstellungsbenutzer zuweisen oder chmod, damit der Bereitstellungsbenutzer es bearbeiten kann. –
yYou sind absolut richtig. In diesem Sinne .. Ich aktualisierte das OP mit der Erlaubnis auf meinem/www/var/app-Verzeichnis. Soll es so aussehen oder sollte www-data es besitzen? Mir ist sehr unklar, wer dieses Verzeichnis www-data besitzen sollte oder deploy – badnaam