Как установить DevStack, когда брандмауэр блокирует git

782
reukiodo

Я следовал руководству по адресу https://docs.openstack.org/developer/devstack/, но всегда выдает ошибки:

... [Call Trace] ./stack.sh:718:git_clone /opt/stack/devstack/functions-common:538:git_timed /opt/stack/devstack/functions-common:602:die [ERROR] /opt/stack/devstack/functions-common:602 git call failed: [git clone git://git.openstack.org/openstack/requirements.git /opt/stack/requirements --branch master] Error on exit ./stack.sh: line 506: generate-subunit: command not found stack@DevStack:~/devstack$ 

Итак, я попробовал последнюю команду ( git clone git://git.openstack.org/openstack/requirements.git /opt/stack/requirements --branch master) вручную и получил:

Cloning into '/opt/stack/requirements'... fatal: unable to connect to git.openstack.org: git.openstack.org[0: 104.130.246.128]: errno=Connection timed out git.openstack.org[1: 2001:4800:7819:103:be76:4eff:fe06:63c]: errno=Network is unreachable 

Я думаю, что это связано с использованием git://вместо, http://потому что, когда я пытаюсь заменить его, я получаю:

stack@DevStack:~/devstack$ git clone http://git.openstack.org/openstack/requirements.git /opt/stack/requirements --branch master Cloning into '/opt/stack/requirements'... remote: Counting objects: 18929, done. remote: Compressing objects: 100% (9696/9696), done. remote: Total 18929 (delta 12803), reused 15154 (delta 9213) Receiving objects: 100% (18929/18929), 2.83 MiB | 2.79 MiB/s, done. Resolving deltas: 100% (12803/12803), done. Checking connectivity... done. stack@DevStack:~/devstack$ 

Я предполагаю, что это потому, что я за ограниченным брандмауэром компании. Так как же заставить скрипт установки использовать http вместо git?

0

2 ответа на вопрос

0
reukiodo

Ну, я уверен, что это не лучший способ, но используя комбинацию ответов из:

Я использовал, grep -rlnw '/opt/stack/' -e 'git:' | xargs -i@ sed -i 's/git:/http:/g' @чтобы заменить git://с http://.

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

watch -n 1 grep -rlnw '/opt/stack/' -e 'git:' | xargs -i@ sed -i 's/git:/http:/g' @

0
B1T0

В клонированном репозитории отредактируйте строку 228 в stackrcфайле. Вы можете легко заменить свой git://путь https://.