Adds API HOST and PORT as configurable parameters. Renames them to API_CONNECT and API_PORT for consistency.

This commit is contained in:
Sergi Delgado Segura
2020-04-07 12:10:49 +02:00
parent b4a453c8de
commit 62edf51dbd
12 changed files with 48 additions and 31 deletions

View File

@@ -1,13 +1,13 @@
import os
HOST = "localhost"
PORT = 9814
DATA_DIR = os.path.expanduser("~/.teos/")
CONF_FILE_NAME = "teos.conf"
LOG_PREFIX = "teos"
# Default conf fields
DEFAULT_CONF = {
"API_CONNECT": {"value": "localhost", "type": str},
"API_PORT": {"value": 9814, "type": int},
"BTC_RPC_USER": {"value": "user", "type": str},
"BTC_RPC_PASSWORD": {"value": "passwd", "type": str},
"BTC_RPC_CONNECT": {"value": "127.0.0.1", "type": str},

View File

@@ -3,8 +3,8 @@ import logging
from math import ceil
from flask import Flask, request, abort, jsonify
from teos import LOG_PREFIX
import teos.errors as errors
from teos import HOST, PORT, LOG_PREFIX
from teos.inspector import InspectionFailed
from teos.gatekeeper import NotEnoughSlots, IdentificationFailure
@@ -79,7 +79,9 @@ class API:
access.
"""
def __init__(self, inspector, watcher, gatekeeper):
def __init__(self, host, port, inspector, watcher, gatekeeper):
self.host = host
self.port = port
self.inspector = inspector
self.watcher = watcher
self.gatekeeper = gatekeeper
@@ -341,4 +343,4 @@ class API:
logging.getLogger("werkzeug").setLevel(logging.ERROR)
os.environ["WERKZEUG_RUN_MAIN"] = "true"
app.run(host=HOST, port=PORT)
app.run(host=self.host, port=self.port)

View File

@@ -11,6 +11,8 @@ feed_connect = 127.0.0.1
feed_port = 28332
[teos]
api_connect = localhost
api_port = 9814
subscription_slots = 100
max_appointments = 1000000
expiry_delta = 6

View File

@@ -154,7 +154,8 @@ def main(command_line_conf):
# FIXME: 92-block-data-during-bootstrap-db
chain_monitor.monitor_chain()
gatekeeper = Gatekeeper(UsersDBM(config.get("USERS_DB_PATH")), config.get("DEFAULT_SLOTS"))
API(Inspector(block_processor, config.get("MIN_TO_SELF_DELAY")), watcher, gatekeeper).start()
inspector = Inspector(block_processor, config.get("MIN_TO_SELF_DELAY"))
API(config.get("API_CONNECT"), config.get("API_PORT"), inspector, watcher, gatekeeper).start()
except Exception as e:
logger.error("An error occurred: {}. Shutting down".format(e))
exit(1)
@@ -167,9 +168,23 @@ if __name__ == "__main__":
opts, _ = getopt(
argv[1:],
"h",
["btcnetwork=", "btcrpcuser=", "btcrpcpassword=", "btcrpcconnect=", "btcrpcport=", "datadir=", "help"],
[
"apiconnect=",
"apiport=",
"btcnetwork=",
"btcrpcuser=",
"btcrpcpassword=",
"btcrpcconnect=",
"btcrpcport=",
"datadir=",
"help",
],
)
for opt, arg in opts:
if opt in ["--apiconnect"]:
command_line_conf["API_CONNECT"] = arg
if opt in ["--apiport"]:
command_line_conf["API_PORT"] = arg
if opt in ["--btcnetwork"]:
command_line_conf["BTC_NETWORK"] = arg
if opt in ["--btcrpcuser"]: