跳转到主要内容

大文件集合管理器

项目描述

pyfiles

https://img.shields.io/pypi/v/pyfiles.svg https://img.shields.io/travis/jrmi/pyfiles.svg Documentation Status Updates

一个大文件集合管理器。

安装

在虚拟环境中

python3 -m venv .venv
source .venv/bin/activate
pip install -U pip wheel
pip install git+git://github.com/jrmi/pyfiles@master # Or any last commit
# Then create your setup.py file before using CLI

命令行界面

创建一个 settings.py 文件,在其中以该配置执行cli进行文件存储

BACKEND = "pyfiles.storages.diskstorage.DiskStorage"

BACKEND_OPTIONS = {
    "basepath": "/tmp/tmpdir",
    "base_url": "http://localhost:8000"
}

对于S3

BACKEND = "pyfiles.storages.s3storage.S3Storage"

BACKEND_OPTIONS = {
    "access_key":"<you-S3-access-key>",
    "secret_key":"<you-S3-secret-key>",
    "endpoint_url":"<S3-api-endpoint>",
    "region_name":"<region>",
    "bucket_name":"<bucket name>",

}

然后存储一个文件

$ pyfiles store <file path> <file.namespace> <file.name> <version>

版本 应遵循以下格式:YYYY.MM.DD-Rev 或任何类似于 semver 的 X.Y.Z

列出一个文件的所有版本

$ pyfiles versions <file.namespace> <file.name>

搜索文件

$ pyfiles search <file.namespace> <file.name> [<version-prefix>]

版本前缀 可以是 YYYY 或 X 或 YYYY.MM 或 X.Y 或 YYYY.MM.DD 或 X.Y.Z 或 Latest。如果未指定,默认为 Latest。

最后删除一个文件

$ pyfiles delete <file.namespace> <file.name> <version>

启动Web API服务器

$ pyfiles serve

Web API

GET on /search/<namespace>/<filename>[?version=<version>]

获取文件版本下载链接。 Namespace 是组织数据的命名空间,而 filename 是文件名。您可以可选地添加一个版本,如 latest<year><year.month><major><major>.<minor> 等。对于指定的版本,您将获得最新版本。

GET on /versions/<namespace>/<filename>

显示所有可用文件版本。

Python API

查看pyfiles.storage类以获取更多信息。

您可以使用 pyfiles.storage.get_storage(<后端路径>, <选项>) 来初始化您的存储。

特性

  • 一个具有丰富版本选择的下载文件API

  • 列出文件的所有版本

  • 适用于CSV或Geojson文件

  • 文件版本可以是如2018.01.10-01的格式

  • 通过版本的一部分查找文件。例如 20182018.01

路线图

  • 允许使用私有数据进行认证

  • 处理不同版本之间的文件差异

  • 获取文件的更新日期以简化缓存

  • 添加客户端库和CLI

许可

鸣谢

此包是用 Cookiecutteraudreyr/cookiecutter-pypackage 项目模板创建的。

历史

0.1.1 (2020-12-17)

  • 首次发布在PyPI。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源分布

bygfiles-0.1.1.tar.gz (20.8 kB 查看哈希值)

上传时间

由以下支持