标签: plain
-
SOW v0.3.0
SOW 0.3.0 围绕性能、持久性与产品边界完成了一次集中改进:Plain 仓库生成只需一遍包体处理; Managed 仓库消除了逐对象成员查询,复用经过认证的软件包事实,并用有界组提交提升载荷。正式 交付的二进制与发布流水线也统一收敛到 SOW 实际支持的仓库工作流。 Plain:一遍完成包体处理 默认无签名 sow create 路径通过 --jobs 控制并行度,每个 RPM 或 DEB 只做一次哈希与解析, 随后直接利用保留的检查结果渲染元数据。发布前只做最后一次软件包集合与文件 …
SOW 0.3.0 围绕性能、持久性与产品边界完成了一次集中改进:Plain 仓库生成只需一遍包体处理; Managed 仓库消除了逐对象成员查询,复用经过认证的软件包事实,并用有界组提交提升载荷。正式 交付的二进制与发布流水线也统一收敛到 SOW 实际支持的仓库工作流。 Plain:一遍完成包体处理 默认无签名 sow create 路径通过 --jobs 控制并行度,每个 RPM 或 DEB 只做一次哈希与解析, 随后直接利用保留的检查结果渲染元数据。发布前只做最后一次软件包集合与文件 …
-
设计原则
SOW 首先不是一个“元数据生成器”,而是一个所有权与状态迁移系统,只是它的输出恰好是 APT 与 RPM 仓库。下面这些原则让整套系统保持可推理。 每个持久事实只有一个主人 每类持久事实都只有一个作用域与权威: 事实 所有者 包体与软件包身份 Repository Desired 成员关系与 Built 状态 Repository Generation 与 Changeset Repository 发布目标绑定与 Revision Repository + Target …
SOW 首先不是一个“元数据生成器”,而是一个所有权与状态迁移系统,只是它的输出恰好是 APT 与 RPM 仓库。下面这些原则让整套系统保持可推理。 每个持久事实只有一个主人 每类持久事实都只有一个作用域与权威: 事实 所有者 包体与软件包身份 Repository Desired 成员关系与 Built 状态 Repository Generation 与 Changeset Repository 发布目标绑定与 Revision Repository + Target …
-
核心概念
Plain 还是 Managed 两条运行路径相互独立。 Plain Managed 入口 sow create DIR init、repo、dist、add、rm、build 状态 软件包目录 sow.yml 加私有 SQLite/操作日志 公共布局 平面 RPM/DEB 索引 Repository pool/ + dists/ 格式 RPM 与 DEB 可共存于一个目录 每个 Dist 一种格式 架构视图 无 有 策略与审计 无 有 元数据签名与发布目标 无 有 目录内容已经等于目标仓库时使 …
Plain 还是 Managed 两条运行路径相互独立。 Plain Managed 入口 sow create DIR init、repo、dist、add、rm、build 状态 软件包目录 sow.yml 加私有 SQLite/操作日志 公共布局 平面 RPM/DEB 索引 Repository pool/ + dists/ 格式 RPM 与 DEB 可共存于一个目录 每个 Dist 一种格式 架构视图 无 有 策略与审计 无 有 元数据签名与发布目标 无 有 目录内容已经等于目标仓库时使 …
-
功能
SOW 提供两条相互隔离的运行路径。Plain 模式无状态地重建一个目录;Managed 模式在工作区中 持续记录软件包成员关系与不可变仓库 Generation。两者都不会暗中接管对方的状态。 能力矩阵 能力 Plain Managed RPM 与 DEB 元数据 是 是 RPM + DEB 混合操作 同一目录 同一 Repository、不同 Dist 持久成员关系与 Generation 否 是 分架构视图与中性包投影 否 是 exclude 与版本 limit 策略 否 是 元数据签名 …
SOW 提供两条相互隔离的运行路径。Plain 模式无状态地重建一个目录;Managed 模式在工作区中 持续记录软件包成员关系与不可变仓库 Generation。两者都不会暗中接管对方的状态。 能力矩阵 能力 Plain Managed RPM 与 DEB 元数据 是 是 RPM + DEB 混合操作 同一目录 同一 Repository、不同 Dist 持久成员关系与 Generation 否 是 分架构视图与中性包投影 否 是 exclude 与版本 limit 策略 否 是 元数据签名 …
-
快速上手
Plain 模式在一个目录内生成平面仓库。它不读取 sow.yml,不创建工作区,也不维护数据库。 准备目录 把 RPM 和/或 DEB 文件放在目录顶层。sow create 不递归扫描,也不移动或改名包文件。 mkdir -p /srv/repo cp /path/to/packages/*.rpm /path/to/packages/*.deb /srv/repo/ 如果某种格式不存在,请只复制你实际拥有的软件包。 生成元数据 sow create /srv/repo 混合格式输出形态如下 …
Plain 模式在一个目录内生成平面仓库。它不读取 sow.yml,不创建工作区,也不维护数据库。 准备目录 把 RPM 和/或 DEB 文件放在目录顶层。sow create 不递归扫描,也不移动或改名包文件。 mkdir -p /srv/repo cp /path/to/packages/*.rpm /path/to/packages/*.deb /srv/repo/ 如果某种格式不存在,请只复制你实际拥有的软件包。 生成元数据 sow create /srv/repo 混合格式输出形态如下 …
-
Plain 平面仓库
sow create 接手一个已经放着 .rpm / .deb 的目录,在包旁边生成平面仓库索引。Plain 模式没有工作区、配置文件、数据库、期望状态,也没有操作 journal。包目录就是权威事实来源,所有索引都是当前目录内容的可丢弃投影。 这个边界是刻意的:Managed 仓库保存状态并恢复事务;Plain 仓库失败了就便宜地重建。一次运行失败或被中断后,重新执行同一条命令,覆盖派生元数据即可。 契约 Plain 模式由四条规则定义: 包是权威事实。 默认 create 不修改包字节,只替 …
sow create 接手一个已经放着 .rpm / .deb 的目录,在包旁边生成平面仓库索引。Plain 模式没有工作区、配置文件、数据库、期望状态,也没有操作 journal。包目录就是权威事实来源,所有索引都是当前目录内容的可丢弃投影。 这个边界是刻意的:Managed 仓库保存状态并恢复事务;Plain 仓库失败了就便宜地重建。一次运行失败或被中断后,重新执行同一条命令,覆盖派生元数据即可。 契约 Plain 模式由四条规则定义: 包是权威事实。 默认 create 不修改包字节,只替 …
-
上手
SOW 生成 RPM/YUM 与 DEB/APT 静态仓库,本身不是 HTTP 守护进程。先选择一条相互隔离的 运行路径: Plain: sow create 在普通目录中为现有软件包重建索引。 Managed: 工作区持续记录成员关系、Dist、架构视图、策略、签名、Generation、 审计历史与发布目标。 安装 — 选择 Release 归档、RPM/DEB 安装包或源码构建,并校验二进制。 快速上手 — 从一个软件包目录创建平面仓库,并通过 HTTP 提供服务。 第一个工作区 — 初始 …
SOW 生成 RPM/YUM 与 DEB/APT 静态仓库,本身不是 HTTP 守护进程。先选择一条相互隔离的 运行路径: Plain: sow create 在普通目录中为现有软件包重建索引。 Managed: 工作区持续记录成员关系、Dist、架构视图、策略、签名、Generation、 审计历史与发布目标。 安装 — 选择 Release 归档、RPM/DEB 安装包或源码构建,并校验二进制。 快速上手 — 从一个软件包目录创建平面仓库,并通过 HTTP 提供服务。 第一个工作区 — 初始 …
-
sow create
sow create 把一个已经放着 .rpm / .deb 的目录变成平面仓库(flat repository):在包旁边写出索引 文件。它就是 Plain 平面模式的全部——没有 sow.yml、没有 SQLite、不做工作区发现。本页讲清单遍扫描 契约、--pigsty 完成门禁,以及 --sign-with 的 RPM 包签名。 语法 sow create [DIR] [-j N] [--pigsty] [-S KEY [--overwrite]] [-T DUR | -N] …
sow create 把一个已经放着 .rpm / .deb 的目录变成平面仓库(flat repository):在包旁边写出索引 文件。它就是 Plain 平面模式的全部——没有 sow.yml、没有 SQLite、不做工作区发现。本页讲清单遍扫描 契约、--pigsty 完成门禁,以及 --sign-with 的 RPM 包签名。 语法 sow create [DIR] [-j N] [--pigsty] [-S KEY [--overwrite]] [-T DUR | -N] …