Represents the repository sctructure, it does not require that the repo has
the structure specified in the module doc when loading it, but when adding
new rpms or generating the sources it will create the new files in that
directory structure.

You can pass rpm properties (like version, distro, arch or major_version)
as python’s format variables and they will be expanded at runtime for each
rpm using the expansion as store path, for example
‘/myrepo/{major_version}’ will create all the repository structure under
that path for each rpm (if you have multiple independent rpms that does not
make much senes though, but you get the idea)

Configuration options:

distro_reg

Regular expression to extract the distribution from the release string

extra_symlinks

Comma separated list of orig:symlink pairs to create links, the paths

on_wrong_distro

Action to execute when a package has an incorrect distro (it’s release
string does not match the distro_reg regular expression). Possible
values are ‘fail’, ‘copy_to_all’ or anything else. The default is
‘fail’, if ‘copy_to_all’ specified it will copy the rpm to all the
distros (it needs to have any other distros in the dst repo, or other
rpms with a defined distro). If anything else specified, it will warn
and skip that rpm.

path_prefix

Prefixes of this store inside the globl artifact repository, separated
by commas

rpm_dir

name of the directory that will contain the rpms (rpm by default), if
empty, it will not create a subdirectory for the rpms and will be put
on the root of the repo (root/$dist/$arch/*rpm)

signing_key

Path to the gpg keey to sign the rpms with, will not sign them if not
set

signing_passphrase

Passphrase for the above key

temp_dir

Temporary dir to store any transient downloads (like rpms from
urls). The caller should make sure it exists and clean it up if needed.

with_sources

If true, will extract the sources form the scrrpms

with_srcrpms

If false, will ignore the srcrpms
will be relative to the store root path.

This string uniquely identifies a rpm file, if two rpms have the same
string representation, the must point to the same file or a copy of
it, if not, you wrongly generated two rpms with the same
version/release and different content, or you signed them with
different keys

This property should uniquely identify a rpm entity, in the sense
that if you have two rpms with the same full_name they must package
the same content or one of them is wrongly generated (the version was
not bumped or something).