diff --git a/blender/misc.py b/blender/misc.py index 90e8397..c56d534 100644 --- a/blender/misc.py +++ b/blender/misc.py @@ -1,6 +1,8 @@ import logging import os import json +import requests +import argparse from pathlib import Path from subprocess import run, CalledProcessError @@ -69,5 +71,51 @@ def clean_all_dockers(): logger.info(f'Contexte restaure: {original_context}') +def get_all_tags_from_blender(): + """From the Gitea api, get all blender tags release""" + r = requests.get(r"https://projects.blender.org/api/v1/repos/blender/blender/tags") + print(r.text) + j = r.json() + + # All tags data: + for release in j: + print(release) + + +def get_all_tags_from_docker(): + """From the Gitea api, get all blender tags release""" + r = requests.get(r"https://hub.docker.com/v2/namespaces/stilobique/repositories/blender/tags") + print(r.text) + j = r.json() + + # All tags data: + for release in j: + print(release) + + +ACTIONS = { + 'clean': clean_all_dockers, + 'get-tags-release': get_all_tags_from_blender, + 'get-tags-docker': get_all_tags_from_docker, +} + + +def main(): + # Todo Use invoke ? + """ + Call function from the command line + Ex: python ./blender/misc.py get-tags-release + :return: + """ + parser = argparse.ArgumentParser(description='Blender docker helper') + parser.add_argument('action', + choices=ACTIONS.keys(), + help='Action selected' + ) + args = parser.parse_args() + + ACTIONS[args.action]() + + if __name__ == '__main__': - clean_all_dockers() \ No newline at end of file + main() \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index c031b17..f7a1595 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1 +1,2 @@ -docker==7.2.0 \ No newline at end of file +docker==7.2.0 +requests==2.34.2 \ No newline at end of file