t.me/atinfo_chat Telegram группа по автоматизации тестирования

Выгрузка артефактов в nexus с использованием Jenkinsfile

groovy
gitlab
copyartifatcs
infrastructure
jenkins
maven
Теги: #<Tag:0x00007f9e3efd3110> #<Tag:0x00007f9e3efd2c88> #<Tag:0x00007f9e3efd22b0> #<Tag:0x00007f9e3efd1ec8> #<Tag:0x00007f9e3efd1a40> #<Tag:0x00007f9e3efd1608>

(bor_bor) #1

Добрый день. Я, начинающий юзер Jenikins, впервые столкнулся с groovy и только начал набираться опытом.
У меня следующая проблема, я пытаюсь сделать pipeline для проекта, которых хранится на gitlab.
У меня все работает, кроме выгрузки артефактов в nexus.
Вот кусок моего Jenkinsfile:

 stage('delivery') {
            steps {
            nexusArtifactUploader artifacts: [[artifactId: 'qqq', classifier: '', file: '$WORKSPACE/target/integration.jar', type: 'jar']], credentialsId: '...-813e-4325-bd14-bd21987159ас', groupId: '***', nexusUrl: '***', nexusVersion: '***', protocol: 'http', repository: '***', version: '${BUILD_NUMBER}'
}

Проблемы с тем, что сборщик не может найти файл. Я подразумеваю, что ошибка в синтаксисе и, что неверный путь, откуда брать необходимый файл (’$WORKSPACE/target/integration.jar).

Подскажите, пожалуйста, как исправить это?


(bor_bor) #2

Нашел решение. Использовать другой плагин. Вот синтаксис.

    stage('delivery') {
        steps {
            nexusPublisher nexusInstanceId: 'Nexus', nexusRepositoryId: 'maven', packages: [[$class: 'Maven', mavenAssetList: [[classifier: '', extension: '', filePath: 'target/***.jar']], mavenCoordinate: [artifactId: 'qqq', groupId: '***', packaging: 'jar', version: '${BUILD_NUMBER}']]]            }
    }