def check_chain_version(config): key = '__chain_version__' chain_version = str(Packeter.ETHEREUM_PROTOCOL_VERSION) data_dir.set(config.get('misc', 'data_dir')) db_path = get_db_path() db = DB(db_path) if not key in db: db.put(key, chain_version) if db.get(key) != chain_version: print \ """ ATTENTION -------------------------------------------------------------------- the chain in the db (V:%r) doesn't match the the software version (V:%r) This may lead to unexpected errors. Consider to delete the db directory: %s --------- -------------------------------------------------------------------- """ % (db.get(key), chain_version, db_path) time.sleep(5)
def create_config(): options = parse_arguments() # 1) read the default config at "~/.ethereum" config = konfig.read_config() # 2) read config from file cfg_fn = getattr(options, 'config_file') if cfg_fn: if not os.path.exists(cfg_fn): konfig.read_config(cfg_fn) # creates default config.read(cfg_fn) # 3) apply cmd line options to config for section in config.sections(): for a,v in config.items(section): if getattr(options, a, None) is not None: config.set(section, a, getattr(options,a)) # set datadir data_dir.set(config.get('misc', 'data_dir')) return config
def create_config(): options = parse_arguments() # 1) read the default config at "~/.ethereum" config = konfig.read_config() # 2) read config from file cfg_fn = getattr(options, 'config_file') if cfg_fn: if not os.path.exists(cfg_fn): konfig.read_config(cfg_fn) # creates default config.read(cfg_fn) # 3) apply cmd line options to config for section in config.sections(): for a, v in config.items(section): if getattr(options, a, None) is not None: config.set(section, a, getattr(options, a)) # set datadir data_dir.set(config.get('misc', 'data_dir')) return config
def create_config(): config = create_default_config() parser = ArgumentParser(version=Packeter.CLIENT_ID) parser.add_argument( "-l", "--listen", dest="listen_port", default=config.get('network', 'listen_port'), help="<port> Listen on the given port for incoming" " connected (default: 30303).") parser.add_argument( "-a", "--address", dest="coinbase", help="Set the coinbase (mining payout) address", default=config.get('wallet', 'coinbase')) parser.add_argument( "-d", "--data_dir", dest="data_dir", help="<path> Load database from path (default: %s)" % config.get( 'misc', 'data_dir'), default=config.get('misc', 'data_dir')) parser.add_argument( "-r", "--remote", dest="remote_host", help="<host> Connect to remote host" " (try: 54.201.28.117 or 54.204.10.41)") parser.add_argument( "-p", "--port", dest="remote_port", default=config.get('network', 'remote_port'), help="<port> Connect to remote port (default: 30303)" ) parser.add_argument( "-V", "--verbose", dest="verbosity", default=config.get('misc', 'verbosity'), help="<0 - 3> Set the log verbosity from 0 to 3 (default: 1)") parser.add_argument( "-m", "--mining", dest="mining", default=config.get('misc', 'mining'), help="<0 - 100> Percent CPU used for mining 0==off (default: 10)") parser.add_argument( "-L", "--logging", dest="logging", default=config.get('misc', 'logging'), help="<logger1:LEVEL,logger2:LEVEL> set the console log level for" " logger1, logger2, etc. Empty loggername means root-logger," " e.g. 'pyethereum.wire:DEBUG,:INFO'. Overrides '-V'") parser.add_argument( "-x", "--peers", dest="num_peers", default=config.get('network', 'num_peers'), help="<number> Attempt to connect to given number of peers" "(default: 5)") parser.add_argument("-C", "--config", dest="config_file", help="read coniguration") options = parser.parse_args() # set network options for attr in ('listen_port', 'remote_host', 'remote_port', 'num_peers'): config.set('network', attr, getattr( options, attr) or config.get('network', attr)) # set misc options for attr in ('verbosity', 'config_file', 'logging', 'data_dir', 'mining'): config.set( 'misc', attr, getattr(options, attr) or config.get('misc', attr)) # set wallet options for attr in ('coinbase',): config.set( 'wallet', attr, getattr(options, attr) or config.get('wallet', attr)) if config.get('misc', 'config_file'): config.read(config.get('misc', 'config_file')) # set datadir if config.get('misc', 'data_dir'): data_dir.set(config.get('misc', 'data_dir')) # configure logging configure_logging( config.get('misc', 'logging') or '', verbosity=config.getint('misc', 'verbosity')) return config
def create_config(): config = ConfigParser.ConfigParser() # set some defaults, which may be overwritten config.add_section('network') config.set('network', 'listen_host', '0.0.0.0') config.set('network', 'listen_port', '30303') config.set('network', 'num_peers', '5') config.set('network', 'remote_port', '30303') config.set('network', 'remote_host', '') config.set('network', 'client_id', Packeter.CLIENT_ID) config.set('network', 'node_id', sha3(str(uuid.uuid1())).encode('hex')) config.add_section('api') config.set('api', 'listen_host', '127.0.0.1') config.set('api', 'listen_port', '30203') config.add_section('misc') config.set('misc', 'verbosity', '1') config.set('misc', 'config_file', None) config.set('misc', 'logging', None) config.set('misc', 'data_dir', data_dir.path) config.set('misc', 'mining', '10') config.add_section('wallet') config.set('wallet', 'coinbase', '0' * 40) usage = "usage: %prog [options]" parser = OptionParser(usage=usage, version=Packeter.CLIENT_ID) parser.add_option( "-l", "--listen", dest="listen_port", default=config.get('network', 'listen_port'), help="<port> Listen on the given port for incoming" " connected (default: 30303).") parser.add_option( "-a", "--address", dest="coinbase", help="Set the coinbase (mining payout) address", default=config.get('wallet', 'coinbase')) parser.add_option( "-d", "--data_dir", dest="data_dir", help="<path> Load database from path (default: %s)" % config.get( 'misc', 'data_dir'), default=config.get('misc', 'data_dir')) parser.add_option( "-r", "--remote", dest="remote_host", help="<host> Connect to remote host" " (try: 54.201.28.117 or 54.204.10.41)") parser.add_option( "-p", "--port", dest="remote_port", default=config.get('network', 'remote_port'), help="<port> Connect to remote port (default: 30303)" ) parser.add_option( "-v", "--verbose", dest="verbosity", default=config.get('misc', 'verbosity'), help="<0 - 3> Set the log verbosity from 0 to 3 (default: 1)") parser.add_option( "-m", "--mining", dest="mining", default=config.get('misc', 'mining'), help="<0 - 100> Percent CPU used for mining 0==off (default: 10)") parser.add_option( "-L", "--logging", dest="logging", default=config.get('misc', 'logging'), help="<logger1:LEVEL,logger2:LEVEL> set the console log level for" " logger1, logger2, etc. Empty loggername means root-logger," " e.g. 'pyethereum.wire:DEBUG,:INFO'. Overrides '-v'") parser.add_option( "-x", "--peers", dest="num_peers", default=config.get('network', 'num_peers'), help="<number> Attempt to connect to given number of peers" "(default: 5)") parser.add_option("-C", "--config", dest="config_file", help="read coniguration") (options, args) = parser.parse_args() # set network options for attr in ('listen_port', 'remote_host', 'remote_port', 'num_peers'): config.set('network', attr, getattr( options, attr) or config.get('network', attr)) # set misc options for attr in ('verbosity', 'config_file', 'logging', 'data_dir', 'mining'): config.set( 'misc', attr, getattr(options, attr) or config.get('misc', attr)) # set wallet options for attr in ('coinbase',): config.set( 'wallet', attr, getattr(options, attr) or config.get('wallet', attr)) if len(args) != 0: parser.error("wrong number of arguments") sys.exit(1) if config.get('misc', 'config_file'): config.read(config.get('misc', 'config_file')) # set datadir if config.get('misc', 'data_dir'): data_dir.set(config.get('misc', 'data_dir')) # configure logging configure_logging( config.get('misc', 'logging') or '', verbosity=config.getint('misc', 'verbosity')) return config
def create_config(): config = create_default_config() parser = ArgumentParser(version=Packeter.CLIENT_ID) parser.add_argument("-l", "--listen", dest="listen_port", default=config.get('network', 'listen_port'), help="<port> Listen on the given port for incoming" " connected (default: 30303).") parser.add_argument("-a", "--address", dest="coinbase", help="Set the coinbase (mining payout) address", default=config.get('wallet', 'coinbase')) parser.add_argument("-d", "--data_dir", dest="data_dir", help="<path> Load database from path (default: %s)" % config.get('misc', 'data_dir'), default=config.get('misc', 'data_dir')) parser.add_argument("-r", "--remote", dest="remote_host", help="<host> Connect to remote host" " (try: 54.201.28.117 or 54.204.10.41)") parser.add_argument("-p", "--port", dest="remote_port", default=config.get('network', 'remote_port'), help="<port> Connect to remote port (default: 30303)") parser.add_argument( "-V", "--verbose", dest="verbosity", default=config.get('misc', 'verbosity'), help="<0 - 3> Set the log verbosity from 0 to 3 (default: 1)") parser.add_argument( "-m", "--mining", dest="mining", default=config.get('misc', 'mining'), help="<0 - 100> Percent CPU used for mining 0==off (default: 10)") parser.add_argument( "-L", "--logging", dest="logging", default=config.get('misc', 'logging'), help="<logger1:LEVEL,logger2:LEVEL> set the console log level for" " logger1, logger2, etc. Empty loggername means root-logger," " e.g. 'pyethereum.wire:DEBUG,:INFO'. Overrides '-V'") parser.add_argument( "-x", "--peers", dest="num_peers", default=config.get('network', 'num_peers'), help="<number> Attempt to connect to given number of peers" "(default: 5)") parser.add_argument("-C", "--config", dest="config_file", help="read coniguration") options = parser.parse_args() # set network options for attr in ('listen_port', 'remote_host', 'remote_port', 'num_peers'): config.set('network', attr, getattr(options, attr) or config.get('network', attr)) # set misc options for attr in ('verbosity', 'config_file', 'logging', 'data_dir', 'mining'): config.set('misc', attr, getattr(options, attr) or config.get('misc', attr)) # set wallet options for attr in ('coinbase', ): config.set('wallet', attr, getattr(options, attr) or config.get('wallet', attr)) if config.get('misc', 'config_file'): config.read(config.get('misc', 'config_file')) # set datadir if config.get('misc', 'data_dir'): data_dir.set(config.get('misc', 'data_dir')) # configure logging configure_logging(config.get('misc', 'logging') or '', verbosity=config.getint('misc', 'verbosity')) return config
def create_config(): config = ConfigParser.ConfigParser() # set some defaults, which may be overwritten config.add_section('network') config.set('network', 'listen_host', '0.0.0.0') config.set('network', 'listen_port', '30303') config.set('network', 'num_peers', '5') config.set('network', 'remote_port', '30303') config.set('network', 'remote_host', '') config.set('network', 'client_id', Packeter.CLIENT_ID) config.set('network', 'node_id', sha3(str(uuid.uuid1())).encode('hex')) config.add_section('api') config.set('api', 'listen_host', '127.0.0.1') config.set('api', 'listen_port', '30203') config.add_section('misc') config.set('misc', 'verbosity', '1') config.set('misc', 'config_file', None) config.set('misc', 'logging', None) config.set('misc', 'data_dir', data_dir.path) config.set('misc', 'mining', '10') config.add_section('wallet') config.set('wallet', 'coinbase', '0' * 40) usage = "usage: %prog [options]" parser = OptionParser(usage=usage, version=Packeter.CLIENT_ID) parser.add_option("-l", "--listen", dest="listen_port", default=config.get('network', 'listen_port'), help="<port> Listen on the given port for incoming" " connected (default: 30303).") parser.add_option("-a", "--address", dest="coinbase", help="Set the coinbase (mining payout) address", default=config.get('wallet', 'coinbase')) parser.add_option("-d", "--data_dir", dest="data_dir", help="<path> Load database from path (default: %s)" % config.get('misc', 'data_dir'), default=config.get('misc', 'data_dir')) parser.add_option("-r", "--remote", dest="remote_host", help="<host> Connect to remote host" " (try: 54.201.28.117 or 54.204.10.41)") parser.add_option("-p", "--port", dest="remote_port", default=config.get('network', 'remote_port'), help="<port> Connect to remote port (default: 30303)") parser.add_option( "-v", "--verbose", dest="verbosity", default=config.get('misc', 'verbosity'), help="<0 - 3> Set the log verbosity from 0 to 3 (default: 1)") parser.add_option( "-m", "--mining", dest="mining", default=config.get('misc', 'mining'), help="<0 - 100> Percent CPU used for mining 0==off (default: 10)") parser.add_option( "-L", "--logging", dest="logging", default=config.get('misc', 'logging'), help="<logger1:LEVEL,logger2:LEVEL> set the console log level for" " logger1, logger2, etc. Empty loggername means root-logger," " e.g. 'pyethereum.wire:DEBUG,:INFO'. Overrides '-v'") parser.add_option( "-x", "--peers", dest="num_peers", default=config.get('network', 'num_peers'), help="<number> Attempt to connect to given number of peers" "(default: 5)") parser.add_option("-C", "--config", dest="config_file", help="read coniguration") (options, args) = parser.parse_args() # set network options for attr in ('listen_port', 'remote_host', 'remote_port', 'num_peers'): config.set('network', attr, getattr(options, attr) or config.get('network', attr)) # set misc options for attr in ('verbosity', 'config_file', 'logging', 'data_dir', 'mining'): config.set('misc', attr, getattr(options, attr) or config.get('misc', attr)) # set wallet options for attr in ('coinbase', ): config.set('wallet', attr, getattr(options, attr) or config.get('wallet', attr)) if len(args) != 0: parser.error("wrong number of arguments") sys.exit(1) if config.get('misc', 'config_file'): config.read(config.get('misc', 'config_file')) # set datadir if config.get('misc', 'data_dir'): data_dir.set(config.get('misc', 'data_dir')) # configure logging configure_logging(config.get('misc', 'logging') or '', verbosity=config.getint('misc', 'verbosity')) return config