Плагин выпуска Jenkins + Maven: release: branch + Git - Невозможно зафиксировать файлы - PullRequest
0 голосов
/ 15 января 2019

Я пытаюсь сделать релиз, используя плагин релиза Maven, но получаю ошибку

[ERROR] Command output:
[ERROR] GitLab: The project you were looking for could not be found.
[ERROR] fatal: The remote end hung up unexpectedly

В моем pom.xml такие настройки:

 <scm>
    <developerConnection>scm:git:ssh://git@git.domain.ua/myproject/mylib.git</developerConnection>
    <url>https://git.domain.ua/myproject/mylib</url>
    <tag>HEAD</tag>
</scm>

Настройки работы Дженкинса:

URL репозитория: ssh: //git@git.domain.ua/myproject/mylib.git

Учетные данные: мой ssh-ключ также импортирован в Git-репозиторий в качестве ключа развертывания

Спецификатор ветви (пусто для 'any'): * / development

Цели и параметры выпуска Maven: -Dresume = false release: ветка javadoc: javadoc

Цели и параметры DryRun: -Dresume = false -DdryRun = истинный выпуск: подготовить

Как видно из логов, Git-плагин успешно клонирует ветку, но Maven по какой-то причине не может сделать коммит:

   Cloning the remote Git repository
    Cloning repository ssh://git@git.domain.ua/myproject/mylib.git
     > git init /opt/jenkins/workspace/MYJOB # timeout=10
    Fetching upstream changes from ssh://git@git.domain.ua/myproject/mylib.git
     > git --version # timeout=10
    using GIT_SSH to set credentials JENKINS(jenkins user with jenkins@USER)

    git checkout development
    Switched to a new branch 'development'
    Branch development set up to track remote branch development from origin.
    Parsing POMs
    Established TCP socket on 44626

[INFO] Executing: /bin/sh -c cd /opt/jenkins/workspace/MYJOB && git push ssh://git@git.domain.ua/myproject/mylib.git refs/heads/development:refs/heads/development

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.5.1:branch (default-cli) on project MYPROJECT: Unable to commit files
[ERROR] Provider message:
[ERROR] The git-push command failed.
[JENKINS] Archiving /opt/jenkins/workspace/MYPROJECT/pom.xml to *****-SNAPSHOT.pom
[ERROR] Command output:
[ERROR] GitLab: The project you were looking for could not be found.
[ERROR] fatal: The remote end hung up unexpectedly

Полагаю, Maven ничего не знает о ключе, использующем Git-плагин, но я не могу понять, как настроить плагин Maven Release для использования того же ключа?

1 Ответ

0 голосов
/ 15 января 2019

Ошибка в клоне по протоколу https и передаче по протоколу ssh . Вы должны определить, какой протокол использовать для передачи. Для сравнения используйте результат команды: git remote show origin, с параметром scm, установленным в файле pom.xml . Пример:

<scm>
   <connection>scm:git:git@github.com:user/repo-name.git</connection>
   <developerConnection>scm:git:git@github.com:user/repo-name.git</developerConnection>
   <url>git@github.com:user/repo-name.git</url>            
   <tag>HEAD</tag>
</scm>
...