Почему предыдущий этап вызывается снова при выполнении следующего этапа в Jenkinsfile - PullRequest
0 голосов
/ 09 апреля 2019

Я наблюдаю, как предыдущий этап вызывается при выполнении следующего этапа, не уверен, что здесь не так с моим файлом jenkinsfile

Придерживался этой документации:

https://jenkins.io/doc/book/pipeline/syntax/#declarative-pipeline

pipeline { 
  agent none

  options {
    gitLabConnection('MY_CONNECTION')
  }

  stages {

    stage('scm_checkout') {
      agent { 
        label 'win_64'
      } 
      steps{
        deleteDir()
        checkout([$class: 'GitSCM',branches:[[name: '*/master']] 
        bat 'python -u repo/Jenkins_Scripts/createZip.py'
      }
    }

    stage('scm_build') {
      agent { 
        label 'win_64'
      } 
      steps{
        bat 'python -u repo/Jenkins_Scripts/build.py'
      }
    }
  } // end of stages

}

выход

[Pipeline] stage
[Pipeline] { (scm_checkout)
[Pipeline] node
Running on xxxxxx in C:\jennew\workspace\PCQG-Pipeline
[Pipeline] {
[Pipeline] checkout
 > git rev-parse --is-inside-work-tree # timeout=10
[Pipeline] withEnv
[Pipeline] {
[Pipeline] deleteDir
[Pipeline] checkout
Cloning the remote Git repository

[Pipeline] }
[Pipeline] // withEnv
[Pipeline] }
[Pipeline] // node
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (scm_build)
[Pipeline] node
Running on xxxxxx in C:\jennew\workspace\PCQG-Pipeline
[Pipeline] {
[Pipeline] checkout
Cloning the remote Git repository

Аналогично, это хранилище клонов снова и снова на каждой стадии. Не уверен, где я совершаю ошибку.

1 Ответ

1 голос
/ 09 апреля 2019

Я думаю, что то, что вы делаете здесь, немного сбивает с толку.Это Jenkinsfile верно?Таким образом, агент по умолчанию будет делать заказ самостоятельно.Этапы не вызываются друг от друга.

Чтобы отключить это, вам нужно добавить это к вашей агентской части:

options { skipDefaultCheckout() }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...