diff --git a/planetmint/backend/connection.py b/planetmint/backend/connection.py index 6578b63..35cb6ed 100644 --- a/planetmint/backend/connection.py +++ b/planetmint/backend/connection.py @@ -17,7 +17,6 @@ logger = logging.getLogger(__name__) def Connection(host: str = None, port: int = None, login: str = None, password: str = None, backend: str = None, **kwargs): - # TODO To add parser for **kwargs, when mongodb is used backend = backend if not backend and kwargs and kwargs["backend"]: backend = kwargs["backend"] @@ -31,10 +30,11 @@ def Connection(host: str = None, port: int = None, login: str = None, password: port = port or Config().get()['database']['port'] if not kwargs.get("port") else kwargs["port"] login = login or Config().get()["database"]["login"] if not kwargs.get("login") else kwargs["login"] password = password or Config().get()["database"]["password"] - if backend == "tarantool_db": modulepath, _, class_name = BACKENDS[backend].rpartition('.') Class = getattr(import_module(modulepath), class_name) + print("LOGIN " + str(login)) + print("PASSWORD " + str(password)) return Class(host=host, port=port, user=login, password=password) elif backend == "localmongodb": modulepath, _, class_name = BACKENDS[backend].rpartition('.') diff --git a/planetmint/backend/schema.py b/planetmint/backend/schema.py index 2384214..f0f2912 100644 --- a/planetmint/backend/schema.py +++ b/planetmint/backend/schema.py @@ -8,7 +8,7 @@ from functools import singledispatch import logging -import planetmint +from planetmint.config import Config from planetmint.backend.connection import Connection from planetmint.common.exceptions import ValidationError from planetmint.common.utils import validate_all_values_for_key_in_obj, validate_all_values_for_key_in_list diff --git a/planetmint/backend/tarantool/connection.py b/planetmint/backend/tarantool/connection.py index c9683c4..8165bd4 100644 --- a/planetmint/backend/tarantool/connection.py +++ b/planetmint/backend/tarantool/connection.py @@ -21,7 +21,7 @@ logger = logging.getLogger(__name__) class TarantoolDB: - def __init__(self, host: str = "localhost", port: int = 3301, user: str = "guest", password: str = "", + def __init__(self, host: str = None, port: int = None, user: str = None, password: str = None, reset_database: bool = False): self.host = host self.port = port diff --git a/planetmint/commands/planetmint.py b/planetmint/commands/planetmint.py index 872af08..efa3849 100644 --- a/planetmint/commands/planetmint.py +++ b/planetmint/commands/planetmint.py @@ -35,6 +35,7 @@ from planetmint.tendermint_utils import public_key_from_base64 from planetmint.commands.election_types import elections from planetmint.version import __tm_supported_versions__ from planetmint.config import Config + logging.basicConfig(level=logging.INFO) logger = logging.getLogger(__name__) @@ -72,15 +73,15 @@ def run_configure(args): if want != 'y': return - Config().init_config( args.backend ) + Config().init_config(args.backend) conf = Config().get() # select the correct config defaults based on the backend print('Generating default configuration for backend {}' .format(args.backend), file=sys.stderr) - - database_keys = Config().get_db_key_map( args.backend ) + + database_keys = Config().get_db_key_map(args.backend) if not args.yes: - for key in ('bind', ): + for key in ('bind',): val = conf['server'][key] conf['server'][key] = input_on_stderr('API Server {}? (default `{}`): '.format(key, val), val) @@ -100,7 +101,7 @@ def run_configure(args): planetmint.config_utils.write_config(conf, config_path) else: print(json.dumps(conf, indent=4, sort_keys=True)) - + Config().set(conf) print('Configuration written to {}'.format(config_path), file=sys.stderr) print('Ready to go!', file=sys.stderr) @@ -244,9 +245,9 @@ def run_election_show(args, planet): def _run_init(): - #bdb = planetmint.Planetmint() + # bdb = planetmint.Planetmint() - #schema.init_database(connection=bdb.connection) + # schema.init_database(connection=bdb.connection) init_tarantool() @@ -267,7 +268,6 @@ def run_drop(args): return drop_tarantool() - def run_recover(b): @@ -292,7 +292,7 @@ def run_start(args): from planetmint.start import start start(args) - + def run_tendermint_version(args): """Show the supported Tendermint version(s)""" supported_tm_ver = { @@ -324,7 +324,7 @@ def create_parser(): const='tarantool_db', nargs='?', help='The backend to use. It can only be ' - '"tarantool_db", currently.') + '"tarantool_db", currently.') # parser for managing elections election_parser = subparsers.add_parser('election', diff --git a/planetmint/config.py b/planetmint/config.py index a0933ff..521a052 100644 --- a/planetmint/config.py +++ b/planetmint/config.py @@ -66,8 +66,8 @@ class Config(metaclass=Singleton): 'port': 3301, "connect_now": True, "encoding": "utf-8", - "login": "guest", - 'password': None, + "login": "planetmint", + 'password': "planet_user", "service": "tarantoolctl connect", "init_config": self.__private_init_config, "drop_config": self.__private_drop_config, @@ -99,7 +99,6 @@ class Config(metaclass=Singleton): 'port': 26657, 'version': 'v0.31.5', # look for __tm_supported_versions__ }, - # TODO Maybe remove hardcode configs for tarantool (review) 'database': self.__private_database_map, 'log': { 'file': log_config['handlers']['file']['filename'], diff --git a/planetmint/lib.py b/planetmint/lib.py index f2db4c1..767f5bd 100644 --- a/planetmint/lib.py +++ b/planetmint/lib.py @@ -77,7 +77,7 @@ class Planetmint(object): else: self.validation = BaseValidationRules # planetmint.backend.tarantool.connection_tarantool.connect(**Config().get()['database']) - self.connection = connection if connection else planetmint.backend.Connection().get_connection() + self.connection = connection if connection is not None else planetmint.backend.Connection().get_connection() def post_transaction(self, transaction, mode): """Submit a valid transaction to the mempool."""