import giteapy from datetime import datetime from .config import GiteaConfig from .api import GiteaApi class GiteaUtils: def __init__(self, gitea_instance: GiteaApi): self.config = GiteaConfig().configuration self.repo_instance = gitea_instance.repo_gitea_instance() def update_release(self, **params): try: self.repo_instance.repo_edit_release( owner=params["owner"], repo=params["repo"], id=params["release_id"], # Release ID body=giteapy.EditReleaseOption( name=f"Bifrost Registry {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}" ), ) print("Update release success") except Exception as e: print(f"Update release failed: {e}") def get_release(self, **params): try: return self.repo_instance.repo_get_release( owner=params["owner"], repo=params["repo"], id=params["release_id"], # Release ID ) except Exception as e: print(f"Get release failed: {e}") return None def delete_release_attachment(self, **params): try: self.repo_instance.repo_delete_release_attachment( owner=params["owner"], repo=params["repo"], id=params["release_id"], # Release ID attachment_id=params["attachment_id"], ) except Exception as e: print(f"Delete release attachment failed: {e}") def create_release_attachment(self, **params): try: self.repo_instance.repo_create_release_attachment( owner=params["owner"], repo=params["repo"], id=params["release_id"], # Release ID attachment=params["attachment_path"], ) except Exception as e: print(f"Create release attachment failed: {e}")