Мне нужно получить файлы из нескольких репозиториев Codecommit в экземпляр Ubuntu Codebuild. Итак, я пытаюсь клонировать репозитории с использованием аутентификации ssh. Я уже настроил ключи ssh и файл конфигурации для экземпляра, проблема возникает, когда я делаю git clone
. Я использую expect
, чтобы ответить на запрос на первое соединение ssh. Вот мой сценарий ожидания cloneRepo.sh
:
#! / usr / bin / ожидать
установить тайм-аут 20
создать git clone ssh: //git-codecommit.us-east-1.amazonaws.com/v1/repos/myrepo / tmp / myrepo
ожидайте "Вы уверены, что хотите продолжить соединение (да / нет)?" {отправь "да \ г"}
ожидать "Разрешение дельт: 100% (* / *), готово." {}
взаимодействовать
Когда я запускаю его в Codebuild, все выглядит нормально:
[Контейнер] Выполнение команды echo "Клонирование репозиториев Git"
Клонирование репозиториев Git[Контейнер] Запуск команды sudo ./cloneRepo.sh
spawn git clone ssh: //git-codecommit.us-east-1.amazonaws.com/v1/repos/myrepo / tmp / myrepo
Клонирование в ' / tmp / myrepo '...
Подлинность хоста' git-codecommit.us-east-1.amazonaws.com 'не может быть установлена.
Отпечаток ключа RSA: a6: 9c: 7d: bc : 35: f5: d4: 5f: 8b: ba: 6f: c8: bc: d4: 83: 84.
Вы уверены, что хотите продолжить соединение (да / нет)? yes
Предупреждение: «git-codecommit.us-east-1.amazonaws.com» (RSA) постоянно добавлен в список известных хостов.удаленный:
удаленный: Подсчет объектов: 0
удаленный: Подсчет объектов: 40, готово.
Получение объектов: 2% (1/40)
...
Получение объектов: 100% (40/40)
Получение объектов: 100% (40/40), 6.66 Кбайт | 6,66 МБ / с, готово.
Разрешение дельт: 0% (0/20)
...
Разрешение дельт: 100% (20/20), выполнено.
Разрешение дельт: 100% (20/20)
Однако /tmp/
остается пустым:
[Контейнер] Выполнение команды ls -la / tmp /
всего 8
drwxrwxrwt 2 root root 4096 1 августа 02:04.
drwxr-xr-x 22 root root 4096 1 августа 02:02 ..
Похоже на какую-то ошибку разрешений, но я просто не могу понять это.
Заранее спасибо!
exp_internal 1
передspawn
, и посмотрите, что-то не так. - person pynexj   schedule 01.08.2018