如何使用jenkins管道groovy脚本中的RTC插件?

如何使用jenkins管道groovy脚本中的RTC插件?,jenkins,groovy,rtc,jenkins-pipeline,Jenkins,Groovy,Rtc,Jenkins Pipeline,我知道我可以通过Jenkins RTC插件使用scm轮询,我只是想知道是否有一个示例说明如何通过管道插件的groovy脚本实现这一点 例如: node{ stage 'Checkout' git url: 'https://github.com/whatever/myrepo.git' ... } 类似于上面的内容,但不是git,而是将rtc toolkit与prod url一起使用,并指定一个流或工作区。。。在任何地方都找不到示例,也不确定如何通过api实现它(或者如果可能的

我知道我可以通过Jenkins RTC插件使用scm轮询,我只是想知道是否有一个示例说明如何通过管道插件的groovy脚本实现这一点

例如:

node{
   stage 'Checkout'
   git url: 'https://github.com/whatever/myrepo.git'
 ...
 }

类似于上面的内容,但不是git,而是将rtc toolkit与prod url一起使用,并指定一个流或工作区。。。在任何地方都找不到示例,也不确定如何通过api实现它(或者如果可能的话?

管道插件中有一个代码段生成器,我花了一段时间才找到它,但它将为任何Jenkins任务生成groovy代码。。。Rtc列在teamconcert:teamconcert下面,只需向下滚动到底部并勾选代码段生成器复选框

实际上,代码段生成器有点误导,因为它不能生成您所需要的所有内容。例如,根据生成的内容,我在管道中使用了以下内容:

node {
    teamconcert([buildDefinition: 'TestStream', value: 'buildDefinition'])
}
如果按原样使用,将出现以下异常:

RTC : checkout...
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
java.lang.NullPointerException
    at com.ibm.team.build.internal.hjplugin.RTCScm.checkout(RTCScm.java:1948)
    atorg.jenkinsci.plugins.workflow.steps.scm.SCMStep.checkout(SCMStep.java:109)
    at org.jenkinsci.plugins.workflow.steps.scm.SCMStep$StepExecutionImpl.run(SCMStep.java:83)
    at org.jenkinsci.plugins.workflow.steps.scm.SCMStep$StepExecutionImpl.run(SCMStep.java:73)
    at org.jenkinsci.plugins.workflow.steps.AbstractSynchronousNonBlockingStepExecution$1$1.call(AbstractSynchronousNonBlockingStepExecution.java:52)
    at hudson.security.ACL.impersonate(ACL.java:221)
    at org.jenkinsci.plugins.workflow.steps.AbstractSynchronousNonBlockingStepExecution$1.run(AbstractSynchronousNonBlockingStepExecution.java:49)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
您需要的语法如下:

node {
    teamconcert([
        buildType: [
            buildDefinition: 'TestStream',
            value: 'buildDefinition'
       ]
    ])
}
TeamConcert希望将内容包装在“buildType”中。我在jazz.net上的一个论坛答案中发现了这个问题,在其他任何地方都没有看到它的文档