使用受信任发布者创建 PyPI 项目
受信任发布者不仅仅适用于预先存在的 PyPI 项目:您也可以使用它们来 *创建* PyPI 项目!
这再次减少了设置完全自动化的 PyPI 发布工作流程所需的步骤:您无需手动上传第一个版本来“初始化” PyPI 上的项目,而是可以配置一个“待处理”的发布者,它将在第一次使用时 *创建* 该项目。 “待处理”发布者会在第一次使用时转换为“正常”发布者,这意味着不需要进一步配置。
配置“待处理”发布者的步骤与配置正常发布者类似,只是该页面位于您的帐户侧边栏下,而不是任何项目的侧边栏下(因为该项目尚不存在)。
单击“发布”将带您到一个页面,其中包含不同的潜在受信任发布者。此页面上的表单的行为与现有项目的发布者相同,只是您还需要提供将要创建的 PyPI 项目的名称。
重要
“待处理”发布者 *不会* 创建项目或保留项目的名称,*直到* 它实际用于发布。
如果您创建了一个“待处理”发布者,但另一个用户在您实际发布之前注册了项目名称,那么您的“待处理”发布者将被 **失效**。
如果您在 https://github.com/octo-org/sampleproject
处有一个存储库,该存储库在 release.yml
处有一个发布工作流,以及一个名为 release
的环境,您希望将其发布到 PyPI 作为 sampleproject
,那么您将执行以下操作
注意
与“正常”受信任发布者一样,配置 GitHub Actions 环境是 **可选的,但强烈建议**。
单击“添加”将注册“待处理”发布者,并将其显示给您
如果您有一个名为 SERVICE_ACCOUNT_NAME@PROJECT_NAME.iam.gserviceaccount.com
的服务帐户,该帐户正在您希望从中发布到 PyPI 的环境中使用,那么您将执行以下操作
注意
与“正常”受信任发布者一样,配置主体是可选的。
单击“添加”将注册“待处理”发布者,并将其显示给您
将 ActiveState 设置为创建 PyPI 项目与更新项目相同。您需要提供 ActiveState 项目的名称、该项目所属的 ActiveState 组织以及将执行发布操作的 ActiveState 用户。了解有关在 ActiveState Platform 上设置的更多信息 此处。
单击“添加”将注册“待处理”发布者,并将其显示给您
注意
目前,仅支持托管在 https://gitlab.com 上的项目。不支持自托管实例。
如果您在 https://gitlab.com/namespace/sampleproject
处有一个存储库,该存储库在 .gitlab-ci.yml
处有一个顶级管道,以及一个名为 release
的环境,您希望将其发布到 PyPI 作为 sampleproject
,那么您将执行以下操作
注意
与“正常”受信任发布者一样,配置 GitLab CI/CD 环境是 **可选的,但强烈建议**。
单击“添加”将注册“待处理”发布者,并将其显示给您
从现在开始,“待处理”发布者可以像“正常”发布者一样使用,并且在第一次使用后,它将将其转换为“正常”发布者。