Module ogr.abstract.release
Classes
class Release (raw_release: Any, project: GitProject)
-
Expand source code
class Release(OgrAbstractClass): """ Object that represents release. Attributes: project (GitProject): Project on which the release is created. """ def __init__( self, raw_release: Any, project: "GitProject", ) -> None: self._raw_release = raw_release self.project = project def __str__(self) -> str: return ( f"Release(" f"title='{self.title}', " f"body='{self.body}', " f"tag_name='{self.tag_name}', " f"url='{self.url}', " f"created_at='{self.created_at}', " f"tarball_url='{self.tarball_url}')" ) @property def title(self) -> str: """Title of the release.""" raise NotImplementedError() @property def body(self) -> str: """Body of the release.""" raise NotImplementedError() @property def git_tag(self) -> GitTag: """Object that represents tag tied to the release.""" raise NotImplementedError() @property def tag_name(self) -> str: """Tag tied to the release.""" raise NotImplementedError() @property def url(self) -> Optional[str]: """URL of the release.""" raise NotImplementedError() # TODO: Check if should really be string @property def created_at(self) -> datetime.datetime: """Datetime of creating the release.""" raise NotImplementedError() @property def tarball_url(self) -> str: """URL of the tarball.""" raise NotImplementedError() @staticmethod def get( project: Any, identifier: Optional[int] = None, name: Optional[str] = None, tag_name: Optional[str] = None, ) -> "Release": """ Get a single release. Args: identifier: Identifier of the release. Defaults to `None`, which means not being used. name: Name of the release. Defaults to `None`, which means not being used. tag_name: Tag that the release is tied to. Defaults to `None`, which means not being used. Returns: Object that represents release that satisfies requested condition. """ raise NotImplementedError() @staticmethod def get_latest(project: Any) -> Optional["Release"]: """ Returns: Object that represents the latest release. """ raise NotImplementedError() @staticmethod def get_list(project: Any) -> Union[list["Release"], Iterable["Release"]]: """ Returns: List of the objects that represent releases. """ raise NotImplementedError() @staticmethod def create( project: Any, tag: str, name: str, message: str, ref: Optional[str] = None, ) -> "Release": """ Create new release. Args: project: Project where the release is to be created. tag: Tag which is the release based off. name: Name of the release. message: Message or description of the release. ref: Git reference, mainly commit hash for the release. If provided git tag is created prior to creating a release. Defaults to `None`. Returns: Object that represents newly created release. """ raise NotImplementedError() def save_archive(self, filename: str) -> None: """ Save tarball of the release to requested `filename`. Args: filename: Path to the file to save archive to. """ raise NotImplementedError() def edit_release(self, name: str, message: str) -> None: """ Edit name and message of a release. Args: name: Name of the release. message: Description of the release. """ raise NotImplementedError()
Object that represents release.
Attributes
project
:GitProject
- Project on which the release is created.
Ancestors
Subclasses
Static methods
def create(project: Any, tag: str, name: str, message: str, ref: str | None = None) ‑> Release
-
Expand source code
@staticmethod def create( project: Any, tag: str, name: str, message: str, ref: Optional[str] = None, ) -> "Release": """ Create new release. Args: project: Project where the release is to be created. tag: Tag which is the release based off. name: Name of the release. message: Message or description of the release. ref: Git reference, mainly commit hash for the release. If provided git tag is created prior to creating a release. Defaults to `None`. Returns: Object that represents newly created release. """ raise NotImplementedError()
Create new release.
Args
project
- Project where the release is to be created.
tag
- Tag which is the release based off.
name
- Name of the release.
message
- Message or description of the release.
ref
-
Git reference, mainly commit hash for the release. If provided git tag is created prior to creating a release.
Defaults to
None
.
Returns
Object that represents newly created release.
def get(project: Any,
identifier: int | None = None,
name: str | None = None,
tag_name: str | None = None) ‑> Release-
Expand source code
@staticmethod def get( project: Any, identifier: Optional[int] = None, name: Optional[str] = None, tag_name: Optional[str] = None, ) -> "Release": """ Get a single release. Args: identifier: Identifier of the release. Defaults to `None`, which means not being used. name: Name of the release. Defaults to `None`, which means not being used. tag_name: Tag that the release is tied to. Defaults to `None`, which means not being used. Returns: Object that represents release that satisfies requested condition. """ raise NotImplementedError()
Get a single release.
Args
identifier
-
Identifier of the release.
Defaults to
None
, which means not being used. name
-
Name of the release.
Defaults to
None
, which means not being used. tag_name
-
Tag that the release is tied to.
Defaults to
None
, which means not being used.
Returns
Object that represents release that satisfies requested condition.
def get_latest(project: Any) ‑> Release | None
-
Expand source code
@staticmethod def get_latest(project: Any) -> Optional["Release"]: """ Returns: Object that represents the latest release. """ raise NotImplementedError()
Returns
Object that represents the latest release.
def get_list(project: Any) ‑> list[Release] | Iterable[Release]
-
Expand source code
@staticmethod def get_list(project: Any) -> Union[list["Release"], Iterable["Release"]]: """ Returns: List of the objects that represent releases. """ raise NotImplementedError()
Returns
List of the objects that represent releases.
Instance variables
prop body : str
-
Expand source code
@property def body(self) -> str: """Body of the release.""" raise NotImplementedError()
Body of the release.
prop created_at : datetime.datetime
-
Expand source code
@property def created_at(self) -> datetime.datetime: """Datetime of creating the release.""" raise NotImplementedError()
Datetime of creating the release.
prop git_tag : GitTag
-
Expand source code
@property def git_tag(self) -> GitTag: """Object that represents tag tied to the release.""" raise NotImplementedError()
Object that represents tag tied to the release.
prop tag_name : str
-
Expand source code
@property def tag_name(self) -> str: """Tag tied to the release.""" raise NotImplementedError()
Tag tied to the release.
prop tarball_url : str
-
Expand source code
@property def tarball_url(self) -> str: """URL of the tarball.""" raise NotImplementedError()
URL of the tarball.
prop title : str
-
Expand source code
@property def title(self) -> str: """Title of the release.""" raise NotImplementedError()
Title of the release.
prop url : str | None
-
Expand source code
@property def url(self) -> Optional[str]: """URL of the release.""" raise NotImplementedError()
URL of the release.
Methods
def edit_release(self, name: str, message: str) ‑> None
-
Expand source code
def edit_release(self, name: str, message: str) -> None: """ Edit name and message of a release. Args: name: Name of the release. message: Description of the release. """ raise NotImplementedError()
Edit name and message of a release.
Args
name
- Name of the release.
message
- Description of the release.
def save_archive(self, filename: str) ‑> None
-
Expand source code
def save_archive(self, filename: str) -> None: """ Save tarball of the release to requested `filename`. Args: filename: Path to the file to save archive to. """ raise NotImplementedError()
Save tarball of the release to requested
filename
.Args
filename
- Path to the file to save archive to.