簡體   English   中英

從bash腳本運行groovy腳本

[英]Run groovy script from bash script

我想從bash腳本中運行Groovy腳本。

我有一個Groovy腳本正在從jenkins創建我需要的變量。 (出於某種原因,整個配置項用bash編寫)。

我需要在groovy中運行它,因為我無法在bash中復制它。

所以我的bash代碼如下所示:

LAST_SUCCESSFUL_BUILD_DATE=$(groovy scripts/jenkins-lastbuild-date.groovy)

常規腳本位於文件夾腳本中,如下所示:

#!/usr/bin/env groovy
import jenkins.model.Jenkins

def envVars = Jenkins.instance.getGlobalNodeProperties()[0].getEnvVars()

// the job name is a global Jenkins variable, so I get it from there
def item = Jenkins.instance.getItem(envVars['JOB_NAME'])

def  ff=item.getLastSuccessfulBuild()
println ff.getTime().format("yyyy-MM-dd")

但是當我運行它時,我得到了錯誤

line 254: groovy: command not found

有任何想法嗎? 我需要從上一次成功提交中獲取日期。

這似乎是環境變量的問題,因為您正在嘗試在shebang中使用env定位groovy

我要做兩件事:

  1. 獲取安裝groovy的詳細信息

轉到服務器並嘗試運行:

mbp:~ jhartman$ which groovy
/usr/local/bin/groovy
  1. 然后,將腳本的第一行替換為確切的位置:
 #!/usr/local/bin/groovy import jenkins.model.Jenkins 

最好的問候,Jarek

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM