У меня есть настройки Azure Devops Git, Nexus Central Repository и Jenkins. И моя локальная кодовая база находится в затмении, откуда я хотел бы запустить сборку maven позже, чтобы снимки и выпуски загружались в Nexus Repository позже. Но в настоящее время, когда я запускаю сборки в Jenkins Freestyle Item для проекта, который я настроил, я установил соединение через ключи SSH и личные маркеры Git-хранилища Azure Devops с Nexus Central Repository и местоположением Azure Devops Git. Соединение установлено успешно, и я могу успешно запустить сборку в Jenkins, то есть получить все файлы из Nexus. Но в конце сборки Jenkins выдает отчет об ошибке сборки, и Jenkins выдает ошибку
Unable to commit files
Provider message:
The git-push command failed.
Permission denied, please try again.
***@vs-ssh.visualstudio.com: Permission denied (password,publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.
Я сгенерировал ключи безопасности RSA в папке C: \ Users ***. Ssh \, в которой есть 3 файла: id_rsa (закрытый ключ), id_rsa.pub (открытый ключ) и known_hosts. Из этой проблемы я понимаю, что мне нужно было добавить ключ SSH в мой агент SSH (добавив открытый ключ к моему хосту Azure Devops и файлу known_hosts), чтобы мой компьютер знал, как его использовать.
Я попытался запустить команду ниже из Git Bash
$ ssh -i ~/.ssh/id_rsa abc@***.visualstudio.com/ -v
и тогда у меня была ошибка, как показано ниже
ssh: Could not resolve hostname **.visualstudio.com/: Name or service not known
Я не могу связаться через порт 22 для SSH, хотя я настроил правила для входящих / исходящих сообщений в брандмауэре Windows и открыл все порты. И я также сделал переменную «HOME» User Variable в среде Environment, указывая на мой домашний каталог пользователя C: \ Users *** \ в соответствии с необходимостью установки Jenkins SSH.
Пожалуйста, помогите мне в этом, так как я не уверен, где я делаю неправильно.