Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
使用 Azure Artifacts,开发人员可以从 Azure Artifacts 源和外部注册表(例如 PyPI.org)发布和使用包。通过启用上游源,可以简化包管理,使用单个源来管理自己的包和从公共注册表使用的包。 启用后,Azure Artifacts 会自动从上游源保存协作者或更高版本安装的任何包的副本。 本文将指导你设置项目并使用命令行有效使用 PyPI 中的 Python 包。
本文将指导如何进行以下操作:
为源启用上游源
将 PyPI 添加为上游源
从 Python 包索引安装包
Azure DevOps 组织和项目。 创建
组织
或
项目
(如果尚未创建)。
Azure Artifacts 源。
下载
Python
。
创建新源时启用上游源
如果尚未创建源,请按照以下步骤创建新源。 请确保选中上游源
的框
以启用上游源。 如果已有源,请跳到
下一步
,将 PyPI 添加为上游源。
登录到 Azure DevOps 组织,并导航到你的项目。
选择
“项目
”,然后选择“创建源”
以创建新源
。
输入源的描述性
名称
并定义其
可见性
(指示谁可以查看源中的包)。 指定
源的范围,然后选中
上游源
复选框以包含公共注册表中的包。
完成操作后,选择“创建”
。
使用
打包
>读取
范围创建个人访问令牌
,以便通过 Azure DevOps 进行身份验证。 首次连接到 Azure DevOps 时,需要在出现提示时输入凭据。 在指定字段中提供用户名(任何字符串)和个人访问令牌。 这些凭据将在本地缓存,并在下次使用服务时自动用于登录。
导航到项目文件夹,然后运行以下命令以创建新的虚拟环境:
python -m venv <VIRTUAL_ENVIRONMENT_NAME>
在虚拟环境中创建新的 pip.ini 文件(Windows)或 pip.conf 文件(Mac/Linux),然后将以下代码片段粘贴到文件中。 请确保将占位符替换为适当的信息,并谨慎不要将此文件提交到包含个人访问令牌的公共存储库。
项目范围的源:
[global]
extra-index-url=https://<FEED_NAME>:<YOUR_PERSONAL_ACCESS_TOKEN>@pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/pypi/simple/
组织范围的源:
[global]
extra-index-url=https://<FEED_NAME>:<YOUR_PERSONAL_ACCESS_TOKEN>@pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/pypi/simple/
现在,我们已将项目配置为使用源进行身份验证,接下来可以从 PyPI 上游开始安装包。 在此示例中,我们将安装 Flask
:
在命令提示符窗口中,导航到项目文件夹并运行以下命令以激活虚拟环境。 将占位符替换为前面创建的虚拟环境的名称:
<YOUR_VIRTUAL_ENVIRONMENT_NAME>/Scripts/Activate.ps1
运行以下命令来检查虚拟环境中安装的包:
pip list
运行以下命令以安装 Flask。
pip install -U Flask
安装包后,Azure Artifacts 会将此包的副本保存到源。 程序包应在源中可用,如以下屏幕截图所示。