功能：
cve-daily提供工具：检测开源修改、自研包外网源最新版本号，仓库各pocket版本号，作为修复版本参考依据。

执行方式为：
 ./scan.sh

!!!!!!!!!!请注意使用前先填写config 配置文件
config配置文件说明：
#参数填写范围： {参数名}: {参数内容} #end {参数名} ，以下为各参数填写示例
#包名 （填写指定源码包列表，结果文档中只会显示存在于该源码包列表中的数据，以下示例就只会获取ukui-control-center和kylin-os-installer两个源码包的版本号）
packages-list:
ukui-control-center
kylin-os-installer
#end packages-list

#产线版本 (填写方式参考 CVE常态化自动化测试提测模板.xlsx 文档'产线版本'列内容，工具会获取目标产线版本对应的仓库和正式源数据)
production_line_version:
XC-2107
XC-2203
XC-2303
#end production_line_version

#内网上线版本 （用于指定需要查询的内网上线版本），数据会通过下一行格式组合成源：
#"deb [trusted=yes] http://archive.launchpad.dev/archive.kylinos.cn/kylin/KYLIN-ALL ${version} multiverse restricted universe main"
version-list:
10.1-2303-updates
wayland-2107-9006c
#end version-list

#distro-id 列表（用于指定需要查询的系统的distro-id），以下两种格式都行：
distro-id-list:
(4081) Kylin-Desktop-V10-SP1-RC5-Build02-210521-arm64
4080
#end distro-id-list

工具执行逻辑说明：
1.从config文件获取各参数数据，并根据产线版本从《CVE常态化自动化测试提测模板.xlsx》中获取对应的仓库地址和正式源
2.下载内网上线版本源和产线版本对应正式源的包数据
3.下载指定distro-id列表对应系统的包数据
4.获取产线版本对应仓库数据，并由packages-list筛选，结果生成output/result.xlsx文件中的{产线版本}子表
5.根据第3点的数据，由packages-list筛选，结果生成output/result.xlsx文件中的{distro_info}子表
6.根据第2点的数据，由packages-list筛选，结果生成output/result.xlsx文件中的{source_info}子表

备注：
get_source_packages_info.sh 用于将version-list中所有源的包信息下载到本地packages_info/source_packages_info/ 目录下

get_distro_packages_list.sh 用于将distro-list中所有版本的包信息下载到本地packages_info/distro_packages_info/ 目录下

json_conversion.py 用于转化.list 数据格式（在get_distro_packages_list.sh 被调用）

get_config_info.py 用于获取 config 配置文件中的数据

get_warehouse_data.py 根据config中的production_line_version ,获取产线对应仓库内的pocket数据

result.py 用于从packages_info 目录下获取 packages-list 中包名的数据，结果保存在output 目录下


