在声明性jenkins管道中获取SVN修订版

时间:2018-05-15 08:29:01

标签: jenkins svn revision jenkins-declarative-pipeline

我有一个简单的问题:如何在declarative jenkins pipeline中获取svn修订版。与this post类似。

到目前为止我发现了什么:

使用自由式作业时,只需使用

即可
${SVN_REVISION}

使用脚本管道时,请使用以下命令:

def scmVars = checkout([$class: 'SubversionSCM',...])
svnRevision = scmVars.SVN_REVISION

checkout syntax

但是如何在声明性管道中获取SVN修订版?未定义SVN_REVISION,声明性管道中不允许defcheckout scm仅适用于多分支管道。

2 个答案:

答案 0 :(得分:1)

感谢您的快速回答。我找到了script的另一个解决方案。 我知道这不是最好的解决方案,但它确实有效。

script {
    def scmVars = checkout ([$class: 'SubversionSCM',...])
    svnRevision = scmVars.SVN_REVISION
}

答案 1 :(得分:0)

根据这里https://qa.nuxeo.org/jenkins/pipeline-syntax/globals

  

以下变量目前在管道中不可用   脚本:

     

特定于SCM的变量,例如SVN_REVISION

所以最好尝试找出方法(最好的一个是shell脚本),在退房后进行修改,然后根据需要使用它。