From 260b39ebf299e2dd126bc26945126824bc1f3bdb Mon Sep 17 00:00:00 2001 From: "Joshua M. Boniface" Date: Sat, 7 Nov 2020 14:45:24 -0500 Subject: [PATCH] Lint: E302 expected 2 blank lines, found X --- api-daemon/pvcapid/benchmark.py | 6 + api-daemon/pvcapid/flaskapi.py | 62 ++++++++ api-daemon/pvcapid/helper.py | 66 ++++++++ api-daemon/pvcapid/models.py | 11 ++ api-daemon/pvcapid/ova.py | 6 + api-daemon/pvcapid/provisioner.py | 37 +++++ client-cli/cli_lib/ansiprint.py | 16 ++ client-cli/cli_lib/ceph.py | 57 +++++-- client-cli/cli_lib/cluster.py | 4 + client-cli/cli_lib/common.py | 5 + client-cli/cli_lib/network.py | 20 +++ client-cli/cli_lib/node.py | 7 + client-cli/cli_lib/provisioner.py | 39 +++++ client-cli/cli_lib/vm.py | 13 ++ client-cli/cli_lib/zkhandler.py | 7 + client-cli/pvc.py | 144 ++++++++++++++++++ daemon-common/ceph.py | 59 +++++-- daemon-common/cluster.py | 3 + daemon-common/common.py | 23 +++ daemon-common/network.py | 23 +++ daemon-common/node.py | 7 + daemon-common/vm.py | 24 +++ daemon-common/zkhandler.py | 10 ++ node-daemon/pvcnoded/CephInstance.py | 7 + node-daemon/pvcnoded/DNSAggregatorInstance.py | 3 + node-daemon/pvcnoded/Daemon.py | 13 ++ node-daemon/pvcnoded/MetadataAPIInstance.py | 1 + node-daemon/pvcnoded/NodeInstance.py | 1 + .../pvcnoded/VMConsoleWatcherInstance.py | 1 + node-daemon/pvcnoded/VMInstance.py | 3 + node-daemon/pvcnoded/VXNetworkInstance.py | 1 + node-daemon/pvcnoded/common.py | 12 ++ .../pvcnoded/dnsmasq-zookeeper-leases.py | 9 ++ node-daemon/pvcnoded/fencing.py | 4 + node-daemon/pvcnoded/log.py | 1 + node-daemon/pvcnoded/zkhandler.py | 8 + 36 files changed, 694 insertions(+), 19 deletions(-) diff --git a/api-daemon/pvcapid/benchmark.py b/api-daemon/pvcapid/benchmark.py index 0a5b28d8..f822e99e 100755 --- a/api-daemon/pvcapid/benchmark.py +++ b/api-daemon/pvcapid/benchmark.py @@ -30,6 +30,7 @@ import daemon_lib.ceph as pvc_ceph config = None # Set in this namespace by flaskapi + def strtobool(stringv): if stringv is None: return False @@ -40,6 +41,7 @@ def strtobool(stringv): except Exception: return False + # # Exceptions (used by Celery tasks) # @@ -66,6 +68,7 @@ class BenchmarkError(Exception): # Common functions # + # Database connections def open_database(config): conn = psycopg2.connect( @@ -78,12 +81,14 @@ def open_database(config): cur = conn.cursor(cursor_factory=psycopg2.extras.RealDictCursor) return conn, cur + def close_database(conn, cur, failed=False): if not failed: conn.commit() cur.close() conn.close() + def list_benchmarks(job=None): if job is not None: query = "SELECT * FROM {} WHERE job = %s;".format('storage_benchmarks') @@ -109,6 +114,7 @@ def list_benchmarks(job=None): else: return {'message': 'No benchmark found.'}, 404 + def run_benchmark(self, pool): # Runtime imports import time diff --git a/api-daemon/pvcapid/flaskapi.py b/api-daemon/pvcapid/flaskapi.py index ad4c4cc5..41df23de 100755 --- a/api-daemon/pvcapid/flaskapi.py +++ b/api-daemon/pvcapid/flaskapi.py @@ -38,6 +38,7 @@ from flask_sqlalchemy import SQLAlchemy API_VERSION = 1.0 + def strtobool(stringv): if stringv is None: return False @@ -137,6 +138,7 @@ app.register_blueprint(blueprint) celery = Celery(app.name, broker=app.config['CELERY_BROKER_URL']) celery.conf.update(app.config) + # # Custom decorators # @@ -168,6 +170,7 @@ class RequestParser(object): return function(*args, **kwargs) return wrapped_function + # Authentication decorator function def Authenticator(function): @wraps(function) @@ -196,6 +199,7 @@ def Authenticator(function): def create_vm(self, vm_name, profile_name, define_vm=True, start_vm=True, script_run_args=[]): return api_provisioner.create_vm(self, vm_name, profile_name, define_vm=define_vm, start_vm=start_vm, script_run_args=script_run_args) + @celery.task(bind=True) def run_benchmark(self, pool): return api_benchmark.run_benchmark(self, pool) @@ -230,6 +234,7 @@ class API_Root(Resource): api.add_resource(API_Root, '/') + # /doc - NOTE: Until flask_swagger is packaged for Debian this must be disabled # class API_Doc(Resource): # def get(self): @@ -251,6 +256,7 @@ api.add_resource(API_Root, '/') # # api.add_resource(API_Doc, '/doc') + # /login class API_Login(Resource): def post(self): @@ -294,6 +300,7 @@ class API_Login(Resource): api.add_resource(API_Login, '/login') + # /logout class API_Logout(Resource): def post(self): @@ -320,6 +327,7 @@ class API_Logout(Resource): api.add_resource(API_Logout, '/logout') + # /initialize class API_Initialize(Resource): @Authenticator @@ -351,6 +359,7 @@ class API_Initialize(Resource): api.add_resource(API_Initialize, '/initialize') + # /status class API_Status(Resource): @Authenticator @@ -588,6 +597,7 @@ class API_Node_Root(Resource): api.add_resource(API_Node_Root, '/node') + # /node/ class API_Node_Element(Resource): @Authenticator @@ -613,6 +623,7 @@ class API_Node_Element(Resource): api.add_resource(API_Node_Element, '/node/') + # /node//daemon-state class API_Node_DaemonState(Resource): @Authenticator @@ -646,6 +657,7 @@ class API_Node_DaemonState(Resource): api.add_resource(API_Node_DaemonState, '/node//daemon-state') + # /node//coordinator-state class API_Node_CoordinatorState(Resource): @Authenticator @@ -716,6 +728,7 @@ class API_Node_CoordinatorState(Resource): api.add_resource(API_Node_CoordinatorState, '/node//coordinator-state') + # /node//domain-state class API_Node_DomainState(Resource): @Authenticator @@ -1128,6 +1141,7 @@ class API_VM_Root(Resource): api.add_resource(API_VM_Root, '/vm') + # /vm/ class API_VM_Element(Resource): @Authenticator @@ -1310,6 +1324,7 @@ class API_VM_Element(Resource): api.add_resource(API_VM_Element, '/vm/') + # /vm//meta class API_VM_Metadata(Resource): @Authenticator @@ -1425,6 +1440,7 @@ class API_VM_Metadata(Resource): api.add_resource(API_VM_Metadata, '/vm//meta') + # /vm//state') + # /vm//node class API_VM_Node(Resource): @Authenticator @@ -1614,6 +1631,7 @@ class API_VM_Node(Resource): api.add_resource(API_VM_Node, '/vm//node') + # /vm//locks class API_VM_Locks(Resource): @Authenticator @@ -1640,6 +1658,7 @@ class API_VM_Locks(Resource): api.add_resource(API_VM_Locks, '/vm//locks') + # /vm/ class API_Network_Element(Resource): @Authenticator @@ -2133,6 +2153,7 @@ class API_Network_Element(Resource): api.add_resource(API_Network_Element, '/network/') + # /network//lease class API_Network_Lease_Root(Resource): @RequestParser([ @@ -2254,6 +2275,7 @@ class API_Network_Lease_Root(Resource): api.add_resource(API_Network_Lease_Root, '/network//lease') + # /network//lease/{mac} class API_Network_Lease_Element(Resource): @Authenticator @@ -2382,6 +2404,7 @@ class API_Network_Lease_Element(Resource): api.add_resource(API_Network_Lease_Element, '/network//lease/') + # /network//acl class API_Network_ACL_Root(Resource): @RequestParser([ @@ -2506,6 +2529,7 @@ class API_Network_ACL_Root(Resource): api.add_resource(API_Network_ACL_Root, '/network//acl') + # /network//acl/ class API_Network_ACL_Element(Resource): @Authenticator @@ -2633,6 +2657,7 @@ class API_Storage_Root(Resource): api.add_resource(API_Storage_Root, '/storage') + # /storage/ceph class API_Storage_Ceph_Root(Resource): @Authenticator @@ -2642,6 +2667,7 @@ class API_Storage_Ceph_Root(Resource): api.add_resource(API_Storage_Ceph_Root, '/storage/ceph') + # /storage/ceph/status class API_Storage_Ceph_Status(Resource): @Authenticator @@ -2672,6 +2698,7 @@ class API_Storage_Ceph_Status(Resource): api.add_resource(API_Storage_Ceph_Status, '/storage/ceph/status') + # /storage/ceph/utilization class API_Storage_Ceph_Utilization(Resource): @Authenticator @@ -2702,6 +2729,7 @@ class API_Storage_Ceph_Utilization(Resource): api.add_resource(API_Storage_Ceph_Utilization, '/storage/ceph/utilization') + # /storage/ceph/benchmark class API_Storage_Ceph_Benchmark(Resource): @RequestParser([ @@ -2862,6 +2890,7 @@ class API_Storage_Ceph_Benchmark(Resource): api.add_resource(API_Storage_Ceph_Benchmark, '/storage/ceph/benchmark') + # /storage/ceph/option class API_Storage_Ceph_Option(Resource): @RequestParser([ @@ -2910,6 +2939,7 @@ class API_Storage_Ceph_Option(Resource): api.add_resource(API_Storage_Ceph_Option, '/storage/ceph/option') + # /storage/ceph/osd class API_Storage_Ceph_OSD_Root(Resource): @RequestParser([ @@ -3055,6 +3085,7 @@ class API_Storage_Ceph_OSD_Root(Resource): api.add_resource(API_Storage_Ceph_OSD_Root, '/storage/ceph/osd') + # /storage/ceph/osd/ class API_Storage_Ceph_OSD_Element(Resource): @Authenticator @@ -3116,6 +3147,7 @@ class API_Storage_Ceph_OSD_Element(Resource): api.add_resource(API_Storage_Ceph_OSD_Element, '/storage/ceph/osd/') + # /storage/ceph/osd//state class API_Storage_Ceph_OSD_State(Resource): @Authenticator @@ -3175,6 +3207,7 @@ class API_Storage_Ceph_OSD_State(Resource): api.add_resource(API_Storage_Ceph_OSD_State, '/storage/ceph/osd//state') + # /storage/ceph/pool class API_Storage_Ceph_Pool_Root(Resource): @RequestParser([ @@ -3307,6 +3340,7 @@ class API_Storage_Ceph_Pool_Root(Resource): api.add_resource(API_Storage_Ceph_Pool_Root, '/storage/ceph/pool') + # /storage/ceph/pool/ class API_Storage_Ceph_Pool_Element(Resource): @Authenticator @@ -3418,6 +3452,7 @@ class API_Storage_Ceph_Pool_Element(Resource): api.add_resource(API_Storage_Ceph_Pool_Element, '/storage/ceph/pool/') + # /storage/ceph/volume class API_Storage_Ceph_Volume_Root(Resource): @RequestParser([ @@ -3569,6 +3604,7 @@ class API_Storage_Ceph_Volume_Root(Resource): api.add_resource(API_Storage_Ceph_Volume_Root, '/storage/ceph/volume') + # /storage/ceph/volume// class API_Storage_Ceph_Volume_Element(Resource): @Authenticator @@ -3718,6 +3754,7 @@ class API_Storage_Ceph_Volume_Element(Resource): api.add_resource(API_Storage_Ceph_Volume_Element, '/storage/ceph/volume//') + # /storage/ceph/volume///clone class API_Storage_Ceph_Volume_Element_Clone(Resource): @RequestParser([ @@ -3762,6 +3799,7 @@ class API_Storage_Ceph_Volume_Element_Clone(Resource): api.add_resource(API_Storage_Ceph_Volume_Element_Clone, '/storage/ceph/volume///clone') + # /storage/ceph/volume///upload class API_Storage_Ceph_Volume_Element_Upload(Resource): @RequestParser([ @@ -3815,6 +3853,7 @@ class API_Storage_Ceph_Volume_Element_Upload(Resource): api.add_resource(API_Storage_Ceph_Volume_Element_Upload, '/storage/ceph/volume///upload') + # /storage/ceph/snapshot class API_Storage_Ceph_Snapshot_Root(Resource): @RequestParser([ @@ -3922,6 +3961,7 @@ class API_Storage_Ceph_Snapshot_Root(Resource): api.add_resource(API_Storage_Ceph_Snapshot_Root, '/storage/ceph/snapshot') + # /storage/ceph/snapshot/// class API_Storage_Ceph_Snapshot_Element(Resource): @Authenticator @@ -4081,6 +4121,7 @@ class API_Provisioner_Root(Resource): api.add_resource(API_Provisioner_Root, '/provisioner') + # /provisioner/template class API_Provisioner_Template_Root(Resource): @RequestParser([ @@ -4129,6 +4170,7 @@ class API_Provisioner_Template_Root(Resource): api.add_resource(API_Provisioner_Template_Root, '/provisioner/template') + # /provisioner/template/system class API_Provisioner_Template_System_Root(Resource): @RequestParser([ @@ -4320,6 +4362,7 @@ class API_Provisioner_Template_System_Root(Resource): api.add_resource(API_Provisioner_Template_System_Root, '/provisioner/template/system') + # /provisioner/template/system/