已合并
[feat]devcontainer #40299
SCh_zx创建于 7月7日
[feat]devcontainer #40299
已合并
SCh_zx创建于 7月7日
SCh_zx成员
7月7日

【合入来源】

如有社区issue,请关联issue链接
请勿携带内部流程信息(需求链接、问题单、内部issue等)

  • 需求
  • 问题单
  • issue/工单
  • 重构优化
  • 资料更新

【修改方案】

请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列
如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容)

新增devcontainer功能,以支持在ide环境下直接构建开发镜像。
合并x86与arm不同架构的dockerfile,简化构建流程。

【资料变更】

请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及”

【接口变更】

请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及”

【功能验证】

说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤
新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图

【CheckList】

PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x]

  • 代码注释完备,正确记录错误日志
  • 代码实现进行了返回值、空指针等校验
  • PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等
  • PR持续集成流水线(CI)执行通过,代码检查无异常
likedislike
Pull Request已成功合入, 合并人@ascend-robot
(感谢 SCh_zx 的贡献)
SSCh_zx成员
7月7日 创建了 pull request,commit cf3179c3
atomgit-bot
atomgit-bot
7月7日 评论:

变更摘要

此 PR 主要为 TorchNPU 项目引入 VS Code DevContainer 开发环境支持,同时重构了 Docker 构建脚本,将原本按架构(X86/ARM)分开维护的 Docker 文件统一为单一 docker/devel/Dockerfile,通过 TARGETARCH 构建参数实现多架构兼容。

主要改动

  • 新增 .devcontainer/devcontainer.json:添加 DevContainer 配置文件,基于 docker/devel/Dockerfiledev 阶段构建,预设了 CANN 驱动、NPU 设备等相关挂载路径和环境变量(如 LD_LIBRARY_PATH),支持在 VS Code 中一键启动 TorchNPU 开发容器。
  • 删除 docker/builder/ARM/Dockerfile:移除独立的 ARM 架构 Dockerfile(共 120 行),其构建逻辑合并到统一的 docker/devel/Dockerfile 中,减少重复维护成本。
  • 改造 docker/devel/Dockerfile:基础镜像从 manylinux_2_28_x86_64 改为多架构的 manylinux_2_28,新增 TARGETARCH 构建参数,使 cmake 安装仅针对 amd64 架构执行,避免 ARM 上不必要的安装。
  • 简化 docker/devel/builder.sh:移除 ARCH 架构判断分支逻辑(原 x86_64/aarch64 分支),将 DOCKERFILE_DIR 统一指向脚本自身所在目录 "${SCRIPT_DIR}",不再按架构区分子目录。
likedislike
atomgit-bot
atomgit-bot
7月7日 评论:

代码审查

审查总结

优先级 数量
P0 0
P1 0
P2 1
P3 0

各文件审查结论:

  • .devcontainer/devcontainer.json — 新增文件,JSON 结构合法,配置项正确,未发现问题。
  • docker/devel/Dockerfile — 基础镜像切换为多架构 manifest、新增 TARGETARCH 实现 cmake 按架构条件安装,逻辑正确,未发现问题。
  • docker/devel/README.md — Linux 部分路径更新正确;Windows 附录中工作目录路径未同步更新(仍指向已删除的 docker\builder),已报告 1 个 P2 问题。
  • docker/devel/builder.sh — 移除架构目录选择逻辑,简化为直接使用当前目录,变更正确,未发现问题。

整体风险评估:低风险。 仅一个 Windows 文档路径错误,不影响 Linux 用户和 CI 流程,修复简单。

类型 数量
🔴 阻塞 1
🟡 建议 1

⛔ 需要修改

likedislike
ascend-robotascend-robot成员
7月7日 添加了label:ascend-cla/yes
此处折叠了150条消息 查看更多
renyujin成员
7月8日 评论:

/lgtm
/approve

likedislike
ascend-robotascend-robot成员
7月8日 添加了label:approvedlgtm
ascend-robotascend-robot成员
7月8日 合入了pull request
ascend-robot
ascend-robot成员
7月8日 评论:

Pull Request 已合并或已关闭。

If you want to solve this problem, you can click here to do it in the FAQs.

likedislike
ascend-robot
ascend-robot成员
7月8日 评论:
流水线 pytorch_gitcode_PR_multiVersion#12195 [ commitID:d7d3cb90 ] 已完成
likedislike