Add sw_version to N-1 load metadata file

This commit is to add sw_version to N-1 load metadata file which is
created during the  load import. This element is used for
'software list --release' and 'software delete' commands.

Test Plan:

PASS: build the iso
PASS: upload N-1 load
PASS: run 'software list --release'

Task: 51005
Story: 2010676
Change-Id: I4f14bd1eddf497168411285eb162a216201f3cfe
Signed-off-by: junfeng-li <junfeng.li@windriver.com>
This commit is contained in:
junfeng-li
2024-09-12 15:52:21 +00:00
parent ec372f6ef7
commit c6d64feab8

View File

@@ -221,7 +221,7 @@ def generate_metadata_file_in_unavailable_dir(to_release):
try:
# Copy metadata.xml to /opt/software/metadata/unavailable
os.makedirs(UNAVAILABLE_DIR, exist_ok=True)
# TODO(jli14): release name should be dynamically generated based on the branch.
# TODO(jli14): release name should be dynamically generated based on the branch.
metadata_name = f"{RELEASE_GA_NAME % to_release}-metadata.xml"
LOG.info("metadata name: %s", metadata_name)
@@ -230,8 +230,10 @@ def generate_metadata_file_in_unavailable_dir(to_release):
from xml.dom import minidom
root = ET.Element('patch')
id_elem = ET.SubElement(root, "id")
id_elem.text = RELEASE_GA_NAME % to_release
ET.SubElement(root, "id").text = RELEASE_GA_NAME % to_release
ET.SubElement(root, "sw_version").text = to_release
ET.SubElement(root, "component").text = RELEASE_GA_NAME.split('-')[0]
ET.SubElement(root, "summary").text = 'This file is generated by usm_load_import'
xml_str = ET.tostring(root, encoding='unicode')
pretty_xml = minidom.parseString(xml_str).toprettyxml(indent=" ")
pretty_xml = '\n'.join([line for line in pretty_xml.split('\n') if line.strip()])