用途
Artifactory 模块架构用于处理 BK-CI 中与制品存储和访问相关的工程问题。它聚焦于“文件和制品如何被存储与访问”,而不是流水线执行引擎本身。
适用场景包括:
- 上传、下载、归档构建产物
- 管理文件元数据、文件任务和下载令牌
- 切换或排查 BkRepo / 磁盘存储后端
- 处理报告文件、自定义目录和流水线产物路径
- 排查构建完成后的制品后处理
不适用场景包括:
- 只是商店组件发布问题,不涉及制品存储
- 只是普通文件路径拼接,不涉及制品语义和存储后端
- 只是流水线执行问题,不涉及产物归档或下载
主要能力
该技能提供两条排查主线:
- 存储模型与路径:参考 reference/1-artifact-storage.md
- BkRepo、任务与扩展:参考 reference/2-bkrepo-task-extension.md
它强调以下高信号规则:
- PROJECT_CODE / PROJECT_ID 通常仍按项目英文标识理解
- 文件元数据、文件任务和真实后端存储不是同一层
- BkRepo 与 Disk 是两套后端实现,排查时要先确认命中的实现类
- 构建完成后的异步处理也会影响制品最终可见性
使用方式
先判断问题属于哪条主线,再查阅对应参考文档。
如果问题表现为上传成功但文件找不到,先区分是:
- 元数据没落库
- 后端没存成功
- 路径规则错了
- 下载令牌或权限错了
存储后端切换或双实现问题,优先确认实际走的是 BkRepo 还是本地磁盘实现。
适用场景
适合在排查制品归档、下载、清理链路,以及 BkRepo 集成和存储后端切换时使用。涉及项目语义时,可再看 project-module-architecture;涉及商店归档时,可再看 store-module-architecture。
限制与关键陷阱
- 只看文件存储后端,不看元数据和任务状态
- 路径规则变了却没同步影响下载、报告或自定义目录逻辑
- 只验证上传接口成功,不验证后续查询、下载和清理链路
- 把商店归档和普通流水线制品归档混成同一问题
关于具体接口、配置项、代码实现和安装命令,资料中暂未提供。