Skip to content
Snippets Groups Projects
Commit 7ab6b720 authored by Tobias Kahlki's avatar Tobias Kahlki
Browse files

metadata: Added generation of metainfo to package_release

BCS DevOps-000032
parent 77ada04c
No related branches found
No related tags found
1 merge request!77metadata: Added generation of metainfo to package_release
...@@ -72,6 +72,51 @@ def copy_files(files, input_dir, subdir, output_dir, outlocal_dir): ...@@ -72,6 +72,51 @@ def copy_files(files, input_dir, subdir, output_dir, outlocal_dir):
return md5sums return md5sums
def generate_metadata(
machine,
version,
artifacts_image,
sdk,
output_dir,
outlocal_dir,
):
"""Generates a metainfo.json for the release"""
# Join filepath for metadata
if output_dir is not None:
filepath = os.path.join(output_dir, machine, "metainfo.json")
elif outlocal_dir is not None:
filepath = os.path.join(outlocal_dir, machine, "metainfo.json")
else:
print("Error: Filepath is empty")
return -1
# Collect metadata and write to metainfo.json
for artifact in artifacts_image:
if artifact.endswith(machine + ".tar.gz"):
image_general = artifact
elif artifact.endswith(machine + ".wic"):
image_wic = artifact
metadata = dict()
metadata["images"] = dict()
metadata["version"] = version
metadata["machine"] = machine
metadata["sdk"] = sdk
if image_general is not None:
metadata["images"]["general"] = image_general
if image_wic is not None:
metadata["images"]["wic"] = image_wic
with open(filepath, "w", encoding="utf-8") as file:
file.write(json.dumps(metadata))
def main(): def main():
parser = argparse.ArgumentParser() parser = argparse.ArgumentParser()
parser.add_argument( parser.add_argument(
...@@ -188,6 +233,16 @@ def main(): ...@@ -188,6 +233,16 @@ def main():
md5sums, md5sums,
) )
# Generate metadata
generate_metadata(
machine,
version,
artifacts_image,
sdkname,
output_dir,
outlocal_dir,
)
# Handle SDK if available # Handle SDK if available
if args.sdk_dir is not None: if args.sdk_dir is not None:
sdkfiles = glob.glob(os.path.join(args.sdk_dir, sdkname + "*")) sdkfiles = glob.glob(os.path.join(args.sdk_dir, sdkname + "*"))
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment