2015-06-22 96 views
1

我正试图将Jenkins-workflow与artifactory集成。 由于https://github.com/jenkinsci/artifactory-plugin到目前为止不支持jenkins-workflow,所以我应该使用shell命令,如https://github.com/JFrogDev/project-examples与sh命令或我自己的groovy脚本。将RESTClient库导入jenkins-workflow groovy脚本

我想在cps-global-lib中共享这个artifactory publisher librairy。 因此,我无法将JFrogDev shell脚本存储在global-lib中,因为我无法从我的项目flow.groovy文件中调用它。 我迄今发现的唯一的解决办法是脚本,进口

import groovyx.net.http.RESTClient; 

不幸的是,摘录发电机repots一个全球性的效用函数:

unable to resolve class groovyx.net.http.RESTClient 
@ line 1, column 1. 
import groovyx.net.http.RESTClient; 
^ 
1 error 

我怎么能解决这个问题詹金斯的工作流程/ artifactory的整合?有没有办法在jenkins-workflow全局库中启用RESTClient?

[编辑]

基于杰西的回答,我最后写在使用writeFile工作流程命令工作区中的shell脚本。 shell脚本使用curl将本地文件放入artifactory。

回答

1

不要试图直接从流中引用RESTClient类。相反,从sh步骤运行groovy可执行文件。 (您可以使用Groovy中的各种语法来定义多行字符串,例如'''。)

+0

并且您如何在Windows平台上执行此操作(其中curl不可用)? –

+0

您可以安装Windows的cURL,或使用其他本地工具,如Powershell。 –

+0

[JENKINS-32263](https://issues.jenkins-ci.org/browse/JENKINS-32263)也将提供独立于平台的步骤,可用于Pipeline(以前称为Workflow),用于执行日常的HTTP操作。 –