Я пытаюсь заставить работать Gitlab CI / CD со случайным репозиторием для отправки всех файлов на удаленный сервер Debian. Мой предыдущий скрипт выглядит так:
- 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
- eval $(ssh-agent -s)
- echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
- '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
Как видите, я отправляю свой тестовый закрытый ключ на сервер Debian с открытым ключом в авторизованных ключах, но когда я запускаю работу в конвейере, я получаю
$ which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )
/usr/bin/ssh-agent
$ eval $(ssh-agent -s)
Agent pid 12
$ echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null
Enter passphrase for (stdin): ERROR: Job failed: exit code 1
Я уже пробовал другие клавиши, убедившись, что просто нажимаю клавишу возврата, я снова переопределил пароль в закрытом ключе, нажав клавишу возврата. Все остальные результаты в SO относятся к / dev / fd / 63 или не разрешены.