一个库,用于在不同的隔离状态下运行git存储库中的python函数(可调用函数),并集成缓存。
arca的Python项目详细描述
ARCA
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<arca是一个库,用于在不同的隔离状态下从git存储库运行python函数(callables)。 arca还可以使用dogpile.cache来缓存这些可调用文件的结果。
入门
词汇表
- arca -库的名称。当写为arca时,主接口类被引用。
- 任务 -函数的定义(可调用),包括对对象和参数的引用。
- 后端 -一种运行任务的方式。
安装
要求
-
python=3.6
某些后端的要求:
安装
要安装最新的稳定版本:
啊!
如果要使用Docker后端:
啊!
或者如果您想使用Vagrant后端:
啊!
或者如果您希望安装上游版本:
啊!
要求
-
python=3.6
某些后端的要求:
安装
要安装最新的稳定版本:
啊!如果要使用Docker后端:
啊!或者如果您想使用Vagrant后端:
啊!或者如果您希望安装上游版本:
啊!示例
要运行hello world示例,您只需要 arca.arca 和 arca.task 类。 task 用于定义应该在存储库中运行的任务。 arca 负责所有设置,并提供运行任务的基本api。
假设我们有以下文件,名为 hello world.py , 在存储库https://example.com/hello/word.git中,在branch master
啊!要使用arca调用函数,以下示例将执行此操作:
fromarcaimportArca,Tasktask=Task("hello_world:say_hello")arca=Arca()result=arca.run("https://example.com/hello_word.git","master",task)print(result.output)
代码将打印"Hello World" ! result 将是一个 arca.result 实例。 arca.result 有三个属性, output 带有函数调用的返回值, stdout 和 stderr 包含打印到标准输出的内容 (有关捕获标准输出的更多信息,请参阅关于 结果的部分)。 如果任务失败,将引发arca.exceptions.builderror。
进一步阅读
您可以在阅读文档时阅读完整的文档。
运行测试
要运行测试,您需要可选的需求docker和vagrant。一旦你有了它们,它们就可以被 您只需运行的当前用户:
python setup.py test
这将启动测试和PEP8检查。自创建自定义项以来,测试将需要一段时间 Docker Images也经过测试,一般来说,Wagrant需要很长时间才能设置。
贡献
欢迎投稿!可以在github上打开问题或提交请求!