Использовать учетные данные Git workflow-scm из конвейера Jenkins - PullRequest
0 голосов
/ 23 апреля 2019

Мне нужно выполнить сложный рабочий процесс Git как запланированную работу в Jenkins, в многоотраслевом проекте. Я использую плагин workflow-scm для проверки ветви и надеялся использовать необработанные команды git на других этапах конвейера.

Рабочий процесс выглядит следующим образом:

  1. Проверить ветку под вопросом
  2. Объединить изменения из другой ветки
  3. Нажмите

Вот что я сделал:

    def SOURCE_BRANCH = "master"

       stage('Checkout') {
           def map = checkout scm
           // for debug
           map.each{ k, v -> println "${k}:${v}" }
        }



        stage('Merge') {
            // this is where it fails
            sh """
            git pull origin $SOURCE_BRANCH
            """
        }


        stage('Push') {
            sh """
            git push --dry-run
            """
        }

Я получаю сообщение об ошибке:

+ git pull origin develop
fatal: could not read Username for 'http://git-url:port': No such device or address

Следует отметить, git-url - это пользовательский URL-адрес сервера Bitbucket, настроенный с помощью конфигурации Jenkins.

Я не могу ввести учетные данные Git на этапе сборки, и я не могу получить их из map, где сопоставлены свойства scm. Для справки map содержит следующие ключи:

  • GIT_BRANCH
  • GIT_COMMIT
  • GIT_PREVIOUS_COMMIT
  • GIT_PREVIOUS_SUCCESSFUL_COMMIT
  • GIT_URL

Буду признателен за любую помощь.

...