Пример #1
0
 def delete(cls):
     parser = reqparse.RequestParser()
     parser.add_argument('service', type=str, required=True)
     args = parser.parse_args()
     service = args['service'].upper()
     app: InstallableApp = get_app_from_service(service)
     delete = app.delete_env_file()
     app_details = get_installed_app_details(app) or {}
     return {'service': service, 'delete': delete, **app_details}
Пример #2
0
 def put(cls):
     args = request.get_json()
     if args is None:
         raise BadDataException("Invalid request")
     service = args.get('service', '').upper()
     data = args.get('data', None)
     app: InstallableApp = get_app_from_service(service)
     update = app.update_config_file(data)
     app_details = get_installed_app_details(app) or {}
     return {'service': service, 'update': update, **app_details}
Пример #3
0
 def put(cls):
     parser = reqparse.RequestParser()
     parser.add_argument('service', type=str, required=True)
     parser.add_argument('data', type=str, required=True)
     args = parser.parse_args()
     service = args['service'].upper()
     data: str = args['data']
     app: InstallableApp = get_app_from_service(service)
     update = app.update_logging_file(data)
     app_details = get_installed_app_details(app) or {}
     return {'service': service, 'update': update, **app_details}
Пример #4
0
 def delete(cls):
     parser = reqparse.RequestParser()
     parser.add_argument('service', type=str, required=True)
     args = parser.parse_args()
     service = args['service'].upper()
     res = {
         'service': service,
         'delete': False,
         'update': False,
         'state': '',
         'error': ''
     }
     try:
         app: InstallableApp = get_app_from_service(service)
         delete = app.delete_config_file()
         app_details = get_installed_app_details(app) or {}
         res = {**res, 'delete': delete, **app_details}
     except Exception as e:
         res = {**res, 'error': str(e)}
     return res
Пример #5
0
 def get_installed_app_stat(cls, app: InstallableApp,
                            get_browser_download_url: bool) -> dict:
     details: dict = {}
     is_installed: bool = False
     _browser_download_url = {}
     if systemctl_installed(app.service_file_name):
         details = get_installed_app_details(app)
         if details:
             is_installed = True
             app: InstallableApp = get_app_from_service(details['service'])
             app.set_version(details['version'])
             if get_browser_download_url:
                 try:
                     _browser_download_url = app.get_download_link(
                         get_github_token(), True)
                 except Exception as e:
                     logger.error(str(e))
     return {
         **(details if details else app.to_property_dict()),
         **_browser_download_url,
         'service': app.service,
         'is_installed': is_installed,
     }