【问题标题】:Jenkins Pipeline Checkout SVN to custom workspaceJenkins Pipeline Checkout SVN 到自定义工作区
【发布时间】:2018-10-24 14:28:48
【问题描述】:

我现在正在编写一个 Jenkins Pipeline 脚本(声明性)。基本上是这样的:

pipeline {
    agent any
    environment {
        NLS_LANG = 'GERMAN_GERMANY.AL32UTF8'
    }
    stages {
        stage('Test') {
            steps {
                script {
                    echo "Test"
                }
            }
        }
    }
}

脚本本身运行良好。但是我们现在发现,jenkins 首先检查了我们的 SVN 存储库以找到 Jenkinsfile(在文件夹 workspace@script 中检查 job Folder > C:\jenkins_home\jobs\<Projectname>\jobs\<Jobname>)。

在我没有在 Jenkinsfile 中写的第二步中再次检查整个 SVN(标题:“Declarative: SCM Checkout”)。 如果我们可以更改此结帐的路径就可以了,因为此时它在job folder 中新创建的workspace 文件夹中签出。

这里我有一个来自管道作业的控制台输出的屏幕截图:

如何实现自定义工作区中的结帐?

最好它只会在第一次签出时自行签出 Jenkinsfile,而不是整个存储库。 我尝试将repository url 更改为保存 Jenkinsfile 的文件夹(单独),但管道也(仅)在第二次结帐时签出此文件夹。

这里我有一个控制台输出的屏幕截图:

【问题讨论】:

    标签: jenkins svn jenkins-pipeline svn-checkout


    【解决方案1】:

    在解决这个问题时可能会关注谁:使用 ws('/path/to/dir') 分配不同的目录(请参阅Pipeline: Nodes and processes

    pipeline {
        agent any
        environment {
            NLS_LANG = 'GERMAN_GERMANY.AL32UTF8'
        }
    stages {
        stage('Test') {
            steps {
                script {
                    echo "Test"
                    ws('/path/to/dir'){
                        //dosomething here, like "checkout scm"
                    }
                }
            }
        }
    }    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-03-22
      • 2020-07-10
      • 2012-05-12
      • 2020-05-22
      • 1970-01-01
      • 2018-08-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多