У меня ниже простой скрипт в файле .gitlab-cl.yml:
build_deploy_stage:
stage: build
environment: Staging
only:
- master
script:
- mkdir -p ~/.ssh
- echo "$PRIVATE_KEY" >> ~/.ssh/id_dsa
- cat ~/.ssh/id_dsa
- chmod 600 ~/.ssh/id_dsa
- echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
- cat ~/.ssh/config
- scp myfile.js user@example.com:~
Но я получаю эту ошибку при выполнении задания, выполняющего последнюю строку (команда scp):
Warning: Permanently added 'example.com' (ECDSA) to the list of known hosts.
Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,password).
Я провел целый день, но не мог это исправить. Я проверил, что $ PRIVATE_KEY существует. Я сгенерировал пару ключей при входе в example.com, копируя сгенерированную приватную переменную в переменную PRIVATE_KEY на gitlab.
Как решить эту проблему?
Обратите внимание, что это ключ dsa.