跳转到主要内容

Feature

8 篇
  • 可观测与审计

    发布于 功能

    Featureaudittransaction

    用 status 查看状态,check 校验仓库,changes 查看文件变化,log 读取操作历史。 命令 回答的问题 status 是否需要构建或恢复?是否有写者活动? check 状态、包字节、索引、签名是否一致且可以交付? changes 两个构建快照之间有哪些本地文件变化? log 执行了哪些操作,改变了什么? retain ls 显式保留了哪些构建快照? 这些命令不修改仓库内容。 查看状态 sow status -r demo 结果包含期望状态修订号、构建快照、脏 Dist、待构建包 …

    用 status 查看状态,check 校验仓库,changes 查看文件变化,log 读取操作历史。 命令 回答的问题 status 是否需要构建或恢复?是否有写者活动? check 状态、包字节、索引、签名是否一致且可以交付? changes 两个构建快照之间有哪些本地文件变化? log 执行了哪些操作,改变了什么? retain ls 显式保留了哪些构建快照? 这些命令不修改仓库内容。 查看状态 sow status -r demo 结果包含期望状态修订号、构建快照、脏 Dist、待构建包 …

  • 事务与恢复

    发布于 功能

    Featuretransactiongenerationaudit

    Managed 模式先记录变更,再应用变更。中断后,SOW 根据记录完成或回滚操作。 应使用哪个命令恢复,取决于中断的操作。 恢复中断操作 先查看记录的状态: sow status -r demo sow log -r demo 状态 下一步 clean 交付前运行 sow check dirty 运行 sow build,应用待构建的成员或配置变化 recovering 按下表选择与中断操作对应的恢复命令 error 根据诊断与日志检查报错文件或操作 中断操作 恢复命令 …

    Managed 模式先记录变更,再应用变更。中断后,SOW 根据记录完成或回滚操作。 应使用哪个命令恢复,取决于中断的操作。 恢复中断操作 先查看记录的状态: sow status -r demo sow log -r demo 状态 下一步 clean 交付前运行 sow check dirty 运行 sow build,应用待构建的成员或配置变化 recovering 按下表选择与中断操作对应的恢复命令 error 根据诊断与日志检查报错文件或操作 中断操作 恢复命令 …

  • 签名模型

    发布于 功能

    Featuresigningrpmapt

    配置元数据签名,让客户端验证仓库索引。需要客户端验证 RPM 文件内嵌签名时, 另行配置 RPM 包签名。 签名对象 配置 签名内容 输出 客户端设置 signing.rpm.metadata RPM 索引清单 repodata/repomd.xml.asc DNF repo_gpgcheck=1 signing.deb.metadata APT 发布清单 InRelease、Release.gpg APT Signed-By signing.rpm.packages RPM 包 内嵌 …

    配置元数据签名,让客户端验证仓库索引。需要客户端验证 RPM 文件内嵌签名时, 另行配置 RPM 包签名。 签名对象 配置 签名内容 输出 客户端设置 signing.rpm.metadata RPM 索引清单 repodata/repomd.xml.asc DNF repo_gpgcheck=1 signing.deb.metadata APT 发布清单 InRelease、Release.gpg APT Signed-By signing.rpm.packages RPM 包 内嵌 …

  • 成员策略

    发布于 功能

    Featurepolicymanaged

    用 Dist 策略排除不需要的包,并限制索引中的版本数量。在 sow.yml 中配置 exclude 和 limit: dists: el9: format: rpm limit: 2 exclude: - kind: [debuginfo, debugsource, llvmjit] SOW 先执行 exclude,再执行 limit。add、rm 和 build 都会对所选 Dist 的完整候选 成员集合应用策略。编辑策略后,先运行 sow config check,再运行 sow …

    用 Dist 策略排除不需要的包,并限制索引中的版本数量。在 sow.yml 中配置 exclude 和 limit: dists: el9: format: rpm limit: 2 exclude: - kind: [debuginfo, debugsource, llvmjit] SOW 先执行 exclude,再执行 limit。add、rm 和 build 都会对所选 Dist 的完整候选 成员集合应用策略。编辑策略后,先运行 sow config check,再运行 sow …

  • 包池与元数据视图

    发布于 功能

    Featurepooldistrpmdeb

    Managed 仓库将每个包对象保存在 pool/ 中。Dist 和架构视图只包含引用这些包字节的索引。 <repo>/pool/ 包文件 <repo>/dists/<rpm-dist>/<arch>/repodata/ RPM 元数据 <repo>/dists/<deb-dist>/main/binary-*/ APT 元数据 存储范围是一个仓库。同一个包放入其他仓库或发布目标后,分别占用相应仓库或目标的命名空间。 RPM 视图 RPM Dist 为每个配置架构生成一个元数据目录: …

    Managed 仓库将每个包对象保存在 pool/ 中。Dist 和架构视图只包含引用这些包字节的索引。 <repo>/pool/ 包文件 <repo>/dists/<rpm-dist>/<arch>/repodata/ RPM 元数据 <repo>/dists/<deb-dist>/main/binary-*/ APT 元数据 存储范围是一个仓库。同一个包放入其他仓库或发布目标后,分别占用相应仓库或目标的命名空间。 RPM 视图 RPM Dist 为每个配置架构生成一个元数据目录: …

  • 功能

    发布于 功能

    Featureplainmanagedpolicysigning

    SOW 用两种模式创建仓库索引。可以随时重建的包目录使用 Plain; 需要持续更新、策略、签名和发布的仓库使用 Managed。 功能对照 功能 Plain Managed RPM 与 DEB 索引 一个目录,可包含任一种或两种格式 一个仓库,分别使用不同 Dist 持久化成员与构建快照 — 支持 分架构视图 — 支持,包含架构无关包 包排除 --pigsty 使用固定清理规则 按 Dist 配置 版本数量限制 — 按 Dist 配置 元数据签名 — RPM 和 DEB RPM 包签名 …

    SOW 用两种模式创建仓库索引。可以随时重建的包目录使用 Plain; 需要持续更新、策略、签名和发布的仓库使用 Managed。 功能对照 功能 Plain Managed RPM 与 DEB 索引 一个目录,可包含任一种或两种格式 一个仓库,分别使用不同 Dist 持久化成员与构建快照 — 支持 分架构视图 — 支持,包含架构无关包 包排除 --pigsty 使用固定清理规则 按 Dist 配置 版本数量限制 — 按 Dist 配置 元数据签名 — RPM 和 DEB RPM 包签名 …

  • Managed 工作区

    发布于 功能

    Featuremanagedrepositorydistgeneration

    定期更新的仓库适合使用 Managed 模式。SOW 记录包成员关系、执行 Dist 策略、构建元数据, 并保留操作历史。 工作区、仓库与 Dist Workspace(工作区) └── Repository(仓库) └── Dist(软件包集合) └── Architecture view(架构视图) 术语 用途 工作区 保存 sow.yml、私有 .sow/ 状态和允许的架构族 仓库 拥有独立包池、Dist、SQLite 数据库、构建快照(Generation)和发布状态 Dist 按名称组 …

    定期更新的仓库适合使用 Managed 模式。SOW 记录包成员关系、执行 Dist 策略、构建元数据, 并保留操作历史。 工作区、仓库与 Dist Workspace(工作区) └── Repository(仓库) └── Dist(软件包集合) └── Architecture view(架构视图) 术语 用途 工作区 保存 sow.yml、私有 .sow/ 状态和允许的架构族 仓库 拥有独立包池、Dist、SQLite 数据库、构建快照(Generation)和发布状态 Dist 按名称组 …

  • Plain 平面仓库

    发布于 功能

    Featureplainrpmdeb

    用 sow create 为一个 RPM 或 DEB 软件包目录生成索引。索引与包文件放在一起。 该命令不读取 sow.yml,也不创建状态数据库。 sow create /srv/offline 输入与输出 SOW 只扫描目录顶层以 .rpm 或 .deb 结尾的普通文件,不递归,也不跟随包文件符号链接。 包名、版本和架构来自包内信息。源码 RPM(src 和 nosrc)会被拒绝。 输入 生成文件 RPM repodata/repomd.xml 和 gzip 压缩的 …

    用 sow create 为一个 RPM 或 DEB 软件包目录生成索引。索引与包文件放在一起。 该命令不读取 sow.yml,也不创建状态数据库。 sow create /srv/offline 输入与输出 SOW 只扫描目录顶层以 .rpm 或 .deb 结尾的普通文件,不递归,也不跟随包文件符号链接。 包名、版本和架构来自包内信息。源码 RPM(src 和 nosrc)会被拒绝。 输入 生成文件 RPM repodata/repomd.xml 和 gzip 压缩的 …