Подтвердить что ты не робот

Невозможно клонировать частное репо из файла предоставления Vagrant

У меня есть бранное обеспечение script, содержащее команды оболочки. Когда я пытаюсь клонировать частное репо через git и частные\открытые ключи в этом script, я получаю сообщение об ошибке:

Cloning into 'brand.api'...

Stderr from the command:

stdin: is not a tty
dpkg-preconfigure: unable to re-open stdin: No such file or directory
Host key verification failed.
fatal: The remote end hung up unexpectedly

Но когда я исключаю команду git clone ... из обеспечения script и назову ее сам в бродячем боксе, все в порядке.

Вот файл обеспечения:

#setting up Git
apt-get install -y git
mkdir ~/.ssh
mkdir ~/bin
cp /vagrant/bin/git-ssh.sh  ~/bin
cp /vagrant/keys/mygit.key ~/.ssh/mygit.key 
cp /vagrant/keys/mygit.pub ~/.ssh/mygit.pub

chmod 600 ~/.ssh/*
echo 'export GIT_SSH=~/bin/git-ssh.sh' >> ~/.bashrc
source ~/.bashrc

#installing brand-api
git clone [email protected]****.ru:brand.api.git

В чем проблема?

ОБНОВЛЕНО

После добавления git сервера репо к known_hosts я получаю следующее:

Stderr from the command:

stdin: is not a tty
dpkg-preconfigure: unable to re-open stdin: No such file or directory
Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,password).
fatal: The remote end hung up unexpectedly

Но если я запишусь в свой бокс через vagrant ssh и попытаюсь клонировать все в порядке.

4b9b3361

Ответ 1

Ключ SSH сервера git неизвестен/доверен. Когда вы клонируете репо вручную на виртуальной машине, вы получаете запрос с просьбой проверить отпечаток пальца, верно?

Вы можете либо пропустить проверку ключа хоста в ~/.ssh/config (или глобально в /etc/ssh/config или аналогично):

Host git.example.com
  StrictHostKeyChecking no

Или вы можете заранее добавить ключ к ~/.ssh/known_hosts (или /etc/ssh/ssh_known_hosts). Например:

ssh-keyscan -H git.example.com >> ~/.ssh/known_hosts

Ответ 2

Это работает для меня..

Попробуй поместить это в свое обеспечение .sh:

sudo -u vagrant git clone [email protected]****.ru:brand.api.git

Вместо:

git clone [email protected]****.ru:brand.api.git