Ошибка при развертывании проекта Rails с Capistrano и Assembla - PullRequest
0 голосов
/ 29 октября 2011

Я запустил новый проект в rails и настроил сервер и сборку, чтобы мои файлы Subversion были в Assembla и развернуты с Capistrano на моем сервере.

Проблема в том, что когда я выполняю cap-развертывание, я получаюсообщение об ошибке:

  * executing `deploy'
  * executing `deploy:update'
 ** transaction: start
  * executing `deploy:update_code'
    executing locally: "svn info https://subversion.assembla.com/svn/myappname/trunk/  -rHEAD"
    command finished in 4687ms
  * executing "svn export -q  -r4 https://subversion.assembla.com/svn/myappname/trunk/ /home/administrator/myappname/releases/20111028232813 && (echo 4 > /home/administrator/myappname/releases/20111028232813/REVISION)"
    servers: ["my.server.url"]
Password: 
    [my.server.url] executing command
 ** [my.server.url :: out] Authentication realm: <https://subversion.assembla.com:443> Assembla Restricted Area
 ** Password for 'administrator':
 ** [my.server.url :: out]
 ** [my.server.url :: out] Authentication realm: <https://subversion.assembla.com:443> Assembla Restricted Area
 ** Username:

после этого я добавляю свое имя пользователя на Assembla, и оно просто там зависает, и больше ничего не происходит

Мой deploy.rb имеет правильный URL-адрес svn, идентификатор и пароль (я сделалубедитесь в этом, проверив URL-адрес в браузере и введя эти учетные данные)

Я также попытался очистить svn, как предложено в другом посте , но мне не повезло.

Как я могу решить эту проблему?Заранее спасибо

Ответы [ 2 ]

1 голос
/ 29 октября 2011

Запуск проверки хранилища на сервере, сохранение пароля, а затем установка svn-информации deploy.rb следующим образом:

set :svn_user, Proc.new { Capistrano::CLI.password_prompt("SVN user: ") }
set :svn_password, Proc.new { Capistrano::CLI.password_prompt("SVN password for '#{svn_user}': ") }
set :repository,
Proc.new { "--username #{svn_user} --password #{svn_password} your_svn_url" }

где your_svn_url установлен с http, а не с https

0 голосов
/ 21 февраля 2012

В дополнение к тому, что написал @marimaf, вы также можете установить переменные окружения для имени пользователя и пароля svn (если хотите, распознавая проблемы безопасности) и сделать этот запрос довольно бесплатным.

Итак,

$ export SVN_USER=username
$ export SVN_PASSWORD=password

и замените вышеприведенные наборы на

set :svn_user, ENV['SVN_USER'] || Proc.new { Capistrano::CLI.password_prompt("SVN user: ") }
set :svn_password, ENV['SVN_PASSWORD'] || Proc.new { Capistrano::CLI.password_prompt("SVN password for '#{svn_user}': ") }
...