diff --git a/config.yaml b/config.yaml index 5ecdbc6..0213a3a 100644 --- a/config.yaml +++ b/config.yaml @@ -611,6 +611,61 @@ installer: puppetserver_foreman: tftp: +client: + ansible-foreman_scap_client: + installer: true + rpm: true + rpm_directory: plugins + foreman_scap_client: + rpm: true + foreman_scap_client_bash: + rpm: true + foreman_ygg_worker: + rpm: true + katello-pull-transport-migrate: + rpm: true + katello-host-tools: + rpm: true + github_org: 'Katello' + puppet-foreman_scap_client: + installer: true + rpm: true + rpm_directory: plugins + +libraries: + apipie-bindings: + github_org: Apipie + deb: true + rpm: true + apipie-dsl: + github_org: Apipie + deb: true + rpm: true + apipie-rails: + github_org: Apipie + deb: true + rpm: true + journald-logger: + deb: true + rpm: true + journald-native: + deb: true + rpm: true + kafo: + deb: true + rpm: true + kafo_parsers: + deb: true + rpm: true + kafo_wizards: + deb: true + rpm: true + ldap_fluff: + rpm: true + obsah: + safemode: + rpm: true + auxiliary: foreman-documentation: description: "Official Katello documentation" diff --git a/fpo.py b/fpo.py index fc901d1..b15bbba 100755 --- a/fpo.py +++ b/fpo.py @@ -44,6 +44,7 @@ class PackagedEntry(Entry): rpm: str | None = None rpm_directory: str = 'plugins' deb: str | None = None + deb_directory: str = 'plugins' puppet_acceptance_tests: str | None = None translations: str | None | bool = None github_team: str | None = None @@ -80,7 +81,7 @@ def rpm_url(self): def deb_url(self): if not self.deb: return None - return f'{PACKAGING_URL}/tree/deb/develop/plugins/{self.deb}' + return f'{PACKAGING_URL}/tree/deb/develop/{self.deb_directory}/{self.deb}' @property def puppet_module(self): @@ -136,7 +137,10 @@ def __post_init__(self): def puppet_module(self): return 'puppet-foreman_proxy' +@dataclass class HammerPlugin(PackagedEntry): + deb_directory: str = f'dependencies/{DEBIAN_RELEASE}' + def __post_init__(self): if not self.name: self.name = f'hammer_cli_{self.short_name}' @@ -149,12 +153,6 @@ def __post_init__(self): self.puppet_acceptance_tests = True super().__post_init__() - @property - def deb_url(self): - if not self.deb: - return None - return f'{PACKAGING_URL}/tree/deb/develop/dependencies/{DEBIAN_RELEASE}/{self.deb}' - @property def puppet_module(self): return 'puppet-foreman' @@ -165,6 +163,30 @@ def puppet_acceptance_tests_url(self): return None return f'https://github.com/theforeman/{self.puppet_module}/tree/master/spec/acceptance/foreman_cli_plugins_spec.rb' # pylint: disable=line-too-long +@dataclass +class ClientThing(PackagedEntry): + rpm_directory: str = 'client' + installer: bool = False + + def __post_init__(self): + if self.rpm is True: + self.rpm = self.short_name + if self.deb is True: + self.deb = self.short_name + super().__post_init__() + + +@dataclass +class Library(PackagedEntry): + deb_directory: str = f'dependencies/{DEBIAN_RELEASE}' + rpm_directory: str = 'foreman' + installer: bool = False + + def __post_init__(self): + if self.deb is True: + self.deb = self.short_name + super().__post_init__() + def load_config(config): data = yaml.safe_load(config) @@ -184,6 +206,12 @@ def load_config(config): data['installer']['modules'] = [PuppetModule(short_name=module_id, **(module or {})) for module_id, module in data['installer']['modules'].items()] + data['client'] = [ClientThing(short_name=repository_id, **(repository or {})) + for repository_id, repository in data['client'].items()] + + data['libraries'] = [Library(short_name=repository_id, **(repository or {})) + for repository_id, repository in data['libraries'].items()] + data['auxiliary'] = [Entry(short_name=repository_id, **(repository or {})) for repository_id, repository in data['auxiliary'].items()] diff --git a/process b/process index 1430685..c7469a8 100755 --- a/process +++ b/process @@ -70,6 +70,12 @@ def render_markdown(data): print(f'* {line}') print() + print('# Libraries') + print_markdown_table(data['libraries'], i18n=False) + + print('# Client') + print_markdown_table(data['client'], i18n=False) + print('# Auxiliary repositories') for repository in data['auxiliary']: print(f'* [{repository.short_name}]({repository.url}) {repository.description}')