{% if summary_info["result"] == 0 %}
兼容性分析结论:通过
{% elif summary_info["result"] == 1 %}
兼容性分析结论:需人工分析
{% elif summary_info["result"] == 2 %}
兼容性分析结论:不通过
{% else %}
兼容性分析结论:扫描异常
{% endif %}
输入参数:
{{summary_info["input_data"]}}
系统架构:
{{summary_info["sys_arch"]}}
扫描软件包:
{{summary_info["target_srpm"]}}
对比软件包:
{{summary_info["origin_srpm"]}}
提交仓库地址:
{{summary_info["koji_repo"]}}
操作类型:
{% if summary_info["tag_action"] == "remove" %}
删除tag
{% else %}
新增tag
{% endif %}
二进制包兼容结论
| 软件包名称 | 兼容性等级 | 结论 |
|---|---|---|
| {{item["rpm_name"]}} | {{item["rpm_level"]}} | {% if item["res"] == 0 %} {{item["res_desc"]}} {% elif item["res"] == 1 %} {{item["res_desc"]}} {% elif item["res"] == 2 %} {{item["res_desc"]}} {% else %} 扫描结果异常 {% endif %} |
{{rpm_item["rpm_name"]}}包兼容性详情
{% if not rpm_item["target_rpm_name"] or summary_info["tag_action"] == "remove" %}
依赖兼容性
{% if not rpm_item["target_rpm_name"] %}
子包删除
{% endif %}
(
{% if rpm_item["rpm_compare"] %}
{% if rpm_item["rpm_compare"]["pro_comp"] == 2%}
provides关系异常
{% elif rpm_item["rpm_compare"]["pro_comp"] == 1%}
provides关系需人工分析
{% elif rpm_item["rpm_compare"]["pro_comp"] == 0 %}
provides关系正常
{% else %}
provides扫描异常
{% endif %}
{% endif %}
)
{% if summary_info["tag_action"] == "remove" %}
{{rpm_item["target_rpm_name"]}}
{% else %}
{{rpm_item["origin_rpm_name"]}}
{% endif %}
差异项
影响范围
-
{% if rpm_item["rpm_compare"] and rpm_item["rpm_compare"]["provides_compare_res"] |length %}
{% for item in rpm_item["rpm_compare"]["provides_compare_res"] %}
-
{{item["compare_item"]}}减少{{item["effect_range"] | safe}}
{% endfor %}
{% else %}
暂无数据
{% endif %}
文件兼容性
{% if rpm_item["file_comp"] == 0 %}
兼容
{% elif rpm_item["file_comp"] == 1 %}
需人工分析
{% elif rpm_item["file_comp"] == 2 %}
不兼容
{% else %}
文件兼容性扫描异常
{% endif %}
{% if rpm_item["file_comp"] != 0 %}
(
{% endif %}
{% if rpm_item["comp_info"]["ret config"] == 2%}
配置文件删除 ;
{% elif rpm_item["comp_info"]["ret config"] == 0 %}
配置文件兼容 ;
{% endif %}
{% if rpm_item["comp_info"]["ret cmds"] == 2%}
可执行文件删除 ;
{% elif rpm_item["comp_info"]["ret cmds"] == 0 %}
可执行文件兼容 ;
{% endif %}
{% if rpm_item["comp_info"]["ret services"] == 2%}
服务文件删除 ;
{% elif rpm_item["comp_info"]["ret services"] == 0 %}
服务文件兼容 ;
{% endif %}
{% if rpm_item["file_compare"]["ret link"] == 1%}
软连接文件指向文件非本组rpm包 ;
{% endif %}
{% if rpm_item["comp_info"]["ret static"] == 1%}
静态文件删除 ;
{% endif %}
{% if rpm_item["file_comp"] != 0 %}
)
{% endif %}
{% if rpm_item["comp_info"]["ret config"] == 2 %}
{% endif %}
{% if rpm_item["comp_info"]["ret cmds"] == 2 %}
{% endif %}
{% if rpm_item["comp_info"]["ret services"] == 2 %}
{% endif %}
{% if rpm_item["file_compare"]["rpm static"]|length %}
{% endif %}
{% if rpm_item["file_compare"]["link_file"]|length %}
{% endif %}
配置文件删除列表
-
{% for del_conf_item in rpm_item["file_compare"]["rpm config"][2] %}
- {{del_conf_item[0]}} {% endfor %}
可执行文件删除列表
-
{% for del_cmd_item in rpm_item["file_compare"]["rpm cmds"][2] %}
-
{{del_cmd_item[0]}}
{% endfor %}
服务文件删除列表
-
{% for del_service_item in rpm_item["file_compare"]["rpm services"][2] %}
-
{{del_service_item[0]}}
{% endfor %}
静态文件删除列表
-
{% for static_file in rpm_item["file_compare"]["rpm static"] %}
- {{static_file}} {% endfor %}
软连接文件指向为空列表
-
{% for src_path, target_path in rpm_item["file_compare"]["link_file"].items() %}
- {{src_path}} -> {{target_path}} {% endfor %}
依赖兼容性
{% if rpm_item["dep_comp"] == 0 %}
依赖关系兼容
{% elif rpm_item["dep_comp"] == 1 %}
依赖关系需人工分析
{% elif rpm_item["dep_comp"] == 2 %}
依赖关系不兼容
{% else %}
依赖关系扫描异常
{% endif %}
(
{% if rpm_item["rpm_compare"]["req_comp"] == 2 %}
requires关系异常
{% elif rpm_item["rpm_compare"]["req_comp"] == 1 %}
requires关系需人工分析
{% elif rpm_item["rpm_compare"]["req_comp"] == 0 %}
requires关系正常
{% else %}
requires关系扫描异常
{% endif %}
{% if rpm_item["rpm_compare"]["pro_comp"] == 2%}
provides关系异常
{% elif rpm_item["rpm_compare"]["pro_comp"] == 1%}
provides关系需人工分析
{% elif rpm_item["rpm_compare"]["pro_comp"] == 0%}
provides关系正常
{% else %}
provides关系扫描异常
{% endif %}
)
{% if rpm_item["origin_rpm_name"] %}
{% endfor %}
{{rpm_item["origin_rpm_name"]}}
{% else %}
{% endif %}
{{rpm_item["target_rpm_name"]}}
差异项
影响范围
-
{% if rpm_item["rpm_compare"]["requires_compare_res"]|length %}
{% for item in rpm_item["rpm_compare"]["requires_compare_res"] %}
-
{% if rpm_item["origin_rpm_name"] %}
{% endif %} {% if rpm_item["origin_rpm_name"] %}{{item["compare_item"]}}{% else%}{% endif %}{% endfor %} {% else %}{{item["check_item"]}}{% if item["change_type"]=='add' %} 新增 {% elif item["change_type"]=='change' %} 变更 {% endif %}{{ item["effect_range"] | safe}}暂无数据{% endif %}
-
{% if rpm_item["rpm_compare"]["provides_compare_res"] |length %}
{% for item in rpm_item["rpm_compare"]["provides_compare_res"] %}
-
{% if rpm_item["origin_rpm_name"] %}
{{item["compare_item"]}}{% else %}{% endif %}{% endfor %} {% else %}{{item["check_item"]}}{% if item["change_type"]=='add' %} 新增 {% elif item["change_type"]=='delete' %} 减少 {% elif item["change_type"]=='change' %} 变更 {% endif %}{{item["effect_range"] | safe}}暂无数据{% endif %}
{% endif %} {% endif %}接口兼容性C接口兼容性检查{% if rpm_item["comp_info"]["ret elf"] == 0 %} 接口兼容 {% elif rpm_item["comp_info"]["ret elf"] == 1 %} 接口变更需人工分析 {% else %} 接口不兼容 {% endif %}接口兼容库数量: {{rpm_item["count_info"]["count elf"]["same"]}} 存在接口变更库数量: {{rpm_item["count_info"]["count elf"]["change"]}} 存在接口删除库数量: {{rpm_item["count_info"]["count elf"]["remove"]}}{% if rpm_item["java_compare"] %}{{rpm_item["origin_rpm_name"]}}{{rpm_item["target_rpm_name"]}}结论
兼容变更删除-
{% if rpm_item["abi_compare"]["ret elf"]%}
{% for item in rpm_item["abi_compare"]["elf abi"] %}
{% if item["abi_comp"] == 1 %}
-
{{item["old_so_name"]}}{{item["new_so_name"]}}变更{% for chg_item in item["changed_detail"] %} {% if chg_item["type"] != "added" %}函数名原函数定义目标函数定义定义源文件ABI检查API检查{% endif %} {% endfor %}{{loop.index}}{{chg_item["func_name"]}}{{chg_item["old_func_def"]}}{{chg_item["new_func_def"]}}{{chg_item["file_name"]}}{% if chg_item["type"] == "removed" %}删除{% else %}变更-查看详情{% endif %} {% if chg_item["is_api"] == "true" %}可见-查看详情{% else %}不可见{% endif%}
{% elif item["abi_comp"] == 2 %}
{% if item["changed_detail"] %}
-
{{item["old_so_name"]}}{{item["new_so_name"]}}变更{% for chg_item in item["changed_detail"]%} {% if chg_item["type"] != "added" %}函数名原函数定义目标函数定义定义源文件ABI检查API检查{% endif %} {% endfor %}{{loop.index}}{{chg_item["func_name"]}}{{chg_item["old_func_def"]}}{{chg_item["new_func_def"]}}{{chg_item["file_name"]}}{% if chg_item["type"] == "removed" %}删除{% else %}变更-查看详情{% endif %} {% if chg_item["is_api"] == "true" %}可见-查看详情{% else %}不可见{% endif%}
{% else %}
-
{{item["old_so_name"]}}{{item["new_so_name"]}}删除
{% endif %}
{% else %}
-
{{item["old_so_name"]}}{{item["new_so_name"]}}兼容
{% endif %}
{% endfor %}
-
{{item["old_so_name"]}}{{item["new_so_name"]}}兼容
{% endif %}
{% endfor %}
{% endif %}
暂无数据{% else %} {% if rpm_item["abi_compare"]["elf abi"]|length %} {% for item in rpm_item["abi_compare"]["elf abi"] %} {% if item["abi_comp"] == 0 %}暂无数据{% endif %}Java接口兼容性检查{% if rpm_item["comp_info"]["ret java"] == 0 %} 接口兼容 {% else %} 接口不兼容 {% endif %}接口兼容数量: {{rpm_item["java_compare"]["unchanged"]}} 接口新增数量: {{rpm_item["java_compare"]["added"]}} 接口变更数量: {{rpm_item["java_compare"]["changed"]}} 接口删除数量: {{rpm_item["java_compare"]["removed"]}}{% endif %}objectNameobjectTypeclassName结论
新增变更删除-
{% if rpm_item["java_compare"]["ret java"] %}
{% for item in rpm_item["java_compare"]["info"] %}
{% if item["change_type"] == "changed" %}
-
{{item["object_name"]}}{{item["object_type"]}}{{item["class_name"]}}变更src_objecttarget_objectdesc{{item["src_object"]}}{{item["target_object"]}}{{item["change_info"]}}
{% elif item["change_type"] == "removed" %}
-
{{item["object_name"]}}{{item["object_type"]}}{{item["class_name"]}}删除src_objecttarget_objectdesc{{item["src_object"]}}{{item["target_object"]}}{{item["change_info"]}}
{% endif %}
{% endfor %}
-
{{item["object_name"]}}{{item["object_type"]}}{{item["class_name"]}}新增src_objecttarget_objectdesc{{item["src_object"]}}{{item["target_object"]}}{{item["change_info"]}}
{% endif %}
{% endfor %}
暂无数据{% else %} {% for item in rpm_item["java_compare"]["info"] %} {% if item["change_type"] == "added" %}暂无数据{% endif %} -
{% if rpm_item["origin_rpm_name"] %}