Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
本文介绍如何使用 NuGet 命令行接口将 Python 包发布到 Azure Artifacts 源。
先决条件
产品 | 要求 |
---|---|
Azure DevOps | - An Azure DevOps 组织。 - Azure DevOps 项目。 - 下载并安装 Python。 |
创建源
登录到 Azure DevOps 组织,并导航到你的项目。
选择“项目”,然后选择“创建源”。
为源提供一个名称,选择定义谁可以查看包的可见性选项;如果想包含来自 nuget.org 或 npmjs.com 等源的包,请选中包含来自公共源的包,对于范围,决定源的范围是项目还是整个组织。
完成操作后,选择“创建”。
登录到你的 Azure DevOps 服务器,然后转到你的项目。
选择“项目”,然后选择“创建源”。
为源提供一个名称,选择定义谁可以查看包的可见性选项;如果想包含来自 nuget.org 或 npmjs.com 等源的包,请选中包含来自公共源的包,对于范围,决定源的范围是项目还是整个组织。
完成操作后,选择“创建”。
完成操作后,选择“创建”。
注意
默认情况下,当创建新提要时,项目中的生成服务(例如:projectName Build Service (orgName))将被分配提要和上游阅读者(协作者)角色。
发布包
如果尚未执行,请按照项目设置中的步骤对源进行身份验证,然后继续下一步。
登录到 Azure DevOps 组织,并导航到你的项目。
选择工件,然后选择连接到源。
从左侧导航区域中选择 twine。 如果这是你第一次将 Azure Artifacts 与 twine 配合使用,请确保通过选择获取工具并按照提供的步骤安装必备组件。
将 pypirc 文件添加到主目录,并将提供的代码片段粘贴到其中。 文件的内容类似于以下片段。 如果您已经有一个包含公共 PyPI 索引凭据的 pypirc,建议您删除其中的 [pypi] 部分,以防止误将私有包发布到 PyPI。
[distutils] Index-servers = FEED_NAME [FEED_NAME] Repository = https://pkgs.dev.azure.com/ORGANIZATION_NAME/PROJECT_NAME/_packaging/FEED_NAME/pypi/upload/
在项目目录中运行以下命令,创建源分发和 wheel 分发。
python setup.py sdist bdist_wheel
运行以下命令以发布包。 使用
-r REPOSITORY_NAME
标志来确保不会意外将专用包发布到 PyPI。twine upload -r REPOSITORY_NAME dist/*
重要说明
必须具有孪生 1.13.0 或更高版本才能使用 artifacts-keyring。 有关详细信息,请参阅用法要求。