Update chain interface, add chainqueue settings to cli

This commit is contained in:
lash 2022-04-28 12:49:50 +00:00
parent 24a71b6c7f
commit 8d0a1f589b
Signed by: lash
GPG Key ID: 21D2E7BB88C2A746
6 changed files with 17 additions and 5 deletions

View File

@ -2,6 +2,7 @@
from chainlib.interface import ChainInterface
from chainlib.eth.block import (
block_by_number,
block_latest,
Block,
)
from chainlib.eth.tx import (
@ -16,3 +17,4 @@ class EthChainInterface(ChainInterface):
self._block_from_src = Block.from_src
self._tx_receipt = receipt
self._src_normalize = Tx.src_normalize
self._block_latest = block_latest

View File

@ -6,6 +6,7 @@ import signal
# external imports
import chainlib.eth.cli
import chaind.cli
import chainqueue.cli
from chaind.session import SessionController
from chaind.setup import Environment
from chaind.error import (
@ -44,14 +45,18 @@ env = Environment(domain='eth', env=os.environ)
arg_flags = chainlib.eth.cli.argflag_std_read
argparser = chainlib.eth.cli.ArgumentParser(arg_flags)
queue_arg_flags = 0
chainqueue.cli.process_flags(argparser, queue_arg_flags)
local_arg_flags = chaind.cli.argflag_local_base | chaind.cli.ChaindFlag.DISPATCH | chaind.cli.ChaindFlag.SOCKET
chaind.cli.process_flags(argparser, local_arg_flags)
args = argparser.parse_args()
base_config_dir = [chaind.cli.config_dir]
base_config_dir = [chainqueue.cli.config_dir, chaind.cli.config_dir]
config = chainlib.eth.cli.Config.from_args(args, arg_flags, base_config_dir=base_config_dir)
config = chaind.cli.process_config(config, args, local_arg_flags)
config = chainqueue.cli.process_config(config, args, queue_arg_flags)
config.add('eth', 'CHAIND_ENGINE', False)
config.add('queue', 'CHAIND_COMPONENT', False)
logg.debug('config loaded:\n{}'.format(config))
@ -82,7 +87,7 @@ token_cache_store = CacheTokenTx(chain_spec, normalizer=tx_normalizer)
dispatcher = EthDispatcher(conn)
queue_adapter = ChaindFsAdapter(
settings.get('CHAIN_SPEC'),
settings.get('SESSION_DATA_DIR'),
settings.dir_for('queue'),
EthCacheTx,
dispatcher,
)

View File

@ -10,6 +10,7 @@ import socket
# external imports
import chainlib.eth.cli
import chainqueue.cli
import chaind.cli
from chaind.setup import Environment
from chainlib.eth.gas import price
@ -37,12 +38,15 @@ argparser.add_positional('source', required=False, type=str, help='Transaction s
local_arg_flags = chaind.cli.argflag_local_socket_client | chaind.cli.ChaindFlag.TOKEN
chaind.cli.process_flags(argparser, local_arg_flags)
chainqueue.cli.process_flags(argparser, 0)
args = argparser.parse_args()
env = Environment(domain='eth', env=os.environ)
base_config_dir = [chaind.cli.config_dir]
base_config_dir = [chaind.cli.config_dir, chainqueue.cli.config_dir]
config = chainlib.eth.cli.Config.from_args(args, arg_flags, base_config_dir=base_config_dir)
config = chainqueue.cli.process_config(config, args, 0)
config = chaind.cli.process_config(config, args, local_arg_flags)
config.add(args.source, '_SOURCE', False)
config.add('eth', 'CHAIND_ENGINE', False)

View File

@ -57,6 +57,7 @@ settings.process(config)
logg.debug('settings:\n{}'.format(settings))
def main():
queue_adapter = ChaindFsAdapter(
settings.get('CHAIN_SPEC'),

View File

@ -1,6 +1,6 @@
chaind~=0.1.1
hexathon~=0.1.5
chainlib-eth~=0.1.0
chainlib-eth~=0.1.1
pyxdg~=0.27
shep~=0.2.3
funga-eth~=0.6.0

View File

@ -1,6 +1,6 @@
[metadata]
name = chaind-eth
version = 0.1.3
version = 0.1.4
description = Queue server for ethereum
author = Louis Holbrook
author_email = dev@holbrook.no