Files
REPO_TEST/script/04_package_tps_test/README_compare_ldy.md
2025-07-23 20:41:13 +08:00

2.6 KiB
Raw Permalink Blame History

compare.py 使用说明文档

脚本简介

该脚本用于比较测试仓库与发布仓库新增/减少的软件包的构建差异:

  • 自动下载并解压 primary.sqlite 数据库文件
  • 提取 SRPM 与 Binary NVR 信息
  • 分析多个仓库中同一 SRPM 的二进制构建差异
  • 输出本周重点分析的 SRPM 差异(新增/减少)
  • 输出多仓库整体 SRPM 构建分布情况到 Excel 文件

使用方法

python3 compare.py

脚本默认读取当前目录下的 config.ini 配置文件。

配置说明

config.ini 配置格式如下:

[V10sp4-x86] baseurls = base=https://update.cs2c.com.cn/NS/V10/V10SP3-2403/os/adv/lic/base/x86_64/ updates=https://update.cs2c.com.cn/NS/V10/V10SP3-2403/os/adv/lic/updates/x86_64/ updates_test = https://update.cs2c.com.cn/private_test/repo/V10/V10SP3-2403/os/adv/lic/updates/x86_64/ filename = V10SP3-2403-x86分析报告

[V10sp3-x86] baseurls = base=https://update.cs2c.com.cn/NS/V10/V10SP3/os/adv/lic/base/x86_64/ updates=https://update.cs2c.com.cn/NS/V10/V10SP3/os/adv/lic/updates/x86_64/ updates_test = https://update.cs2c.com.cn/private_test/repo/V10/V10SP3/os/adv/lic/updates/x86_64/ filename = V10SP3-x86分析报告

支持多个产品段落,每个段落会分别输出一个分析结果。


输出内容说明

脚本会输出一个 .xlsx 文件,包含以下 Sheet

  1. 仓库所有SRPM分析:列出所有仓库中 SRPM → Binary 包映射与差异信息
  2. 外网仓库本周重点分析的SRPM:筛选重点 SRPM 在 base 与 updates 仓库中的构建差异
  3. 测试仓库本周重点分析的SRPM:筛选重点 SRPM 在 base 与 updates_test 仓库中的构建差异
  4. 测试仓库对比:展示 updates 与 updates_test 仓库中新增/减少的 SRPM 与 Binary 包
  5. 仓库原始数据(可选):包含各仓库原始包信息

分析字段说明

输出的主要字段如下:

  • Repo:仓库名
  • SRPM Name:源码包名(无版本)
  • SRPM Version源码包版本号version-release
  • Binary Package List:构建出的二进制包名(不含版本)
  • Binary NVR List:完整二进制包 NVR
  • Binary Count:该 SRPM 构建的二进制包数量
  • Binary Count Changed是否存在包数量变动Yes/No
  • Added Binaries / Removed Binaries:相对于其他版本新增/减少的二进制包名

依赖组件

  • Python 3.x
  • requests
  • lxml
  • pandas
  • openpyxl

安装依赖示例:

pip install requests lxml pandas openpyxl

示例输出文件

输出文件名格式如下:

<ProductName>-差异分析-YYYYMMDD-HHMM.xlsx