在GCS存储桶中创建Python包存储库的CLI
项目描述
gcs_pypi 是在 GCS 存储桶中创建 Python 包存储库的 CLI。
入门
安装
使用 pip 安装 gcs_pypi
pip install gcs_pypi
使用方法
GCS 存储桶
创建新的存储桶
IAM(角色 & 服务帐户)
设置具有以下权限的服务帐户
storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.update
storage.objects.create
storage.objects.delete
storage.objects.get
storage.objects.getIamPolicy
storage.objects.list
storage.objects.setIamPolicy
建议您创建一个自定义角色,该角色可以被服务帐户继承
示例
创建“PYPI”角色
分配权限
storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.update
storage.objects.create
storage.objects.delete
storage.objects.get
storage.objects.getIamPolicy
storage.objects.list
storage.objects.setIamPolicy
创建服务帐户,例如 pypi
选择上面创建的“PYPI”角色
添加条件以限制对仅该 GCS 存储桶的访问
resource.name == "mybucket"
有关更多信息,请访问 云 IAM 条件
分发包
您现在可以使用 gcspypi 创建 Python 包并将它们上传到您的 GCS 存储桶。要隐藏包供公众访问,您可以使用 --private 选项防止通过 GCS 存储桶直接访问包(它们只能通过您的域或您可以使用 --secret 选项指定一个秘密子目录来访问)
cd /path/to/your-project/
gcspypi --bucket mybucket [--private] [--secret SECRET]
缓存头
为 index.html 设置缓存控制头
$ gsutil setmeta -h "cache-control:public, must-revalidate, proxy-revalidate, max-age=0" gs://[BUCKET]/index.html
安装包
使用 pip 通过将 --extra-index-url 指向您的自定义域名(可选地后跟一个秘密子目录)来安装您的包
pip install your-project --extra-index-url https://pypi.example.com/SECRET/
或者,您可以在 ~/.pip/pip.conf 中配置索引 URL
[global]
extra-index-url = https://pypi.example.com/SECRET/
鸣谢
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源代码分布
gcs_pypi-0.1.66.tar.gz (6.8 kB 查看哈希值)
构建分布
gcs_pypi-0.1.66-py3-none-any.whl (8.0 kB 查看哈希值)
关闭
gcs_pypi-0.1.66.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | faf668856933c72b0477ea587e4288ca03fea25ae4c73e3d089a5b00d97f5cae |
|
MD5 | a832ceecabee0ea8272cd519207d3958 |
|
BLAKE2b-256 | 29619b928c5c67cfb720da6532da67f4b9c761e7ff6692c9d7fca0ef6ef5f42e |
关闭
gcs_pypi-0.1.66-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d6060ade5533133baa67f150c81c34a1b645640d87e230d95262798949267607 |
|
MD5 | 3e2b7ed7fce73b38b927c409e6a4ccb7 |
|
BLAKE2b-256 | 87e59a3b2d77fed095e58919d4ac6a3f25d3bfdab65dc38d1bbb05ef9eb18f5a |