开始使用 Azure Artifacts 中的 Python 包

Azure DevOps Services |Azure DevOps Server 2022 - Azure DevOps Server 2019

使用 Azure Artifacts,可以从源库和公共注册表(如 PyPi)发布和下载包。 本快速入门将指导你创建源、配置项目和管理 Azure Artifacts 源中的 Python 包。 在本文中,您将学习如何:

  • 创建新源。
  • 通过源进行身份验证。
  • 发布 Python 包。
  • 从源安装包。

先决条件

  • 创建 Azure DevOps 组织项目(如果尚未创建)。

  • 下载并安装 Python

获取代码

  1. 如果没有自己的 Python 项目,可以使用以下示例 Python 项目:

    https://github.com/microsoft/python-package-template
    
  2. 要生成 wheel 包和源码分发包,请在项目目录中运行以下命令:

    pip install --upgrade build
    python -m build
    
  3. 如果 Python 项目具有 setup.py 文件,还可以使用此命令生成包:

    python setup.py sdist bdist_wheel
    

创建源

  1. 登录到 Azure DevOps 组织并导航到项目。

  2. 选择“项目”,然后选择“创建源”

  3. 为源提供一个名称,选择定义谁可以查看包的可见性选项;如果想包含来自 nuget.orgnpmjs.com 等源的包,请选中包含来自公共源的包,对于范围,决定源的范围是项目还是整个组织。

  4. 完成后,选择 创建

    显示用于在 Azure DevOps Services 中创建新源的选择的屏幕截图。

  1. 登录到 Azure DevOps 服务器,然后转到项目。

  2. 选择“项目”,然后选择“创建源”

  3. 为你的源提供 名称,选择 可见性 选项以定义谁可以查看你的包,如果你想包括来自公共源(如 nuget.orgnpmjs.com)的包,请勾选 包括公共源中的包,并决定在 范围中该源是否应限定于你的项目或整个组织。

  1. 完成后,选择 创建

    显示用于在 Azure DevOps 2022 中创建新源的选择的屏幕截图。

  1. 完成后,选择 创建

    显示用于在 Azure DevOps 2020 中创建新源的选择的屏幕截图。

  1. 登录到 Azure DevOps 服务器,然后转到项目。

  2. 选择项目,然后选择新源

  3. 对于名称,输入源的描述性名称。

    对于可见性,选择一个选项来指示谁可以查看源中的包。

    如果要包含来自公共源的包,请选择通过此源使用来自公共源的包选项。

  4. 完成后,选择 创建

    显示用于在 Azure DevOps 2019 中创建新源的选择的屏幕截图。

注意

默认情况下,新创建的源将其项目的生成服务值设置为源和上游读取器(参与者)

连接到源

  1. 登录到 Azure DevOps 组织,然后导航到项目。

  2. 选择工件,从下拉菜单中选择源,然后选择连接到源

  3. Python 部分下选择 twine

  4. 如果这是你第一次将 Azure Artifacts 与 twine 配合使用,请选择获取工具,并按照步骤安装必备组件。

  5. pypirc 文件添加到主目录,并粘贴所提供的代码片段。 你的文件应如下所示:

    [distutils]
    Index-servers =
        FEED_NAME
    
    [FEED_NAME]
    Repository = https://pkgs.dev.azure.com/ORGANIZATION_NAME/PROJECT_NAME/_packaging/FEED_NAME/pypi/upload/
    

注意

如果 .pypirc 文件已经包含用于公共 PyPI 索引的凭据,建议删除 [pypi] 部分,以防止将专用包意外发布到 PyPI。

发布包

  1. 在项目目录中运行以下命令,以创建源分发版和滚轮分发版:

    python setup.py sdist bdist_wheel
    
    
  2. 运行以下命令以发布包。 使用 -r FEED_NAME 标记来确保不会意外地将专用包发布到 PyPI。

    twine upload -r <FEED_NAME> dist/*
    

安装软件包

  1. 在项目目录中运行以下命令以安装包:

    pip install
    
  2. 要安装特定的包,请运行以下命令,并将占位符替换为源中的包名称。

    pip install <PACKAGE_NAME>
    

后续步骤

使用 Python 包索引中的包(PyPI)使用 Azure Pipelines 设置上游源发布 Python 包