37 lines
993 B
Python
37 lines
993 B
Python
import requests
|
|
|
|
|
|
class Gitea:
|
|
def __init__(self,
|
|
gitea_instance: str,
|
|
repository_name: str,
|
|
is_pre_release: bool):
|
|
self.instance = gitea_instance
|
|
self.repository_name = repository_name
|
|
self.is_pre_release = is_pre_release
|
|
|
|
def is_released(self, version):
|
|
resp = requests.get(
|
|
'%s/repos/%s/releases/tags/%s' % (self.api_url,
|
|
self.repository_name,
|
|
version_to_git_tag(version)))
|
|
|
|
if resp.status_code == 404:
|
|
return False
|
|
|
|
resp.raise_for_status()
|
|
return True
|
|
|
|
def api_get(self, endpoint):
|
|
resp = requests.get('%s/%s' % (self.api_url, endpoint))
|
|
resp.raise_for_status()
|
|
return resp.json()
|
|
|
|
@property
|
|
def api_url(self):
|
|
return '%s/api/v1' % self.instance
|
|
|
|
|
|
def version_to_git_tag(version):
|
|
return 'v%s' % version
|