Exemplo n.º 1
0
def skale_bp(skale):
    app = Flask(__name__)
    config = NodeConfig()
    dutils = DockerUtils(volume_driver='local')
    app.register_blueprint(construct_schains_bp(skale, config, dutils))
    SChainRecord.create_table()
    yield app.test_client()
    SChainRecord.drop_table()
Exemplo n.º 2
0
def client():
    return DockerUtils(volume_driver='local')
Exemplo n.º 3
0
def mocked_client():
    dutils = DockerUtils(volume_driver='local')
    dutils.get_all_schain_containers = partial(
        dutils.get_all_schain_containers, all=True)
    return dutils
Exemplo n.º 4
0
from core.schains.helper import get_schain_dir_path
from core.schains.runner import get_container_name
from core.schains.config import get_allowed_endpoints

from tools.helper import SkaleFilter
from tools.docker_utils import DockerUtils
from tools.custom_thread import CustomThread
from tools.str_formatters import arguments_list_string
from tools.configs.schains import SCHAINS_DIR_PATH
from tools.configs.containers import SCHAIN_CONTAINER, IMA_CONTAINER
from tools.iptables import remove_rules as remove_iptables_rules

from . import CLEANER_INTERVAL, MONITOR_INTERVAL

logger = logging.getLogger(__name__)
dutils = DockerUtils()


def log_remove(component_name, schain_name):
    logger.warning(
        f'Going to remove {component_name} for sChain {schain_name}')


def remove_schain_volume(schain_name):
    log_remove('volume', schain_name)
    dutils.rm_vol(schain_name)


def remove_schain_container(schain_name):
    log_remove('container', schain_name)
    schain_container_name = get_container_name(SCHAIN_CONTAINER, schain_name)
Exemplo n.º 5
0
def dutils():
    return DockerUtils(volume_driver='local')
Exemplo n.º 6
0
from web.routes.wallet import construct_wallet_bp
from web.routes.node_info import construct_node_info_bp
from web.routes.security import construct_security_bp
from web.routes.validators import construct_validators_bp
from web.routes.metrics import construct_metrics_bp
from web.routes.sgx import sgx_bp

init_admin_logger()
logger = logging.getLogger(__name__)
werkzeug_logger = logging.getLogger('werkzeug')  # todo: remove
werkzeug_logger.setLevel(logging.WARNING)  # todo: remove

rpc_wallet = RPCWallet(TM_URL)
skale = Skale(ENDPOINT, ABI_FILEPATH, rpc_wallet)

docker_utils = DockerUtils()

node_config = NodeConfig()
node = Node(skale, node_config)
schains_monitor = SchainsMonitor(skale, node_config)
schains_cleaner = SChainsCleaner(skale, node_config)

token = init_user_token()
database = SqliteDatabase(DB_FILE)

app = Flask(__name__)
app.register_blueprint(web_logs)
app.register_blueprint(construct_nodes_bp(skale, node, docker_utils))
app.register_blueprint(construct_schains_bp(skale, node_config, docker_utils))
app.register_blueprint(construct_wallet_bp(skale))
app.register_blueprint(construct_node_info_bp(skale, docker_utils))