groovy中使用jenkins插件上传制品到nexus
来源:原创
时间:2020-10-26
作者:脚本小站
分类:Jenkins
在jenkins中安装插件:
Nexus Artifact Uploader
在流水线语法中:复制语句到pipeline中。
groovy脚本使用jenkins插件上传制品到Nexus:
#!groovy @Library('jenkinslib@master') _ def tools = new org.devops.tools(); pipeline{ agent{ node{ label "master" } } stages{ stage("CheckOut"){ steps{ script{ tools.PrintMes("获取代码","green") checkout([ $class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [ [ credentialsId: '398170a9-72a6-410b-8293-334687f152da', url: 'http://192.168.0.26/qiyang/solo.git' ] ] ]) } } } stage("Build"){ steps{ script{ tools.PrintMes("编译","green") mvnHome = tool "M2" sh "${mvnHome}/bin/mvn clean package -Dmaven.test.skip=true" } } } stage("NexusUpload"){ steps{ script{ tools.PrintMes("NexusUpload","green") def jarName = sh returnStdout: true, script: "cd target;ls *.war" env.jarName = jarName - "\n" def pom = readMavenPom file: 'pom.xml' env.pomVersion = "${pom.version}" env.pomArtifact = "${pom.artifactId}" env.pomPackaging = "${pom.packaging}" env.pomGroupId = "${pom.groupId}" tools.PrintMes("--------------------","green") println("${env.jarName}-${pomGroupId}-${pomArtifact}-${pomVersion}-${pomPackaging}") nexusArtifactUploader artifacts: [[ artifactId: "${pomArtifact}", classifier: '', file: "target/${env.jarName}", type: "${pomPackaging}" ]], credentialsId: '048ecb1f-89b4-40bb-b92a-feea291ce8db', groupId: "${pomGroupId}", nexusUrl: '192.168.0.26:8081', nexusVersion: 'nexus3', protocol: 'http', repository: "maven-releases", version: "${pomVersion}" } } } } }
使用maven上传插件:
www.scriptjc.com/article/1196