通过将默认工作空间从主服务器更改为从服务器来克隆Jenkinsfile

时间:2018-03-19 07:15:38

标签: jenkins jenkins-plugins jenkins-pipeline git-clone

我正在研究Jenkins管道脚本,我已经在Git存储库中签入了我的jenkins文件,我需要克隆到本地工作空间。但是默认情况下它克隆到master(Unix)工作空间,但我需要它在slave(Windows)工作空间。

是否有任何插件可以将默认管道脚本从SCM 工作空间位置更改为从属?

2 个答案:

答案 0 :(得分:0)

你可以做这样的事情

pipeline {
agent any
options {
    skipDefaultCheckout()
 }
stages {
    stage('checkout') {
      steps {
            node('windows') {
                 checkout scm
             }
         }
      }
   }
}

OR

pipeline {
agent 'windows'
stages {
stage('build') {
  steps {
         // build
     }
  }
 }
}

答案 1 :(得分:0)

在我的情况下,以下管道配置会跳过对master的默认签出,而仅对Jenkins slave签出我的代码。

node {
  docker.image('php7.1.30:1.0.0').inside {
  skipDefaultCheckout() // this avoid the checkout on master 

    stage("checkout"){
      checkout scm   // here the checkout happens on slave node
    }


    stage('NPM Install'){
      sh label: 'NPM INSTALL', script: "npm install"
      sh label: 'GRUNT INSTALL', script: "npm install -g grunt-cli"
    }

    stage('Executing grunt') {
      sh label: 'GRUNT DEFAULT', script: "grunt default"
    }

 }
}