我有一个Python脚本放置在bitbucket位置。我的 python 文件中有如下代码
def healthCheck():
print ("::healthCheck()::")
while time.time() < timeout:
healthy = True;
# some logic is here
if not healthy:
print ("Sleeping for 5 seconds")
time.sleep(5)
else:
break;
return healthy
在groovy中我想存储这个返回值。返回的值将在我的下一步评估中需要。为了实现这一目标,我在我的代码中尝试了类似的事情
def cmd = url 'python ${bitbucket_location}/testPythonFile.py'
def proc = cmd.execute()
isDeadPodHenrietta = proc.text()
现在我的变量“cmd”为空。因此其余操作失败并给出空指针异常。即使我不确定这是否是存储脚本返回值的正确方法。请帮忙解决这个问题。
这个 groovy 脚本正在用于部署目的。 预先感谢。
这对我有用,我评论了一些更改。 看来 Python 错误没有被标记。
# Import time and set the timeout value.
import time
timeout = 1730342500
def healthCheck():
print ("::healthCheck()::")
healthy = True
while time.time() < timeout:
healthy = True;
# some logic is here
if not healthy:
print ("Sleeping for 5 seconds")
time.sleep(5)
else:
break;
return healthy
# Call healthCheck here and print the return value as a string.
print str(healthCheck())
然后执行这个 Groovy 脚本,它会生成一个本地 py 文件并执行它:
new File("testPythonFile.py") << new URL("https://<your-bitbucket-url>/src/master/testPythonFile.py").getText()
println "python testPythonFile.py".execute().text
结果是
::healthCheck()::
True