上传一个数据包
一旦你的数据包准备好了,就可以保存并分发它了。
将数据包的清单保存到本地
要将一个数据包保存到本地磁盘上,使用 build 方法:
import quilt3
p = quilt3.Package()
top_hash = p.build("aneesh/test_data")
构建一个数据包需要提供一个名称。数据包的名称必须遵循 “ n a m e s p a c e / {namespace}/ namespace/{packagename}” 的格式。对于小团队,建议使用包作者的姓名作为命名空间。
对远程注册表进行身份验证
要通过远程注册表与他人共享数据包,首先需要进行身份验证,如果还没有这样做:
# 只需要运行一次
# 例如 quilt3.config('https://your-catalog-homepage/')
quilt3.config('https://open.quiltdata.com/')
# 按照提示完成登录
quilt3.login()
将数据包推送到远程注册表
要通过远程注册表与他人共享数据包,使用 push 方法:
p = quilt3.Package()
p.push(
"aneesh/test_data",
"s3://quilt-example",
message="Updated version my package"
)
s3://quilt-example 是注册表——数据包可从中获取的存储后端。
如果您配置了 default_remote_registry,可以省略 registry 参数(该设置在会话之间持续存在):
quilt3.config(default_remote_registry='s3://quilt-example')
p = quilt3.Package()
p.push("aneesh/test_data")
您可以使用 dest 参数来控制文件的存放位置:
p = quilt3.Package()
p.push(
"aneesh/test_data",
dest="s3://quilt-example/foo/bar"
)
有关更精细地控制对象存放路径的方法,请参阅文档。
将数据包保存在远程注册表上
push 方法将同时发送数据包的清单和数据到远程注册表。这将涉及将数据复制到 S3。如果只想将数据包清单保存到 S3,而不复制任何数据,请使用 build 方法:
p = quilt3.Package()
p.build("aneesh/test_data", "s3://quilt-example")
这将创建一个包含所有物理键的数据包的新版本。
从注册表中删除一个数据包
要从注册表中删除一个数据包:
# 删除本地注册表中的一个数据包
quilt3.delete_package("aneesh/test_data")
# 删除远程注册表中的一个数据包
quilt3.delete_package("aneesh/test_data", "s3://quilt-example")
请注意,这只会删除数据包的清单,而不会删除任何数据包数据。