已合并
[feat]devcontainer #40298
SCh_zx创建于 7月7日
[feat]devcontainer #40298
已合并
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 706b7e44
atomgit-bot
atomgit-bot
7月7日 评论:

变更摘要

此 PR 主要为 TorchNPU 项目添加了 VS Code DevContainer 开发环境支持,同时将原先按架构分离的 ARM/X86 Dockerfile 合并为统一的多架构 Dockerfile,并简化了构建脚本的架构判别逻辑。

主要改动

  • 新增 .devcontainer/devcontainer.json:定义了基于 docker/devel/Dockerfile 构建的 DevContainer 配置,预置 CANN 9.1.0_beta.1、PyTorch 2.9.0、Python 3.10,并挂载 NPU 设备、驱动及日志目录,便于开发者一键启动容器化开发环境。
  • 删除 docker/builder/ARM/Dockerfile:移除了独立维护的 ARM 架构构建镜像,原有功能整合至统一的 docker/devel/Dockerfile 中。
  • docker/devel/Dockerfile 多架构适配:基础镜像由 manylinux_2_28_x86_64 替换为 manylinux_2_28(自动适配架构),新增 TARGETARCH 参数,并将 cmake 安装操作限定为仅在 amd64 架构下执行。
  • 简化 docker/devel/builder.sh:移除了基于 uname -m 的架构分支判断(原将 x86_64 映射到 X86 子目录、aarch64 映射到 ARM 子目录),DOCKERFILE_DIR 直接设置为脚本所在目录 SCRIPT_DIR,与合并后的单 Dockerfile 结构保持一致。
likedislike
atomgit-bot
atomgit-bot
7月7日 评论:

代码审查


审查总结

已逐文件完成审查,结果如下:

文件 审查结论
.devcontainer/devcontainer.json 1 个发现 (P3)
docker/devel/Dockerfile 1 个发现 (P3)
docker/devel/README.md 1 个发现 (P2)
docker/devel/builder.sh 无问题

按优先级统计:

  • P2:1 个 — README 中 Windows 工作目录路径 pytorch\docker\builder 应为 pytorch\docker\devel,会误导 Windows 用户
  • P3:2 个 — Dockerfile 中 ARG TARGETARCH 依赖 BuildKit,经典构建器下 cmake 在 amd64 上静默不安装;devcontainer 以 root + privileged 运行的安全风险

整体风险评估:低至中。 主要回归风险来自 README 文档错误(P2)和 TARGETARCH 对非 BuildKit 环境的兼容性问题(P3)。核心逻辑(Dockerfile 架构统一、builder.sh 目录简化、devcontainer 配置结构)均正确,没有发现 P0/P1 级别的问题。

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

💬 仅评论

likedislike
ascend-robotascend-robot成员
7月7日 添加了label:ascend-cla/yes
此处折叠了159条消息 查看更多
SSCh_zx成员
7月8日 修改了pull request 的描述
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