Мы пытаемся настроить конвейер CICD с помощью Jenkins. В настоящее время он находится в Azure DevOps. Наш код находится в репозитории Azure (GIT). У нас есть Jenkins, установленный на локальном сервере Windows.
С помощью фиктивного задания мы пытаемся получить код из репозитория Azure. Наш идентификатор имеет доступ для просмотра и клонирования репо. Когда я запускаю git clone <azure repo url http(not https)>
локально, я могу загрузить пакет. Но когда я настраиваю работу в SCM с GIT в качестве опции вместе с нашими учетными данными, возникает ошибка аутентификации.
Я даже пытался создать токен личного доступа и настроил его, чтобы проверить, работает ли он.
Через URL репозитория http.
Failed to connect to repository : Command "git.exe ls-remote -h -- http://**************************** HEAD" returned status code 128:
stdout:
stderr: fatal: Authentication failed for '***************************'
Я попытался сгенерировать ключи ssh и отправил открытый ключ в репозиторий Azure на вкладке «Безопасность» «Открытые ключи SSH». Все тот же.
Через URL репозитория ssh:
Failed to connect to repository : Command "git.exe ls-remote -h -- ssh://**********:22/******************* HEAD" returned status code 128:
stdout:
stderr: Unable to negotiate with *********** port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1,diffie-hellman-group14-sha1
fatal: Could not read from remote repository.
Я могу пропинговать URL-адрес репо из ящика Дженкинса.
Если репо TFS, я бы попробовал плагин TFS для аутентификации репо. Но это в репозитории GIT Azure.
Сообщите нам, если для этого необходимо включить какие-либо конкретные параметры на стороне Azure DevOps.
Имеет ли перехватчик службы Azure какие-либо последствия? Это как обычный вебхук, верно? На всякий случай, если какое-либо действие произошло в репо, нам нужно выполнить действия, основанные на этом. Нужно ли нам настраивать хук, чтобы он также имел доступ для чтения к репозиторию?
Пожалуйста, помогите мне с решением или обходным путем.
https://[email protected]/user/project/_git/repo
... По опыту, Azure DevOps использует особый формат. Повторите попытку с URL-адресом клона, взятым из пользовательского интерфейса. - person Matt   schedule 03.06.2021