mirror of
https://github.com/pentoo/pentoo-overlay
synced 2025-12-06 08:25:01 +01:00
70 lines
1.4 KiB
Python
Executable file
70 lines
1.4 KiB
Python
Executable file
#!/usr/bin/env python3
|
|
|
|
""" Find the latest releases of lybyal* using Github API
|
|
"""
|
|
|
|
import json
|
|
import requests
|
|
import sys
|
|
|
|
__author__ = "Anton Bolshakov"
|
|
__license__ = "GPL-3"
|
|
__email__ = "blshkv@pentoo.ch"
|
|
|
|
project_url = "https://api.github.com/repos/libyal/"
|
|
|
|
project_packages = {
|
|
|
|
'libcdata',
|
|
'libcdatetime',
|
|
'libcerror',
|
|
'libcfile',
|
|
'libclocale',
|
|
'libcnotify',
|
|
'libcpath',
|
|
'libcsplit',
|
|
'libcstring',
|
|
'libcsystem',
|
|
'libcthreads',
|
|
'libfcache',
|
|
'libfdata',
|
|
'libfdatetime',
|
|
'libfguid',
|
|
'libfmapi',
|
|
'libfvalue',
|
|
'libfwnt',
|
|
'libsmdev',
|
|
'libuna'
|
|
}
|
|
|
|
json_data = None
|
|
|
|
def load_api( package ):
|
|
global json_data
|
|
|
|
#get the tag list via API (json)
|
|
try:
|
|
response = requests.get(project_url + package +"/tags")
|
|
response.raise_for_status()
|
|
except requests.exceptions.HTTPError as errh:
|
|
print ("Http Error:",errh)
|
|
sys.exit(1)
|
|
except requests.exceptions.ConnectionError as errc:
|
|
print ("Unable to connect:",errc)
|
|
sys.exit(1)
|
|
except requests.exceptions.Timeout as errt:
|
|
print ("Timeout Error:",errt)
|
|
sys.exit(1)
|
|
except requests.exceptions.RequestException as err:
|
|
print ("OOps: Something Else",err)
|
|
sys.exit(1)
|
|
#parse json
|
|
json_data = json.loads(response.text)
|
|
|
|
def main():
|
|
for package in project_packages:
|
|
load_api(package)
|
|
print("package: ", package, "-", json_data[0]["name"])
|
|
|
|
if __name__ == '__main__':
|
|
main()
|