4.7 KiB
title |
---|
Empanadas common.py Configuration |
The common.py
configuration contains dictionaries and classes that dictate
most of the functionality of empanadas.
Config Items
type: Dictionary
config.rlmacro
type: String
required: True
description: Empanadas expects to run on an EL system. This is part of the general check up. It should not be hardcoded and use the rpm python module.
config.dist
type: String
required: False
description: Was the original tag placed in mock configs. This combines el
with the rpm python module expansion. This is no longer required. The
option is still available for future use.
config.arch
type: String
required: True
description: The architecture of the current running system. This is checked against the supported architectures in general release configurations. This should not be hardcoded.
config.date_stamp
type: String
required: True
description: Date time stamp in the form of YYYYMMDD.HHMMSS. This should not be hardcoded.
config.compose_root
type: String
required: True
description: Root path of composes on the system running empanadas.
config.staging_root
type: String
required: False
description: For future use. Root path of staging repository location where content will be synced to.
config.production_root
type: String
required: False
description: For future use. Root path of production repository location where content will be synced to from staging.
config.category_stub
type: String
required: True
description: For future use. Stub path that is appended to staging_root
and
production_root
.
example: mirror/pub/rocky
config.sig_category_stub
type: String
required: True
description: For future use. Stub path that is appended to staging_root
and
production_root
for SIG content.
example: mirror/pub/sig
config.repo_base_url
type: String
required: True
description: URL to the base url's where the repositories live. This is
typically to a peridot instance. This is supplemented by the configuration
project_id
parameter.
Note that this does not have to be a peridot instance. The combination of this
value and project_id
can be sufficient enough for empanadas to perform its
work.
config.mock_work_root
type: String
required: True
description: Hardcoded path to where ISO work is performed within a mock chroot. This is the default path created by mock and it is recommended not to change this.
example: /builddir
config.container
type: String
required: True
description: This is the container used to perform all operations in podman.
example: centos:stream9
config.distname
type: String
required: True
description: Name of the distribution you are building or building for.
example: Rocky Linux
config.shortname
type: String
required: True
description: Short name of the distribution you are building or building for.
example: Rocky
config.translators
type: Dictionary
required: True
description: Translates Linux architectures to golang architectures. Reserved for future use.
config.aws_region
type: String
required: False
description: Region you are working in with AWS or onprem cloud that supports this variable.
example: us-east-2
config.bucket
type: String
required: False
description: Name of the S3-compatible bucket that is used to pull images from.
Requires aws_region
.
config.bucket_url
type: String
required: False
description: URL of the S3-compatible bucket that is used to pull images from.
allowed_type_variants items
type: Dictionary
description: Key value pairs of cloud or image variants. The value is either
None
or a list type.
Reference Example
config = {
"rlmacro": rpm.expandMacro('%rhel'),
"dist": 'el' + rpm.expandMacro('%rhel'),
"arch": platform.machine(),
"date_stamp": time.strftime("%Y%m%d.%H%M%S", time.localtime()),
"compose_root": "/mnt/compose",
"staging_root": "/mnt/repos-staging",
"production_root": "/mnt/repos-production",
"category_stub": "mirror/pub/rocky",
"sig_category_stub": "mirror/pub/sig",
"repo_base_url": "https://yumrepofs.build.resf.org/v1/projects",
"mock_work_root": "/builddir",
"container": "centos:stream9",
"distname": "Rocky Linux",
"shortname": "Rocky",
"translators": {
"x86_64": "amd64",
"aarch64": "arm64",
"ppc64le": "ppc64le",
"s390x": "s390x",
"i686": "386"
},
"aws_region": "us-east-2",
"bucket": "resf-empanadas",
"bucket_url": "https://resf-empanadas.s3.us-east-2.amazonaws.com"
}
ALLOWED_TYPE_VARIANTS = {
"Azure": None,
"Container": ["Base", "Minimal", "UBI"],
"EC2": None,
"GenericCloud": None,
"Vagrant": ["Libvirt", "Vbox"],
"OCP": None
}