Azure自托管构建代理执行UsePythonVersion@0任务找不到Python3.10如何解决
Azure自托管代理UsePythonVersion@0任务故障解决方案
你遗漏的核心配置是UsePythonVersion@0任务的寻址逻辑适配,该任务不读取系统PATH、不识别代理自定义能力,仅会扫描$AGENT_TOOLSDIRECTORY目录下符合固定结构的Python安装包,按以下步骤补全配置即可:
- 第一步:确认代理的工具目录路径,Windows自托管代理默认路径为
C:\azagent\{代理编号}\_work\_tool,你也可以在流水线中新增一行CMD脚本任务执行echo %AGENT_TOOLSDIRECTORY%打印准确路径 - 第二步:在工具目录下创建严格的层级结构:
- 首先新建
Python文件夹 - 在
Python文件夹下新建和你安装的Python版本完全一致的三段式版本号命名的文件夹,例如你安装的是Python 3.10.12,就命名为3.10.12 - 在版本号文件夹下新建
x64文件夹,将Python 3.10的完整安装文件全部移入该x64文件夹内 - 在版本号文件夹下(和
x64文件夹同级)新建一个名为.complete的空文件,无任何后缀名,该文件是代理识别可用版本的标记位,绝大多数同类问题都是遗漏了该文件
- 首先新建
- 第三步:配置完成后重启Azure Pipelines Agent服务,重新运行流水线即可正常匹配到Python 3.10版本
补充说明:
- 无需将Python路径加入系统环境变量,该任务不会读取系统PATH
- 之前使用的虚拟环境无法被该任务识别,必须放入工具目录的是完整的Python官方安装包
- 只要层级结构正确,
versionSpec写3.10即可自动匹配对应大版本下的最高子版本,无需写全三段版本号
内容的提问来源于stack exchange,提问作者GettingItDone
相关产品推荐
相关产品推荐

