View a markdown version of this page

SupportInfo XML 结构 - Amazon Linux 2023

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

SupportInfo XML 结构

本页记录了用于定义 Linux 发行版的软件包支持生命周期、时间表和分类的 v1.0 XML 架构。该架构独立于 DNF,不特定于任何单一发行版。你可以直接从任何工具上使用它。该dnf supportinfo插件就是这样一个消费者。

  • 架构定义 (XSD):https://cdn.amazonlinux.com/al2023/core/supportinfo-1.0.xsd

  • 支持数据 (XML):https://cdn.amazonlinux.com/al2023/core/AL2023-supportinfo-1.0.xml

要直接解析此 XML,请使用实现本页描述的架构的开源amazon-linux-supportinfo库,而不是编写自定义解析器。

插件如何使用此文件

该插件从该文件中报告:

  • 软件包处于哪个支持级别(这些值填充--show筛选选项)

  • 生命周期阶段发生变化时(显示在--pkg输出和时间轴中)

  • 每个支持级别的补丁优先级和严重性覆盖范围

  • 包裹来自哪里(原产地和分类)

完整的最小示例

此示例显示了包含所有必需部分和一个包的最低结构:

<package_support schema_version="1.0" current_as="2025-08-21T22:41:55.575196"> <lifecycles> <lifecycle name="default_lc" display_name="AL2023 Standard Lifecycle" description="Standard support lifecycle for Amazon Linux 2023 packages"> <phase name="full_support" support_level="default" start_milestone="AL2023_GA" display_name="Full Support"/> <phase name="end_of_support" support_level="eos" start_milestone="AL2023_EOS" display_name="End of Support"/> </lifecycle> </lifecycles> <support_milestones> <milestone name="AL2023_GA" date="2023-03-15" display_name="AL2023 General Availability" description="Amazon Linux 2023 general availability date"/> <milestone name="AL2023_EOS" date="2029-06-30" display_name="AL2023 End of Support" description="End of all support for Amazon Linux 2023"/> </support_milestones> <support_levels> <support_level name="default" severities="Low,Medium,Important,Critical" description="Full security and bug fix support for all severities" display_name="Default Support" /> <support_level name="eos" severities="" description="End of support - no further updates" display_name="End of Support" /> </support_levels> <packages> <package name="curl" lifecycle="default_lc" origin="al2023_core" package_class="default"/> </packages> <package_classes> <package_class name="default"> <summary>Default class for Amazon Linux packages</summary> <text></text> </package_class> </package_classes> <package_origins> <package_origin name="al2023_core" repo_id="amazonlinux" dist="amzn2023" vendor="amazonlinux" display_name="Amazon Linux 2023 Core" description="Core Amazon Linux 2023 repository" /> </package_origins> <notes> <note name="eol_redis6">Upstream end-of-life for Redis 6 (redis6) is 2025-08-31</note> </notes> </package_support>

元素参考

package_support(根元素)

包含所有支持元数据的根元素。

属性 必需 描述
schema_version 架构格式版本(当前1.0
current_as 上次生成支持数据时的 ISO 时间戳
<package_support schema_version="1.0" current_as="2025-08-21T22:41:55.575196">

current_as时间戳显示在输出中,以表示数据的新鲜度。

生命周期

定义软件包随时间推移所经历的阶段顺序。

属性 必需 描述
name 引用的唯一标识符 package@lifecycle
note 参考文献 a note@name 以获取更多上下文
display_name Customer-facing 标签
description Human-readable 描述
<lifecycle name="redis6_lc" note="eol_redis6" display_name="Redis 6 Lifecycle" description="Support lifecycle for Redis 6 packages"> <phase .../> </lifecycle>

该插件按顺序浏览各个阶段,找到当前处于活动状态的阶段,并在输出中报告该阶段的支持级别。

phase

定义生命周期中的一个阶段。每个阶段一直持续到下一阶段开始(如果是最后一个阶段,则无限期)。

属性 必需 描述
name 阶段标识符(在其生命周期内是唯一的)
support_level 参考文献 a support_level@name
start_date 有条件 固定 ISO 日期 (YYYY-MM-DD)。用这个 start_milestone
start_milestone 有条件 参考文献 amilestone@name. 用这个 start_date
display_name Customer-facing 标签
注意

请只指定start_date或中的一个start_milestone,而不是两者。

<phase name="limited_support" support_level="limited" start_milestone="AL2023_6months" display_name="Limited Support"/>

每个阶段从开始日期起一直处于活动状态,直到下一阶段开始。生命周期的最后阶段将无限期地保持活动状态。

里程碑

定义生命周期阶段参考的可重复使用的日期标记。

属性 必需 描述
name 引用的唯一标识符 phase@start_milestone
date ISO 日期 (YYYY-MM-DD)
display_name Customer-facing 标签
description Human-readable 描述
<milestone name="AL2023_GA" date="2023-03-15" display_name="AL2023 General Availability" description="Amazon Linux 2023 general availability date"/>

里程碑让各阶段共享日期。当里程碑日期发生变化时,引用该里程碑日期的每个阶段都会自动更新。

支持级别

定义支持等级及其涵盖的严重程度。每个都name成为有效的--show过滤器值。

属性 必需 描述
name 唯一标识符。用作--show筛选值
severities Comma-separated 涵盖的严重性级别(空字符串 = 没有补丁)
description Human-readable --list-filters输出中显示的描述
display_name Customer-facing 标签
<support_level name="limited" severities="Important,Critical" description="Security fixes for Important and Critical severities only" display_name="Limited Support" />

正在运行dnf supportinfo --show limited列出当前处于此支持级别的所有软件包。该--list-filters命令显示每个级别的namedescription

程序包

将 RPM 包名称映射到其生命周期、来源和类。

属性 必需 描述
name RPM 包名称
lifecycle 参考文献 a lifecycle@name
origin 参考文献 a package_origin@name
package_class 参考文献 a package_class@name
<package name="curl" lifecycle="default_lc" origin="al2023_core" package_class="default"/>
注意

一个包可以多次以不同的origin值出现(例如,同一个包在核心和 SPAL 存储库中)。name+ 的组合origin必须是唯一的。

每个已安装的 RPM 都将与此列表进行匹配,以确定其生命周期和当前支持状态。

包级别

按包在系统中的角色对软件包进行分类。类名和摘要显示在插件输出中。

Attribute/Element 必需 描述
@name 引用的唯一标识符 package@package_class
summary(孩子) 类别的简短描述
text(孩子) 扩展描述。该元素必须存在但可能为空
<package_class name="os_dependency"> <summary>Packages supported only as dependencies of the operating system</summary> <text></text> </package_class>

类名出现在输出中,以指示软件包在系统中的作用。

package_origin

标识包的存储库来源。该origin值出现在dnf supportinfo --pkg输出中。

属性 必需 描述
name 引用的唯一标识符 package@origin
repo_id DNF 存储库 ID
dist 分发标识符
vendor 包裹供应商
signing_key GPG 签名密钥标识符
display_name Customer-facing 标签
description Human-readable 描述
<package_origin name="al2023_core" repo_id="amazonlinux" dist="amzn2023" vendor="amazonlinux" display_name="Amazon Linux 2023 Core" description="Core Amazon Linux 2023 repository" />

--pkg输出中display_name显示为 “Origin” 字段。

note

提供自由格式的文本,生命周期可以参考这些文本以获取更多上下文。

属性 必需 描述
name 引用的唯一标识符 lifecycle@note

元素的文本内容包含注释消息。

<note name="eol_redis6">Upstream end-of-life for Redis 6 (redis6) is 2025-08-31</note>

当包的生命周期引用注释时,注释文本在--pkg输出中显示为 “包注释”。

参照完整性

该架构通过name引用将元素链接在一起。每个源属性都必须与name现有目标元素相匹配:

源属性 参考
package@lifecycle lifecycle@name
package@origin package_origin@name
package@package_class package_class@name
phase@support_level support_level@name
phase@start_milestone milestone@name
lifecycle@note note@name

此外,package@name和的组合在所有package元素中package@origin必须是唯一的。