Jenkins管道脚本将当前构建的工件复制到服务器位置

时间:2019-05-15 07:49:14

标签: jenkins jenkins-pipeline

我想创建一个执行以下任务的詹金斯工作: Git> Mvn build>将jar复制到服务器的某个位置。

那么这可以使用一个作业还是两个作业来完成? 还是执行此操作的首选方法,是管道优先于创建Maven作业吗?

我已经创建了此管道脚本,但这不会将当前的构建jar复制到服务器位置,而是将先前的构建工件jar复制到服务器。

node {
   def mvnHome
   stage('Preparation') { // for display purposes
      // Get some code from a GitHub repository
  git 'git@github.pie.ABC.com:abcdef/BoltRepo.git'
   mvnHome = tool 'M2'
   }
   stage('Build') {
      // Run the maven build
      if (isUnix()) {
         sh "'${mvnHome}/bin/mvn' -Dmaven.test.failure.ignore clean     package"
      } else {
         bat(/"${mvnHome}binmvn" -Dmaven.test.failure.ignore clean     package/)
      }
   }
   stage('Results') {
      archiveArtifacts 'target/*/BoltRepo*.jar'
   }

   stage('Deploy Artifact') {
    copyArtifacts(
          projectName: currentBuild.projectName,
          filter: 'target/*/BoltRepo*.jar',
          fingerprintArtifacts: true,
          target:     '/ngs/app/boltd/bolt/bolt_components/bolt_provision/test',
          flatten: true        )
   }
 }


What is the best way of achieving this.

1 个答案:

答案 0 :(得分:0)

我以前没有使用过管道,但是我已经使用作业配置中“构建后操作”中的“ ArtifactDeployer”完成了所需的操作 注意:您将需要安装“ Artifact Deployer插件”