2015-06-22 94 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操作。 –