Назад | Перейти на главную страницу

Сценарий развертывания capistrano не работает при подключении Cisco AnyConnect VPN

Я новичок в capistrano и пытаюсь запустить скрипт для развертывания исходных кодов на сервере QA, который подключен к VPN. Протестирован скрипт в моей оболочке Git bash на машине с Windows. У меня нет проблем с подключением github, как показано ниже.

$ ssh -T git@github.com
Hi jkjunguser! You've successfully authenticated, but GitHub does not provide sh
ell access.

VPN-соединение с сетью клиента устанавливается с помощью Cisco ANyConnect v2.5. Протестированное SSH-соединение моей локальной оболочки с целевым сервером прошло успешно. Также протестировал соединение github с целевого сервера и не выявил проблем.

Однако, когда я запустил сценарий развертывания, я получил «Ошибка чтения длины ответа из сокета аутентификации». ошибка, как показано ниже.

$ cap qa deploy
  * ?[32m2013-05-30 13:53:16 executing `qa'?[0m
  * ?[32m2013-05-30 13:53:16 executing `deploy'?[0m
  * ?[32m2013-05-30 13:53:16 executing `deploy:update'?[0m
 ** transaction: start
  * ?[32m2013-05-30 13:53:16 executing `deploy:update_code'?[0m
    updating the cached checkout on all servers
    ?[33mexecuting locally: "git ls-remote git@github.com:cleanShot/client-ph
ase2.git master"?[0m
    ?[2;37mcommand finished in 7293ms?[0m
  * ?[33mexecuting "if [ -d /home/web/qa.client.com/shared/cached-copy ]; then
cd /home/web/qa.client.com/shared/cached-copy && git fetch -q origin && git fet
ch --tags -q origin && git reset -q --hard b0f37d41f5d8aa5716986725d1c72142536af
8d2 && git clean -q -d -x -f; else git clone -q -b master git@github.com:cleanShot
/client-phase2.git /home/web/qa.client.com/shared/cached-copy && cd /home/
web/qa.client.com/shared/cached-copy && git checkout -q -b deploy b0f37d41f5d8a
a5716986725d1c72142536af8d2; fi"?[0m
    servers: ["10.33.XX.XXX"]
Password:
    [10.33.XX.XXX] executing command
 ** [10.33.XX.XXX :: err] Error reading response length from authentication sock
et.
 ** [10.33.XX.XXX :: err] ERROR: Repository not found.
 ** [10.33.XX.XXX :: err] fatal: The remote end hung up unexpectedly
    ?[2;37mcommand finished in 2217ms?[0m
*** [?[34mdeploy:update_code?[0m] ?[34mrolling back?[0m
  * ?[33mexecuting "rm -rf /home/web/qa.client.com/releases/20130530015346; tru
e"?[0m
    servers: ["10.33.XX.XXX"]
    [10.33.XX.XXX] executing command
    ?[2;37mcommand finished in 522ms?[0m
failed: "sh -c 'if [ -d /home/web/qa.client.com/shared/cached-copy ]; then cd /
home/web/qa.client.com/shared/cached-copy && git fetch -q origin && git fetch -
-tags -q origin && git reset -q --hard b0f37d41f5d8aa5716986725d1c72142536af8d2
&& git clean -q -d -x -f; else git clone -q -b master git@github.com:company/
client-phase2.git /home/web/qa.client.com/shared/cached-copy && cd /home/web/
qa.client.com/shared/cached-copy && git checkout -q -b deploy b0f37d41f5d8aa571
6986725d1c72142536af8d2; fi'" on 10.33.XX.XXX 

Используемый сценарий развертывания приведен ниже. [deploy.rb]

set :repository, "git@github.com:cleanShot/client-phase2.git"
set :scm, :git
set :branch, fetch(:branch, "master")

set :use_sudo, false

set :normalize_asset_timestamps, false

ssh_options[:forward_agent] = true

task :qa do

    set :user, 'web'
    set :application, "qa.basspro.com"
    set :deploy_to, "/home/web/#{application}"
    set :deploy_via, :remote_cache
    set :current_path, "#{deploy_to}/current"
    set :releases_path, "#{deploy_to}/releases/"
    set :shared_path, "#{deploy_to}/shared/"
    role :web, "10.33.88.101"

end
after 'deploy:update', :update_permission

Если есть какое-либо лекарство от этой «Ошибка чтения длины ответа из аутентификационного сокета». ошибка, что было бы здорово. Пожалуйста, дайте мне какой-нибудь полезный совет. Я рад попробовать любое предложение.