Capistrano + Мерзавец: репозиторий, локальный для рабочего сервера

Я пытаюсь сделать 'deploy:cold' для своего приложения. Мерзавец repo локален для моего сервера развертывания (т.е. у Меня только есть один сервер для всего, и я не размещаю свой код GitHub).

Вот расшифровка стенограммы (заменил мое название приложения "myapp" для конфиденциальности),

  * executing `deploy:cold'
  * executing `deploy:update'
 ** transaction: start
  * executing `deploy:update_code'
    executing locally: "git ls-remote /home/mrichman/git/myapp.git master"
fatal: '/home/mrichman/git/myapp.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
*** [deploy:update_code] rolling back
  * executing "rm -rf /var/www/myapp.com/releases/20100218203108; true"
    servers: ["myapp.com"]
Password:
    [myapp.com] executing command
    command finished
Command git ls-remote /home/mrichman/git/myapp.git master returned status code 32768

Вот мой deploy.rb: http://pastie.org/831424

Я также попробовал

set :repository, "deploy@localhost:/home/mrichman/git/myapp.git"

но это дает мне

ssh: connect to host localhost port 22: Connection refused

Любые идеи ценятся.

18
задан Holger Just 18 July 2013 в 15:51
поделиться

2 ответа

Просто столкнулся с той же проблемой. Ключ состоит в том, чтобы не использовать копию deploy_via, а вместо этого установить: local_repository

Это должно быть установлено на URL-адрес, который вы используете для доступа к репозиторию с вашего компьютера / ноутбука разработчика.

Так что у меня

set :repository, "file:///srv/git/myapp.git"
set :local_repository, "nameOfHostFromSSHConfig:/srv/git/myapp.git"

Кажется, сработало. Просто не забудьте затем удалить строку копии deploy_via.

16
ответ дан 30 November 2019 в 09:11
поделиться

Войдите в систему как пользователь сайта, на который вы развертываете, и попробуйте сделать следующее, чтобы проверить, есть ли у вашего пользователя разрешение на доступ к этому каталогу:

ls -la /home/mrichman/git/myapp.git

Если вы получаете ошибку Permission denied, то вам нужно убедиться, что вы установили разрешения на вложенные каталоги репозитория, которые позволяют сценарию развертывания получить доступ к файлам.

1
ответ дан 30 November 2019 в 09:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: