[SEBA-412] Automated reformat of Python code
Passes of modernize, autopep8, black, then check with flake8
flake8 + manual fixes:
lib/xos-config
lib/xos-kafka
lib/xos-util
xos/coreapi
xos/api
xos/xos_client
Change-Id: Ib23cf84cb13beb3c6381fa0d79594dc9131dc815
diff --git a/lib/xos-config/xosconfig/__init__.py b/lib/xos-config/xosconfig/__init__.py
index d4e8305..9a0b30c 100644
--- a/lib/xos-config/xosconfig/__init__.py
+++ b/lib/xos-config/xosconfig/__init__.py
@@ -13,3 +13,5 @@
# limitations under the License.
from .config import Config
+
+__all__ = ["Config"]
diff --git a/lib/xos-config/xosconfig/config.py b/lib/xos-config/xosconfig/config.py
index ebc696f..aac6ffb 100644
--- a/lib/xos-config/xosconfig/config.py
+++ b/lib/xos-config/xosconfig/config.py
@@ -1,4 +1,3 @@
-
# Copyright 2017-present Open Networking Foundation
#
# Licensed under the Apache License, Version 2.0 (the "License");
@@ -17,7 +16,6 @@
import os
import sys
import yaml
-import requests
import default
from pykwalify.core import Core as PyKwalify
import pykwalify
@@ -25,20 +23,25 @@
pykwalify.init_logging(1)
DEFAULT_CONFIG_FILE = "/opt/xos/xos_config.yaml"
-DEFAULT_CONFIG_SCHEMA = 'xos-config-schema.yaml'
+DEFAULT_CONFIG_SCHEMA = "xos-config-schema.yaml"
INITIALIZED = False
CONFIG_FILE = None
CONFIG = {}
OVERRIDE_CONFIG = {}
+
class Config:
"""
XOS Configuration APIs
"""
@staticmethod
- def init(config_file=DEFAULT_CONFIG_FILE, config_schema=DEFAULT_CONFIG_SCHEMA, override_config_file=None):
+ def init(
+ config_file=DEFAULT_CONFIG_FILE,
+ config_schema=DEFAULT_CONFIG_SCHEMA,
+ override_config_file=None,
+ ):
# make schema relative to this directory
# TODO give the possibility to specify an absolute path
@@ -58,37 +61,40 @@
# the config module can be initialized only one
if INITIALIZED:
- raise Exception('[XOS-Config] Module already initialized')
+ raise Exception("[XOS-Config] Module already initialized")
INITIALIZED = True
# if XOS_CONFIG_FILE is defined override the config_file
# FIXME shouldn't this stay in whatever module call this one? and then just pass the file to the init method
- if os.environ.get('XOS_CONFIG_FILE'):
- config_file = os.environ['XOS_CONFIG_FILE']
+ if os.environ.get("XOS_CONFIG_FILE"):
+ config_file = os.environ["XOS_CONFIG_FILE"]
# if XOS_CONFIG_SCHEMA is defined override the config_schema
# FIXME shouldn't this stay in whatever module call this one? and then just pass the file to the init method
- if os.environ.get('XOS_CONFIG_SCHEMA'):
- config_schema = Config.get_abs_path(os.environ['XOS_CONFIG_SCHEMA'])
+ if os.environ.get("XOS_CONFIG_SCHEMA"):
+ config_schema = Config.get_abs_path(os.environ["XOS_CONFIG_SCHEMA"])
# allow OVERRIDE_CONFIG_* to be overridden by env vars
- if os.environ.get('XOS_OVERRIDE_CONFIG_FILE'):
- OVERRIDE_CONFIG_FILE = os.environ['XOS_OVERRIDE_CONFIG_FILE']
- if os.environ.get('XOS_OVERRIDE_CONFIG_SCHEMA'):
- OVERRIDE_CONFIG_SCHEMA = Config.get_abs_path(os.environ['XOS_OVERRIDE_CONFIG_SCHEMA'])
+ if os.environ.get("XOS_OVERRIDE_CONFIG_FILE"):
+ OVERRIDE_CONFIG_FILE = os.environ["XOS_OVERRIDE_CONFIG_FILE"]
+ if os.environ.get("XOS_OVERRIDE_CONFIG_SCHEMA"):
+ OVERRIDE_CONFIG_SCHEMA = Config.get_abs_path(
+ os.environ["XOS_OVERRIDE_CONFIG_SCHEMA"]
+ )
# if a -C parameter is set in the cli override the config_file
# FIXME shouldn't this stay in whatever module call this one? and then just pass the file to the init method
if Config.get_cli_param(sys.argv):
config_schema = Config.get_cli_param(sys.argv)
-
CONFIG_FILE = config_file
CONFIG = Config.read_config(config_file, config_schema)
# if an override is set
if OVERRIDE_CONFIG_FILE is not None:
- OVERRIDE_CONFIG = Config.read_config(OVERRIDE_CONFIG_FILE, OVERRIDE_CONFIG_SCHEMA, True)
+ OVERRIDE_CONFIG = Config.read_config(
+ OVERRIDE_CONFIG_FILE, OVERRIDE_CONFIG_SCHEMA, True
+ )
@staticmethod
def get_config_file():
@@ -103,7 +109,7 @@
def get_abs_path(path):
if os.path.isabs(path):
return path
- return os.path.dirname(os.path.realpath(__file__)) + '/' + path
+ return os.path.dirname(os.path.realpath(__file__)) + "/" + path
@staticmethod
def validate_config_format(config_file, config_schema):
@@ -115,7 +121,7 @@
def get_cli_param(args):
last = None
for arg in args:
- if last == '-C':
+ if last == "-C":
return arg
last = arg
@@ -127,25 +133,27 @@
:return: dict
"""
- if(not os.path.exists(config_file) and ignore_if_not_found):
+ if not os.path.exists(config_file) and ignore_if_not_found:
return {}
if not os.path.exists(config_file):
- raise Exception('[XOS-Config] Config file not found at: %s' % config_file)
+ raise Exception("[XOS-Config] Config file not found at: %s" % config_file)
if not os.path.exists(config_schema):
- raise Exception('[XOS-Config] Config schema not found at: %s' % config_schema)
+ raise Exception(
+ "[XOS-Config] Config schema not found at: %s" % config_schema
+ )
try:
Config.validate_config_format(config_file, config_schema)
- except Exception, e:
+ except Exception as e:
try:
error_msg = e.msg
except AttributeError:
error_msg = str(e)
- raise Exception('[XOS-Config] The config format is wrong: %s' % error_msg)
+ raise Exception("[XOS-Config] The config format is wrong: %s" % error_msg)
- with open(config_file, 'r') as stream:
+ with open(config_file, "r") as stream:
return yaml.safe_load(stream)
@staticmethod
@@ -161,7 +169,7 @@
global OVERRIDE_CONFIG_FILE
if not INITIALIZED:
- raise Exception('[XOS-Config] Module has not been initialized')
+ raise Exception("[XOS-Config] Module has not been initialized")
val = Config.get_param(query, CONFIG)
if OVERRIDE_CONFIG_FILE or not val:
@@ -186,10 +194,10 @@
:param config: the config source to read from (can be the config file or the defaults)
:return: the requested parameter in any format the parameter is specified
"""
- keys = query.split('.')
+ keys = query.split(".")
if len(keys) == 1:
key = keys[0]
- if not config.has_key(key):
+ if key not in config:
return None
return config[key]
else:
@@ -205,10 +213,11 @@
"""
param = config
for k in keys:
- if not param.has_key(k):
+ if k not in param:
return None
param = param[k]
return param
-if __name__ == '__main__':
+
+if __name__ == "__main__":
Config.init()
diff --git a/lib/xos-config/xosconfig/default.py b/lib/xos-config/xosconfig/default.py
index 2c73b26..afed387 100644
--- a/lib/xos-config/xosconfig/default.py
+++ b/lib/xos-config/xosconfig/default.py
@@ -13,52 +13,34 @@
# limitations under the License.
DEFAULT_VALUES = {
- 'xos_dir': '/opt/xos',
-
+ "xos_dir": "/opt/xos",
# The configuration below inherits from the standard config of the Python logging module
# See: https://docs.python.org/2/library/logging.config.html
# multistructlog supports this config in all of its generality
# So for instance, you can add new handlers. Note that all handlers will
# receive logs simultaneously.
-
- 'blueprints': {},
- 'logging': {
- 'version': 1,
- 'handlers': {
- 'console': {
- 'class': 'logging.StreamHandler',
+ "blueprints": {},
+ "logging": {
+ "version": 1,
+ "handlers": {
+ "console": {"class": "logging.StreamHandler"},
+ "file": {
+ "class": "logging.handlers.RotatingFileHandler",
+ "filename": "/var/log/xos.log",
+ "maxBytes": 10485760,
+ "backupCount": 5,
},
- 'file': {
- 'class': 'logging.handlers.RotatingFileHandler',
- 'filename': '/var/log/xos.log',
- 'maxBytes': 10485760,
- 'backupCount': 5
- }
},
- 'loggers': {
- '': {
- 'handlers': ['console', 'file'],
- 'level': 'DEBUG'
- }
- }
+ "loggers": {"": {"handlers": ["console", "file"], "level": "DEBUG"}},
},
- 'accessor': {
- 'endpoint': 'xos-core.cord.lab:50051',
- 'kind': 'grpcapi',
- },
- 'keep_temp_files': False,
- 'dependency_graph': None,
- 'error_map_path': '/opt/xos/error_map.txt',
- 'feefie': {
- 'client_user': 'pl'
- },
- 'proxy_ssh': {
- 'enabled': True,
- 'key': '/opt/cord_profile/node_key',
- 'user': 'root'
- },
- 'node_key': '/opt/cord_profile/node_key',
- 'config_dir': '/etc/xos/sync',
- 'backoff_disabled': True,
- 'kafka_bootstrap_servers': ['cord-kafka:9092'],
+ "accessor": {"endpoint": "xos-core.cord.lab:50051", "kind": "grpcapi"},
+ "keep_temp_files": False,
+ "dependency_graph": None,
+ "error_map_path": "/opt/xos/error_map.txt",
+ "feefie": {"client_user": "pl"},
+ "proxy_ssh": {"enabled": True, "key": "/opt/cord_profile/node_key", "user": "root"},
+ "node_key": "/opt/cord_profile/node_key",
+ "config_dir": "/etc/xos/sync",
+ "backoff_disabled": True,
+ "kafka_bootstrap_servers": ["cord-kafka:9092"],
}
diff --git a/lib/xos-config/xosconfig/version.py b/lib/xos-config/xosconfig/version.py
index a118c43..2c84950 100644
--- a/lib/xos-config/xosconfig/version.py
+++ b/lib/xos-config/xosconfig/version.py
@@ -1,4 +1,3 @@
-
# Copyright 2017-present Open Networking Foundation
#
# Licensed under the Apache License, Version 2.0 (the "License");
@@ -13,7 +12,5 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-import os
-
# This file will be replaced by setup.py
__version__ = "unknown"