Ошибка конвейера Jenkins: «Выбранная установка Git не существует»

Я настраиваю конвейер Jenkins, который извлекает сценарий из SCM. Однако во время выполнения конвейера возникает ошибка. Конвейер настроен для работы внутри контейнера Docker с установленными Jenkins и Git. Вот подробности:

Obtained Jenkinsfile from git https://github.com/Sidharth-Singh10/testscore
[Pipeline] Start of Pipeline
[Pipeline] node
Running on Jenkins in /var/jenkins_home/workspace/trail2
[Pipeline] {
[Pipeline] stage
[Pipeline] { (Declarative: Checkout SCM)
[Pipeline] checkout
Selected Git installation does not exist. Using Default
The recommended git tool is: NONE
No credentials specified
 > git rev-parse --resolve-git-dir /var/jenkins_home/workspace/trail2/.git # timeout=10
Fetching changes from the remote Git repository
 > git config remote.origin.url https://github.com/Sidharth-Singh10/testscore # timeout=10
Fetching upstream changes from https://github.com/Sidharth-Singh10/testscore
 > git --version # timeout=10
 > git --version # 'git version 2.39.2'
 > git fetch --tags --force --progress -- https://github.com/Sidharth-Singh10/testscore +refs/heads/*:refs/remotes/origin/* # timeout=10
 > git rev-parse refs/remotes/origin/main^{commit} # timeout=10
Checking out Revision 1f42c4a68d6dce1797bc27aaf709e61118dd74b3 (refs/remotes/origin/main)
 > git config core.sparsecheckout # timeout=10
 > git checkout -f 1f42c4a68d6dce1797bc27aaf709e61118dd74b3 # timeout=10
Commit message: "Create Jenkinsfile"
First time build. Skipping changelog.

Дженкинсфайл:

pipeline {
    agent any

    environment {
        DOCKER_IMAGE = 'sidharthsingh7/ss_backend'
        DOCKER_TAG = "0.0.1.RELEASE"
    }

    stages {
        stage('Checkout') {
            steps {
                git scm
            }
        }

        stage('Build') {
            steps {
                script {
                    sh 'docker build -t $DOCKER_IMAGE:$DOCKER_TAG .'
                }
            }
        }

        stage('Test') {
            steps {
                script {
                    sh 'docker run --rm $DOCKER_IMAGE:$DOCKER_TAG npm test'
                }
            }
        }

        stage('Push to Docker Hub') {
            steps {
                script {
                    sh 'echo $DOCKERHUB_CREDENTIALS_PSW | docker login -u $DOCKERHUB_CREDENTIALS_USR --password-stdin'
                    sh 'docker push $DOCKER_IMAGE:$DOCKER_TAG'
                }
            }
        }
    }
}

Среда:

Jenkins is running in a Docker container.
The Git plugin is installed and up to date.
Git version is 2.39.2.

Проблема: Конвейер завершается с ошибкой с сообщением: «Выбранная установка Git не существует. Используется значение по умолчанию. Рекомендуемый инструмент git: НЕТ».

Вопросы:

Why is Jenkins unable to recognize the Git installation?
How can I resolve the issue and ensure Jenkins uses the installed Git version?

Шаги, которые я пробовал:

Ensured the Git plugin is installed.
Verified Git is installed and accessible within the Docker container (git --version returns 2.39.2).
Checked Jenkins configuration for Git installation paths.

Любая помощь или руководство будут очень признательны!

Спасибо.

Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Kubernetes - это портативная, расширяемая платформа с открытым исходным кодом для управления контейнерными рабочими нагрузками и сервисами, которая...
Как создать PHP Image с нуля
Как создать PHP Image с нуля
Сегодня мы создадим PHP Image from Scratch для того, чтобы легко развернуть базовые PHP-приложения. Пожалуйста, имейте в виду, что это разработка для...
0
0
123
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Журнал Selected Git installation does not exist. Using Default. The recommended git tool is: NONE. — это не ошибка, а просто предупреждение.

Доказательством является то, что после этого сообщения выполнение продолжается, и другие команды git выполняются без ошибок:

Если git не существует, журнал будет таким:

git проверить

Чтобы проверить, существует ли git, вы можете перечислить клонированные файлы после клонирования и перед сборкой с помощью команды ls -la:

pipeline {
    agent any

    environment {
        DOCKER_IMAGE = 'sidharthsingh7/ss_backend'
        DOCKER_TAG = "0.0.1.RELEASE"
    }

    stages {
        stage('Checkout') {
            steps {
                git scm
            }
        }

        stage('Validate') {
            steps {
                script {
                    sh 'ls -la'
                }
            }
        }

Если вы видите свою папку и файлы в журнале, значит, git уже установлен и работает.

Любая другая ошибка будет по другим причинам, без git

Исправьте предупреждение

Используя учетные данные администратора, перейдите в раздел администрирования и выберите расположение двоичного файла git.

Другие вопросы по теме