用于编写gamayun作业脚本的Python实用程序
gamayun-utils的Python项目详细描述
Gamayun的Python实用程序
这是一个包含用于编写Gamayun作业的python实用程序的包。 主Gamayun存储库可以找到here。在
目录
拿到包裹
使用以下命令安装包:
pip3 install gamayun-utils
这个包依赖于GPRCIO,它需要安装在系统上的C/C++编译器。 阿尔卑斯山所需的依赖性包括:
^{pr2}$注意,建议使用Gamayun的方法是与Docker一起使用,所以您不必在本地安装这些依赖项。如果您正在使用Docker,则会有一个包含Gamayun和Gamayun Python实用程序here的图像。在
有关更多信息,请参见Gamayun main repo,并参阅示例用法here。在
使用
本部分记录了包API
报告结果和错误
用于报告脚本结果或错误的函数如下:
defreport_result_with_strings_only(results)
如果要报告的结果是字符串列表,则使用此函数
defreport_result_with_maps_only(results)
当我们要报告的结果是映射列表时,使用此函数
defreport_result_with_maps_and_strings(mapResults,stringResults)
如果要报告的结果是字符串列表和映射列表,则使用此函数
defreport_error(error)
当我们要报告错误时使用此函数,错误将通过通知程序接口转发
请注意,一旦为脚本/gamayun作业报告了result或error,gamayun将停止侦听该作业的结果/错误,因此在整个作业中,应该只有一个对report
函数的调用。在
执行脚本逻辑
此包中有一个函数具有以下签名:
defrun_gamayun_script_logic(callback)
所有的脚本逻辑都应该放在某个函数中,并且该函数应该被赋予run_gamayun_script_logic
作为参数,因为这将确保捕捉到所有未经处理的异常并将其作为错误报告给Gamayun。在
一个文件应该像这样:
fromgamayun_utilsimportreport_result_with_maps_onlyfromgamayun_utilsimportreport_errorfromgamayun_utilsimportrun_gamayun_script_logicdefscript_logic():# place the script logic hereifOK:report_result_with_maps_only(results)else:report_error(error)run_gamayun_script_logic(script_logic)
- 项目
标签: