跳转到主要内容

标签: pool

  • 系统模型

    Vonng 发布于 设计归档 1167 字 3 分钟

    VonngDesignrepositorydistpoolgeneration

    系统模型

    SOW 刻意把模型分层:配置表达意图,数据库记录有主状态,公共树是确定性投影。 任何一层都不能悄悄替代另一层。 对象层级 Workspace ├── Repository │ ├── Package Object │ ├── Dist │ │ └── Membership -> Package Object │ ├── Desired 状态 │ ├── Built Generation │ └── Retained Generation 引用 └── Publication Target └── …

    SOW 刻意把模型分层:配置表达意图,数据库记录有主状态,公共树是确定性投影。 任何一层都不能悄悄替代另一层。 对象层级 Workspace ├── Repository │ ├── Package Object │ ├── Dist │ │ └── Membership -> Package Object │ ├── Desired 状态 │ ├── Built Generation │ └── Retained Generation 引用 └── Publication Target └── …

  • 为什么 SOW 每个仓库只保留一棵包体树

    Vonng 发布于 设计归档 1516 字 4 分钟

    VonngDesignrepositorypoolrpmaptcompatibilitydecision

    为什么 SOW 每个仓库只保留一棵包体树

    这项决策起草于 2026-08-05 的 v0.2 发布前设计收敛阶段,并在 2026-08-08 随 SOW v0.2.0 正式交付,随后延续为 v0.3 与 v0.4 的布局契约。它记录的是架构选择,不是笼统的兼容性 PASS:协议闭包、普通软件包客户端、镜像工具、静态托管与对象存储始终属于彼此独立的证据层。 最终决策 每个 SOW Repository 只拥有一棵公共树: <repository>/ pool/ # 正典包体 dists/ <dist>/ <architecture>/ # …

    这项决策起草于 2026-08-05 的 v0.2 发布前设计收敛阶段,并在 2026-08-08 随 SOW v0.2.0 正式交付,随后延续为 v0.3 与 v0.4 的布局契约。它记录的是架构选择,不是笼统的兼容性 PASS:协议闭包、普通软件包客户端、镜像工具、静态托管与对象存储始终属于彼此独立的证据层。 最终决策 每个 SOW Repository 只拥有一棵公共树: <repository>/ pool/ # 正典包体 dists/ <dist>/ <architecture>/ # …

  • 仓库布局

    发布于 参考

    Referencerepositorypooldist

    SOW 的 Managed 布局只有一种:软件包体在 pool/ 下只存一份,dists/ 只保存客户端视图元数据。对外服务、复制或发布时,单位始终是完整仓库目录。 Plain 模式 sow create 在现有软件包旁写入索引,不修改无关文件: /srv/offline/ ├── blackbox_exporter-0.28.0-1.x86_64.rpm ├── libpq5_18.3-1.pgdg12+1_amd64.deb ├── repodata/ │ ├── …

    SOW 的 Managed 布局只有一种:软件包体在 pool/ 下只存一份,dists/ 只保存客户端视图元数据。对外服务、复制或发布时,单位始终是完整仓库目录。 Plain 模式 sow create 在现有软件包旁写入索引,不修改无关文件: /srv/offline/ ├── blackbox_exporter-0.28.0-1.x86_64.rpm ├── libpq5_18.3-1.pgdg12+1_amd64.deb ├── repodata/ │ ├── …

  • 包池与元数据视图

    发布于 功能

    Featurepooldistrpmdeb

    不变式 在一个 Repository 内,每个 live Package Object 在 pool/ 下只有一条正典 payload 路径。 Dist 与架构 view 拥有元数据,不拥有包体 alias: <repo>/pool/... 正典包体 <repo>/dists/<rpm-dist>/<arch>/repodata/... 纯 RPM 元数据 <repo>/dists/<deb-dist>/main/binary-*/... 纯 APT 元数据 相同 digest 出现在另一个 …

    不变式 在一个 Repository 内,每个 live Package Object 在 pool/ 下只有一条正典 payload 路径。 Dist 与架构 view 拥有元数据,不拥有包体 alias: <repo>/pool/... 正典包体 <repo>/dists/<rpm-dist>/<arch>/repodata/... 纯 RPM 元数据 <repo>/dists/<deb-dist>/main/binary-*/... 纯 APT 元数据 相同 digest 出现在另一个 …