1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- import json
- import logging
- import requests
- from flask_restful import Resource, reqparse
- from configs import dify_config
- from . import api
- class VersionApi(Resource):
- def get(self):
- parser = reqparse.RequestParser()
- parser.add_argument('current_version', type=str, required=True, location='args')
- args = parser.parse_args()
- check_update_url = dify_config.CHECK_UPDATE_URL
- result = {
- 'version': dify_config.CURRENT_VERSION,
- 'release_date': '',
- 'release_notes': '',
- 'can_auto_update': False,
- 'features': {
- 'can_replace_logo': dify_config.CAN_REPLACE_LOGO,
- 'model_load_balancing_enabled': dify_config.MODEL_LB_ENABLED
- }
- }
- if not check_update_url:
- return result
- try:
- response = requests.get(check_update_url, {
- 'current_version': args.get('current_version')
- })
- except Exception as error:
- logging.warning("Check update version error: {}.".format(str(error)))
- result['version'] = args.get('current_version')
- return result
- content = json.loads(response.content)
- result['version'] = content['version']
- result['release_date'] = content['releaseDate']
- result['release_notes'] = content['releaseNotes']
- result['can_auto_update'] = content['canAutoUpdate']
- return result
- api.add_resource(VersionApi, '/version')
|