2016-08-17 21 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

相關問題