Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
31268c0b47
|
@@ -203,6 +203,9 @@ def main():
|
|||||||
argv.append(config.get('CELERY_QUEUE'))
|
argv.append(config.get('CELERY_QUEUE'))
|
||||||
argv.append('-n')
|
argv.append('-n')
|
||||||
argv.append(config.get('CELERY_QUEUE'))
|
argv.append(config.get('CELERY_QUEUE'))
|
||||||
|
argv.append('--config')
|
||||||
|
argv.append('celeryconfig')
|
||||||
|
|
||||||
|
|
||||||
BaseTask.default_token_symbol = config.get('CIC_DEFAULT_TOKEN_SYMBOL')
|
BaseTask.default_token_symbol = config.get('CIC_DEFAULT_TOKEN_SYMBOL')
|
||||||
BaseTask.default_token_address = registry.by_name(BaseTask.default_token_symbol)
|
BaseTask.default_token_address = registry.by_name(BaseTask.default_token_symbol)
|
||||||
|
|||||||
@@ -1,4 +0,0 @@
|
|||||||
[signer]
|
|
||||||
secret = deadbeef
|
|
||||||
#database = crypto-dev-signer
|
|
||||||
socket_path = ipc:///run/crypto-dev-signer/jsonrpc.ipc
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
[database]
|
|
||||||
NAME=cic-signer
|
|
||||||
USER=
|
|
||||||
PASSWORD=
|
|
||||||
HOST=
|
|
||||||
PORT=
|
|
||||||
ENGINE=
|
|
||||||
DRIVER=
|
|
||||||
@@ -5,13 +5,7 @@ set -a
|
|||||||
if [ -z $DEV_DATA_DIR ]; then
|
if [ -z $DEV_DATA_DIR ]; then
|
||||||
export DEV_DATA_DIR=`mktemp -d`
|
export DEV_DATA_DIR=`mktemp -d`
|
||||||
else
|
else
|
||||||
mkdir -vp $DEV_DATA_DIR
|
mkdir -p $DEV_DATA_DIR
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z $STATE_DIR ]; then
|
|
||||||
export STATE_DIR=/run/cic_init
|
|
||||||
mkdir -vp $STATE_DIR
|
|
||||||
echo 0 > $STATE_DIR/init
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z $DEV_CONFIG_RESET ]; then
|
if [ -z $DEV_CONFIG_RESET ]; then
|
||||||
|
|||||||
@@ -117,8 +117,6 @@ export CIC_DEFAULT_TOKEN_SYMBOL=$CIC_DEFAULT_TOKEN_SYMBOL
|
|||||||
export TOKEN_NAME=$TOKEN_NAME
|
export TOKEN_NAME=$TOKEN_NAME
|
||||||
" >> "${DEV_DATA_DIR}"/env_reset
|
" >> "${DEV_DATA_DIR}"/env_reset
|
||||||
|
|
||||||
echo -n $CIC_REGISTRY_ADDRESS > $STATE_DIR/registry
|
|
||||||
|
|
||||||
set +a
|
set +a
|
||||||
set +e
|
set +e
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,6 @@ then
|
|||||||
>&2 echo -e "\033[;31mFAILED\033[;39m RUN_MASK 1 - contract deployment"
|
>&2 echo -e "\033[;31mFAILED\033[;39m RUN_MASK 1 - contract deployment"
|
||||||
exit 1;
|
exit 1;
|
||||||
fi
|
fi
|
||||||
echo -n 1 > $STATE_DIR/init
|
|
||||||
>&2 echo -e "\033[;32mSUCCEEDED\033[;39m RUN_MASK 1 - contract deployment"
|
>&2 echo -e "\033[;32mSUCCEEDED\033[;39m RUN_MASK 1 - contract deployment"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -28,6 +27,5 @@ then
|
|||||||
>&2 echo -e "\033[;31mFAILED\033[;39m RUN_MASK 2 - custodial service initialization"
|
>&2 echo -e "\033[;31mFAILED\033[;39m RUN_MASK 2 - custodial service initialization"
|
||||||
exit 1;
|
exit 1;
|
||||||
fi
|
fi
|
||||||
echo -n 2 > $STATE_DIR/init
|
|
||||||
>&2 echo -e "\033[;32mSUCCEEDED\033[;39m RUN_MASK 2 - custodial service initialization"
|
>&2 echo -e "\033[;32mSUCCEEDED\033[;39m RUN_MASK 2 - custodial service initialization"
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import json
|
|||||||
# external imports
|
# external imports
|
||||||
import celery
|
import celery
|
||||||
import confini
|
import confini
|
||||||
|
import celery.utils.graph
|
||||||
|
|
||||||
# local imports
|
# local imports
|
||||||
from cic_eth.api import Api
|
from cic_eth.api import Api
|
||||||
@@ -35,7 +36,7 @@ class Fmtr(celery.utils.graph.GraphFormatter):
|
|||||||
|
|
||||||
def main():
|
def main():
|
||||||
api = Api(
|
api = Api(
|
||||||
config.get('CIC_CHAIN_SPEC'),
|
config.get('CHAIN_SPEC'),
|
||||||
queue='cic-eth',
|
queue='cic-eth',
|
||||||
#callback_param='{}:{}:{}:{}'.format(args.redis_host_callback, args.redis_port_callback, redis_db, redis_channel),
|
#callback_param='{}:{}:{}:{}'.format(args.redis_host_callback, args.redis_port_callback, redis_db, redis_channel),
|
||||||
#callback_task='cic_eth.callbacks.redis.redis',
|
#callback_task='cic_eth.callbacks.redis.redis',
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
include requirements.txt initness/data/config/**
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
"""Initness reports the initialization state and entry-point variables for the contract migrations process of the CIC services deployment.
|
|
||||||
"""
|
|
||||||
from .state import *
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
[httpd]
|
|
||||||
host = localhost
|
|
||||||
port = 8000
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
[state]
|
|
||||||
base_dir = /run/cic_init
|
|
||||||
@@ -1,87 +0,0 @@
|
|||||||
# standard import
|
|
||||||
import json
|
|
||||||
import os
|
|
||||||
import logging
|
|
||||||
import argparse
|
|
||||||
import sys
|
|
||||||
from http.server import (
|
|
||||||
HTTPServer,
|
|
||||||
BaseHTTPRequestHandler,
|
|
||||||
)
|
|
||||||
|
|
||||||
# external imports
|
|
||||||
import confini
|
|
||||||
|
|
||||||
# local imports
|
|
||||||
from initness import get_state
|
|
||||||
|
|
||||||
|
|
||||||
logging.basicConfig(level=logging.WARNING)
|
|
||||||
logg = logging.getLogger()
|
|
||||||
|
|
||||||
script_dir = os.path.dirname(os.path.realpath(__file__))
|
|
||||||
data_dir = os.path.join(script_dir, '..', 'data')
|
|
||||||
default_config_dir = os.path.join(data_dir, 'config')
|
|
||||||
config_dir = os.environ.get('CONFINI_DIR', default_config_dir)
|
|
||||||
|
|
||||||
argparser = argparse.ArgumentParser()
|
|
||||||
argparser.add_argument('-c', '--config', dest='c', type=str, help='configuration override directory')
|
|
||||||
argparser.add_argument('--host', type=str, help='httpd host')
|
|
||||||
argparser.add_argument('--port', type=str, help='httpd port')
|
|
||||||
argparser.add_argument('--state-dir', dest='state_dir', type=str, help='directory to read state from')
|
|
||||||
argparser.add_argument('--env-prefix', default=os.environ.get('CONFINI_ENV_PREFIX'), dest='env_prefix', type=str, help='environment prefix for variables to overwrite configuration')
|
|
||||||
argparser.add_argument('-v', action='store_true', help='be verbose')
|
|
||||||
argparser.add_argument('-vv', action='store_true', help='be more verbose')
|
|
||||||
args = argparser.parse_args()
|
|
||||||
|
|
||||||
if args.vv:
|
|
||||||
logging.getLogger().setLevel(logging.DEBUG)
|
|
||||||
elif args.v:
|
|
||||||
logging.getLogger().setLevel(logging.INFO)
|
|
||||||
|
|
||||||
override_dirs = []
|
|
||||||
if args.c:
|
|
||||||
override_dirs = [args.c]
|
|
||||||
config = confini.Config(config_dir, args.env_prefix, override_dirs=override_dirs)
|
|
||||||
config.process()
|
|
||||||
# override args
|
|
||||||
args_override = {
|
|
||||||
'HTTPD_HOST': getattr(args, 'host'),
|
|
||||||
'HTTPD_PORT': getattr(args, 'port'),
|
|
||||||
'STATE_BASE_DIR': getattr(args, 'state_dir'),
|
|
||||||
}
|
|
||||||
config.dict_override(args_override, 'cli flag')
|
|
||||||
logg.debug('loaded config: {}\n'.format(config))
|
|
||||||
|
|
||||||
|
|
||||||
class StateRequestHandler(BaseHTTPRequestHandler):
|
|
||||||
|
|
||||||
state_store_dir = None
|
|
||||||
|
|
||||||
def do_GET(self):
|
|
||||||
|
|
||||||
o = get_state(self.state_store_dir)
|
|
||||||
self.send_response(200, 'yarr')
|
|
||||||
self.end_headers()
|
|
||||||
|
|
||||||
self.wfile.write(json.dumps(o).encode('utf-8'))
|
|
||||||
|
|
||||||
|
|
||||||
def run(store, host=None, port=None):
|
|
||||||
port = int(port, 10)
|
|
||||||
server_address = (host, port)
|
|
||||||
httpd = HTTPServer(server_address, StateRequestHandler)
|
|
||||||
httpd.serve_forever()
|
|
||||||
|
|
||||||
|
|
||||||
def main():
|
|
||||||
try:
|
|
||||||
os.stat(config.get('STATE_BASE_DIR'))
|
|
||||||
except FileNotFoundError:
|
|
||||||
os.makedirs(config.get('STATE_BASE_DIR'))
|
|
||||||
store = StateRequestHandler.state_store_dir=config.get('STATE_BASE_DIR')
|
|
||||||
run(store, host=config.get('HTTPD_HOST'), port=config.get('HTTPD_PORT'))
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
main()
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
# standard imports
|
|
||||||
import os
|
|
||||||
|
|
||||||
def get_state(state_store_dir):
|
|
||||||
init_path = os.path.join(state_store_dir, 'init')
|
|
||||||
init_level = 0
|
|
||||||
registry_address = None
|
|
||||||
|
|
||||||
try:
|
|
||||||
f = open(init_path, 'r')
|
|
||||||
init_level = f.read()
|
|
||||||
init_level = init_level.rstrip()
|
|
||||||
f.close()
|
|
||||||
except FileNotFoundError:
|
|
||||||
pass
|
|
||||||
|
|
||||||
registry_path = os.path.join(state_store_dir, 'registry')
|
|
||||||
try:
|
|
||||||
f = open(registry_path, 'r')
|
|
||||||
registry_address = f.read()
|
|
||||||
registry_address = registry_address.rstrip()
|
|
||||||
f.close()
|
|
||||||
except FileNotFoundError:
|
|
||||||
pass
|
|
||||||
|
|
||||||
o = {
|
|
||||||
'runlevel': init_level,
|
|
||||||
'registry': registry_address,
|
|
||||||
}
|
|
||||||
|
|
||||||
return o
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
confini>=0.3.6rc4,<0.5.0
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
from setuptools import setup
|
|
||||||
|
|
||||||
f = open('requirements.txt', 'r')
|
|
||||||
requirements = f.read()
|
|
||||||
f.close()
|
|
||||||
|
|
||||||
setup(
|
|
||||||
name='initness',
|
|
||||||
version='0.0.1a1',
|
|
||||||
install_requires=requirements,
|
|
||||||
packages=[
|
|
||||||
'initness',
|
|
||||||
'initness.runnable',
|
|
||||||
],
|
|
||||||
include_package_data=True,
|
|
||||||
entry_points = {
|
|
||||||
'console_scripts': [
|
|
||||||
'cic-init-server=initness.runnable.server:main',
|
|
||||||
],
|
|
||||||
},
|
|
||||||
)
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
# standard imports
|
|
||||||
import unittest
|
|
||||||
import tempfile
|
|
||||||
import os
|
|
||||||
|
|
||||||
# local imports
|
|
||||||
from initness.runnable.server import get_state
|
|
||||||
|
|
||||||
class TestInitness(unittest.TestCase):
|
|
||||||
|
|
||||||
def setUp(self):
|
|
||||||
self.dir = tempfile.mkdtemp()
|
|
||||||
f = open(os.path.join(self.dir, 'init'), 'w')
|
|
||||||
f.write('42')
|
|
||||||
f.close()
|
|
||||||
f = open(os.path.join(self.dir, 'registry'), 'w')
|
|
||||||
f.write('0xdeadbeef')
|
|
||||||
f.close()
|
|
||||||
|
|
||||||
def test_state(self):
|
|
||||||
o = get_state(self.dir)
|
|
||||||
self.assertEqual(o['runlevel'], '42')
|
|
||||||
self.assertEqual(o['registry'], '0xdeadbeef')
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
Reference in New Issue
Block a user