Skip to content

Commit

Permalink
Merge pull request #1573 from SUSE/generate-stagings
Browse files Browse the repository at this point in the history
Generate OBS prjconf & meta from the dockerfile generator
  • Loading branch information
dcermak authored Aug 22, 2024
2 parents cd6721e + 8f3620a commit e6b18c8
Show file tree
Hide file tree
Showing 5 changed files with 556 additions and 145 deletions.
8 changes: 8 additions & 0 deletions source/api.rst
Original file line number Diff line number Diff line change
Expand Up @@ -62,3 +62,11 @@ API Documentation
.. automodule:: staging.build_result
:members:
:undoc-members:


:py:mod:`staging.project_setup` module
--------------------------------------

.. automodule:: staging.project_setup
:members:
:undoc-members:
39 changes: 23 additions & 16 deletions src/bci_build/package/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -160,10 +160,28 @@ def pretty_os_version_no_dash(self) -> str:
# already part of the base identifier
return ""
if self.is_slfo:
return "Framework One"
return "16"

return f"15 SP{self.value}"

@property
def distribution_base_name(self) -> str:
if self.is_tumbleweed:
return "openSUSE Tumbleweed"
elif self.is_ltss:
return "SLE LTSS"
elif self.is_sle15 or self.is_slfo:
return "SLE"

raise NotImplementedError(f"Unknown os_version: {self.value}")

@property
def full_os_name(self) -> str:
if self.is_tumbleweed:
return self.distribution_base_name

return f"{self.distribution_base_name} {self.pretty_os_version_no_dash}"

@property
def deployment_branch_name(self) -> str:
if self.is_tumbleweed or self.is_slfo:
Expand Down Expand Up @@ -613,17 +631,6 @@ def build_release(self) -> str | None:
else None
)

@property
def distribution_base_name(self) -> str:
if self.os_version.is_tumbleweed:
return "openSUSE Tumbleweed"
elif self.os_version.is_ltss:
return "SLE LTSS"
elif self.os_version.is_sle15 or self.os_version.is_slfo:
return "SLE"

raise NotImplementedError(f"Unknown os_version: {self.os_version}")

@property
def eula(self) -> str:
"""EULA covering this image. can be ``sle-eula`` or ``sle-bci``."""
Expand Down Expand Up @@ -1060,7 +1067,7 @@ def description(self) -> str:
description_formatters = {
"pretty_name": self.pretty_name,
"based_on_container": (
f"based on the {self.distribution_base_name} Base Container Image"
f"based on the {self.os_version.distribution_base_name} Base Container Image"
),
"podman_only": "This container is only supported with podman.",
"privileged_only": "This container is only supported in privileged mode.",
Expand All @@ -1079,10 +1086,10 @@ def title(self) -> str:
It is generated from :py:attr:`BaseContainerImage.pretty_name` as
follows: ``"{distribution_base_name} BCI {self.pretty_name}"``, where
``distribution_base_name`` is taken from
:py:attr:`~ImageProperties.distribution_base_name`.
:py:attr:`~OsVersion.distribution_base_name`.
"""
return f"{self.distribution_base_name} BCI {self.pretty_name}"
return f"{self.os_version.distribution_base_name} BCI {self.pretty_name}"

@property
def readme_path(self) -> str:
Expand Down Expand Up @@ -1473,7 +1480,7 @@ def image_type(self) -> ImageType:

@property
def title(self) -> str:
return f"{self.distribution_base_name} {self.pretty_name}"
return f"{self.os_version.distribution_base_name} {self.pretty_name}"

@property
def eula(self) -> str:
Expand Down
Loading

0 comments on commit e6b18c8

Please sign in to comment.