2016-08-17 22 views
1

我无法在我的Jenkins管道中获得对我的SCM对象的引用。在我目前的情况下,有必要检索这个参考用于JIRA插件,如shown here如何在Jenkins管道中获得对我的SCM对象的引用?

我创建了一个简单的测试案例

node("master"){ 
    def gitScm = git url: 'https://github.com/jenkinsci/jira-plugin.git', branch: 'master' 
    echo "my git scm is "+gitScm 
    step([$class: 'hudson.plugins.jira.JiraIssueUpdater', 
     issueSelector: [$class: 'hudson.plugins.jira.selector.DefaultIssueSelector'], 
     scm: gitScm]) 
    gitScm = null 
} 

,我总是在我的JIRA更新获得nullgitScm对象,然后失败:

我的git SCM是空

即使git仓库检查成功。

回答

1

如果这个问题仍然是相关的,我能想到的两个选项:

  1. 如果你在一个多分支管道环境的时候,你可以简单地使用“SCM”变量,将其注入到构建詹金斯
  2. 如果没有,你可以使用获得的引用(GIT):
    
    def scm = [ 
        $class: 'GitSCM', 
        userRemoteConfigs: [[url: , refSpec: ]], 
        branches: [[name: ]] 
    ] 
    

替代变量和SCM的类型需要。这允许后续的语句如checkout scm

+0

情况2在多分支管道中为远程存储库工作。 – neurolabs

相关问题