1
0
Fork 0
mirror of https://github.com/Ysurac/openmptcprouter-vps-admin.git synced 2025-03-09 15:40:05 +00:00

Add backup modify via API

This commit is contained in:
Ycarus 2019-10-10 19:13:14 +00:00
parent 933ed4a158
commit 83f18dadb2

View file

@ -19,6 +19,7 @@ from datetime import timedelta
from tempfile import mkstemp from tempfile import mkstemp
from shutil import move from shutil import move
from pprint import pprint from pprint import pprint
from netjsonconfig import OpenWrt
from flask import Flask, jsonify, request, session from flask import Flask, jsonify, request, session
from flask_jwt_simple import ( from flask_jwt_simple import (
JWTManager, jwt_required, create_jwt, get_jwt_identity JWTManager, jwt_required, create_jwt, get_jwt_identity
@ -638,7 +639,7 @@ def backuppost():
f.write(base64.b64decode(backup_file)) f.write(base64.b64decode(backup_file))
return jsonify({'result': 'done'}) return jsonify({'result': 'done'})
@app.route('/backup', methods=['GET']) @app.route('/backupget', methods=['GET'])
@jwt_required @jwt_required
def send_backup(): def send_backup():
with open('/var/opt/openmptcprouter/backup.tar.gz',"rb") as backup_file: with open('/var/opt/openmptcprouter/backup.tar.gz',"rb") as backup_file:
@ -646,6 +647,32 @@ def send_backup():
file_base64utf = file_base64.decode('utf-8') file_base64utf = file_base64.decode('utf-8')
return jsonify({'data': file_base64utf}) return jsonify({'data': file_base64utf})
@app.route('/backuplist', methods=['GET'])
@jwt_required
def list_backup():
if os.path.isfile('/var/opt/openmptcprouter/backup.tar.gz'):
modiftime = os.path.getmtime('/var/opt/openmptcprouter/backup.tar.gz')
return jsonify({'backup': True, 'modif': modiftime})
else:
return jsonify({'backup': False})
@app.route('/backupshow', methods=['GET'])
@jwt_required
def show_backup():
if os.path.isfile('/var/opt/openmptcprouter/backup.tar.gz'):
router = OpenWrt(native=open('/var/opt/openmptcprouter/backup.tar.gz'))
return jsonify({'backup': True,'data': router})
else:
return jsonify({'backup': False})
@app.route('/backupedit', methods=['POST'])
@jwt_required
def edit_backup():
params = request.get_data()
o = OpenWrt(params)
o.write('backup',path='/var/opt/openmptcprouter/'):
return jsonify({'result': 'done'})
if __name__ == '__main__': if __name__ == '__main__':
with open('/etc/openmptcprouter-vps-admin/omr-admin-config.json') as f: with open('/etc/openmptcprouter-vps-admin/omr-admin-config.json') as f: