treeinfo – Instalable trees metadata¶
This module provides classes for manipulating .treeinfo files. Treeinfo files provide details about installable trees in Fedora composes and media.
Classes¶
-
class
productmd.treeinfo.TreeInfo¶ -
header= None¶ (
productmd.common.Header) – Metadata header
-
base_product= None¶ (
BaseProduct) – Base product details (optional)
-
tree= None¶ (
Tree) – Tree details
-
checksums= None¶ (
Checksums) – Checksums of images included in a tree
-
stage2= None¶ (
Stage2) – Stage 2 image path (for Anaconda installer)
-
media= None¶ (
Media) – Media set information (optional)
-
dump(f)¶ Dump data to a file.
Parameters: f (file or str) – file-like object or path to file
-
dumps()¶ Dump data to a string.
Return type: str
-
load(f)¶ Load data from a file.
Parameters: f (file or str) – file-like object or path to file
-
loads(s)¶ Load data from a string.
Parameters: s (str) – input data
-
validate()¶ Validate attributes by running all self._validate_*() methods.
Raises: - TypeError – if an attribute has invalid type
- ValueError – if an attribute contains invalid value
-
-
class
productmd.treeinfo.Release(metadata)¶ -
name= None¶ (str) – release name, for example: “Fedora”, “Red Hat Enterprise Linux”, “Spacewalk”
-
short= None¶ (str) – release short name, for example: “F”, “RHEL”, “Spacewalk”
-
version= None¶ (str) – release version, for example: “21”, “7.0”, “2.1”
-
is_layered= None¶ (bool) – typically False for an operating system, True otherwise
-
major_version¶ Version string without the last part. For example: version == 1.2.0 -> major_version == 1.2
-
minor_version¶ Last part of the version string. For example: version == 1.2.0 -> minor_version == 0
-
-
class
productmd.treeinfo.BaseProduct(metadata)¶ BaseProductprovides information about operating system aReleaseruns on.-
name= None¶ (str) – base product name, for example: “Fedora”, “Red Hat Enterprise Linux”
-
short= None¶ (str) – base product short name, for example: “F”, “RHEL”
-
version= None¶ (str) – base product major version, for example: “21”, “7”
-
-
class
productmd.treeinfo.Variants(metadata)¶
-
class
productmd.treeinfo.Variant(metadata)¶ -
id= None¶ (str) – variant ID, for example “Server”, “optional”
-
uid= None¶ (str) – variant UID ($parent_UID.$ID), for example “Server”, “Server-optional”
-
name= None¶ (str) – variant name, for example “Server”
-
type= None¶ (str) – “variant”, “addon”, “optional”
-
paths= None¶ (
VariantPaths) – relative paths to repositories, packages, etc.
-
-
class
productmd.treeinfo.VariantPaths(variant)¶ This class stores paths for a variant in a tree. All paths are relative to .treeinfo location.
Binary
- packages – directory with binary RPMs
- repository – YUM repository with binary RPMs
Source
- source_packages – directory with source RPMs
- source_repository – YUM repository with source RPMs
Debug
- debug_packages – directory with debug RPMs
- debug_repository – YUM repository with debug RPMs
- Others
- identity – path to a pem file which identifies a product
Example:
variant = ... variant.paths.packages = "Packages" variant.paths.repository = "."