python pachyderm客户端
pypach的Python项目详细描述
用于pachyderm<;https://www.pachyderm.io/>;api的python客户端包装器。
注释
- 当前仅实现pfs接口。
- 支持Pachyderm 1.4及以上版本
安装
$ pip install pypachy
说明
pachctl中使用的所有pfs函数都按原样(几乎)受支持。 有一些帮助函数有助于使事情更像Python: *commit是start_commit和^{tt4}的上下文管理器包装$ *get_files,支持从多个文件获取数据
命名提交
所有接受commit参数的函数都将接受(repo, branch)或(repo, commit_id)元组, 像repo/branch或repo/commit_id这样的字符串和commit对象。
例如:
>>> client.list_file(('my_repo', 'branch'), '/') # tuple >>> client.list_file('my_repo/commit_id', '/') # string >>> c = client.list_commit('my_repo')[0] # get some commit >>> client.list_file(c, '/') # and use it directly
基本用法示例
>>> import pypachy >>> client = pypachy.PfsClient() >>> client.create_repo('test') >>> with client.commit('test', 'master') as c: ...: client.put_file_bytes(c, '/dir_a/data', b'DATA') ...: client.put_file_url(c, '/dir_b/icon.png', 'http://www.pearl-guide.com/forum/images/smilies/biggrin.png') ...: >>> client.get_files('test/master', '/', recursive=True) {'/dir_a/data': b'DATA', '/dir_b/icon.png': b'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08...'}
从0.1.4版起,对pps的支持也有限:
>>> pps_client = pypachy.PpsClient() >>> pps_client.list_pipeline() ...
待办事项
- 测试,测试,测试!
- 添加对ObjectAPI 的支持
更改日志
0.1.5 -错误修复
0.1.4 -添加:对pps的alpha支持 -更改:适用于厚皮动物1.5.2
0.1.3 -已修复:inspect_commit已损坏 -添加的:provenances_for_repo函数给出了repo中提交的所有来源
0.1.2 -添加了:PfsClient默认参数现在使用pachd的环境变量 -已添加:put_file_bytes可以接受迭代器 -已更改:commit如果上下文中发生错误,则现在尝试关闭提交 -添加:更多示例和更改日志到自述文件