diff options
Diffstat (limited to 'pyenc/__init__.py')
-rw-r--r-- | pyenc/__init__.py | 36 |
1 files changed, 21 insertions, 15 deletions
diff --git a/pyenc/__init__.py b/pyenc/__init__.py index 851488c..08f724b 100644 --- a/pyenc/__init__.py +++ b/pyenc/__init__.py @@ -19,6 +19,7 @@ from . import model import yaml + def create_app(): app = Flask(__name__, instance_relative_config=True) @@ -33,7 +34,8 @@ def create_app(): # not API @app.route('/') def root_page(): - return flask.render_template('start_page.html', + return flask.render_template( + 'start_page.html', hosts=model.Host.query.order_by(model.Host.fqdn), random=random, str=str, @@ -53,23 +55,29 @@ def create_app(): q = request.args.get('q', '') qq = '%{}%'.format('%'.join(q.split(' '))) - results = model.PuppetClass.query.where(model.PuppetClass.class_name.like(qq)).all() + results = \ + model \ + .PuppetClass \ + .query \ + .where(model.PuppetClass.class_name.like(qq)) \ + .all() print(qq) return Response(json.dumps([x.class_name for x in results]), - mimetype='application/json') + mimetype='application/json') @app.route('/api/classes-for') def classes_for(): fqdn = request.args.get('fqdn') - classes = [cls.class_name for cls in - model.Host.query.where(model.Host.fqdn==fqdn).first().classes] + classes = [cls.class_name + for cls in model.Host.query.where(model.Host.fqdn == fqdn) + .first().classes] return Response(json.dumps(classes), - mimetype='application/json') + mimetype='application/json') @app.route('/api/change-classes', methods=['POST']) def change_classes(): j = request.json - host = model.Host.query.where(model.Host.fqdn==j['fqdn']).first() + host = model.Host.query.where(model.Host.fqdn == j['fqdn']).first() remove_set = set(j['removed']) new_cls = [] @@ -86,27 +94,25 @@ def create_app(): print(remove_set, db.db.session.dirty) return flask.redirect(url_for('classes_for', fqdn=j['fqdn'])) - @app.route('/api/hosts') def list_hosts(): - return Response(flask.json.dumps([x.serialize() for x in model.Host.query.all()]), - mimetype='application/json') + data = [x.serialize() for x in model.Host.query.all()] + return Response(flask.json.dumps(data), + mimetype='application/json') @app.route('/enc') def enc(): fqdn = request.args.get('fqdn', 'default') - host = model.Host.query.where(model.Host.fqdn==fqdn).first() + host = model.Host.query.where(model.Host.fqdn == fqdn).first() if not host: return Response(f"No host with name {fqdn}", - status=404, - ) + status=404) out = { 'environment': host.environment, 'classes': [cls.class_name for cls in host.classes], } return Response(yaml.dump(out), - mimetype='application/x-yaml') - + mimetype='application/x-yaml') return app |