From 0e36ceca6bee19474a98e64ef2cbdf78373e5ca8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Sat, 18 Jun 2022 02:19:11 +0200 Subject: Fix pycodestyle. --- pyenc/__init__.py | 36 +++++++++++++++++++++--------------- pyenc/db.py | 5 ++++- pyenc/enc.py | 5 +++-- pyenc/model.py | 19 +++++++++++++------ 4 files changed, 41 insertions(+), 24 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 diff --git a/pyenc/db.py b/pyenc/db.py index ea7cc14..3bf2bba 100644 --- a/pyenc/db.py +++ b/pyenc/db.py @@ -7,21 +7,24 @@ from flask import current_app, g from flask.cli import with_appcontext from .model import db + @with_appcontext def init_db(): db.create_all() + @click.command('init-db') @with_appcontext def init_db_command(): """ """ # init_db() - #print(db) + # print(db) print(db) db.create_all() click.echo('Initialized the database.') + def init_app(app): # app.teardown_appcontext(close_db) db.init_app(app) diff --git a/pyenc/enc.py b/pyenc/enc.py index 7ec3a8e..5df6ecb 100644 --- a/pyenc/enc.py +++ b/pyenc/enc.py @@ -1,4 +1,3 @@ - import click from flask import current_app, g from flask.cli import with_appcontext @@ -7,11 +6,12 @@ from . import model import yaml + @click.command('enc') @click.option('--fqdn', help='Node to get data for') @with_appcontext def run_enc(fqdn): - host = model.Host.query.where(model.Host.fqdn==fqdn).first() + host = model.Host.query.where(model.Host.fqdn == fqdn).first() if not host: print(f"No host with name {fqdn}") return 1 @@ -21,5 +21,6 @@ def run_enc(fqdn): } print(yaml.dump(out)) + def init_app(app): app.cli.add_command(run_enc) diff --git a/pyenc/model.py b/pyenc/model.py index 10b2336..0382e96 100644 --- a/pyenc/model.py +++ b/pyenc/model.py @@ -8,7 +8,8 @@ import yaml db = SQLAlchemy() -host_classes = db.Table('host_classes', +host_classes = db.Table( + 'host_classes', db.Column('host_id', db.ForeignKey('host.id')), db.Column('class_id', db.ForeignKey('puppet_class.id'))) @@ -18,19 +19,22 @@ host_classes = db.Table('host_classes', # host_id = db.Column(db.Integer, db.ForeignKey('host.id'), nullable=False) # class_id = db.Column(db.Integer, db.ForeignKey('puppet_class.id'), nullable=False) + class Host(db.Model): __tablename__ = 'host' id = db.Column(db.Integer, primary_key=True) fqdn = db.Column(db.Text, nullable=False) environment = db.Column(db.Text) # classes = db.relationship('HostClasses', backref='host', lazy='dynamic') - classes = db.relationship('PuppetClass', + classes = db.relationship( + 'PuppetClass', back_populates='hosts', secondary=host_classes) def serialize(self): - return { column.name: self.__getattribute__(column.name) - for column in self.__table__.columns } + return {column.name: self.__getattribute__(column.name) + for column in self.__table__.columns} + class PuppetFile(db.Model): __tablename__ = 'puppet_file' @@ -41,12 +45,15 @@ class PuppetFile(db.Model): # classes = db.relationship('PuppetClass', back_populates='comes_from') classes = db.relationship('PuppetClass', backref='comes_from') + class PuppetClass(db.Model): __tablename__ = 'puppet_class' id = db.Column(db.Integer, primary_key=True) class_name = db.Column(db.Text, nullable=False) # comes_from = db.relationship('PuppetFile', back_populates='classes') - comes_from_id = db.Column(db.Integer, db.ForeignKey(f'{PuppetFile.__tablename__}.id')) - hosts = db.relationship('Host', + comes_from_id = db.Column(db.Integer, + db.ForeignKey(f'{PuppetFile.__tablename__}.id')) + hosts = db.relationship( + 'Host', back_populates='classes', secondary=host_classes) -- cgit v1.2.3