mirror of
https://github.com/basicswap/basicswap.git
synced 2025-01-03 09:19:26 +00:00
Add preparebinonly option to basicswap-prepare,
Download, verify and extract coin cores only.
This commit is contained in:
parent
9aa7e441ee
commit
bd93899066
5 changed files with 23 additions and 8 deletions
|
@ -40,6 +40,6 @@ jobs:
|
||||||
before_script:
|
before_script:
|
||||||
script:
|
script:
|
||||||
- PYTHONWARNINGS="ignore" flake8 --ignore=E501,F841 --exclude=key.py,messages_pb2.py,.eggs
|
- PYTHONWARNINGS="ignore" flake8 --ignore=E501,F841 --exclude=key.py,messages_pb2.py,.eggs
|
||||||
- codespell --check-filenames --disable-colors --quiet-level=7 -S .git,.eggs
|
- codespell --check-filenames --disable-colors --quiet-level=7 -S .git,.eggs,gitianpubkeys
|
||||||
after_success:
|
after_success:
|
||||||
- echo "End lint"
|
- echo "End lint"
|
||||||
|
|
|
@ -14,7 +14,7 @@ RUN wget -O bs.zip https://github.com/tecnovert/basicswap/archive/master.zip; \
|
||||||
pip3 install .;
|
pip3 install .;
|
||||||
|
|
||||||
# Download binaries, these will be part of the docker image
|
# Download binaries, these will be part of the docker image
|
||||||
RUN basicswap-prepare -datadir=/opt --particl_mnemonic=none
|
RUN basicswap-prepare -datadir=/opt -preparebinonly
|
||||||
|
|
||||||
RUN useradd -ms /bin/bash user; \
|
RUN useradd -ms /bin/bash user; \
|
||||||
mkdir /coindata && chown user /coindata
|
mkdir /coindata && chown user /coindata
|
||||||
|
|
|
@ -1306,8 +1306,8 @@ class BasicSwap():
|
||||||
else:
|
else:
|
||||||
# Lock from the height or time of the block containing the initiate txn
|
# Lock from the height or time of the block containing the initiate txn
|
||||||
coin_from = Coins(offer.coin_from)
|
coin_from = Coins(offer.coin_from)
|
||||||
initiate_tx_block_hash = self.callcoinrpc(coin_from, 'getblockhash', [bid.initiate_txn_height,])
|
initiate_tx_block_hash = self.callcoinrpc(coin_from, 'getblockhash', [bid.initiate_txn_height, ])
|
||||||
initiate_tx_block_time = int(self.callcoinrpc(coin_from, 'getblock', [initiate_tx_block_hash,])['time'])
|
initiate_tx_block_time = int(self.callcoinrpc(coin_from, 'getblock', [initiate_tx_block_hash, ])['time'])
|
||||||
if offer.lock_type == ABS_LOCK_BLOCKS:
|
if offer.lock_type == ABS_LOCK_BLOCKS:
|
||||||
# Walk the coin_to chain back until block time matches
|
# Walk the coin_to chain back until block time matches
|
||||||
blockchaininfo = self.callcoinrpc(coin_to, 'getblockchaininfo')
|
blockchaininfo = self.callcoinrpc(coin_to, 'getblockchaininfo')
|
||||||
|
@ -1316,7 +1316,7 @@ class BasicSwap():
|
||||||
max_tries = 1000
|
max_tries = 1000
|
||||||
for i in range(max_tries):
|
for i in range(max_tries):
|
||||||
self.log.debug('wtf %d', i)
|
self.log.debug('wtf %d', i)
|
||||||
prev_block = self.callcoinrpc(coin_to, 'getblock', [cblock_hash,])
|
prev_block = self.callcoinrpc(coin_to, 'getblock', [cblock_hash, ])
|
||||||
self.log.debug('prev_block %s', str(prev_block))
|
self.log.debug('prev_block %s', str(prev_block))
|
||||||
|
|
||||||
if prev_block['time'] <= initiate_tx_block_time:
|
if prev_block['time'] <= initiate_tx_block_time:
|
||||||
|
|
|
@ -29,6 +29,8 @@ from .basicswap import (
|
||||||
getBidState,
|
getBidState,
|
||||||
getTxState,
|
getTxState,
|
||||||
getLockName,
|
getLockName,
|
||||||
|
SEQUENCE_LOCK_TIME,
|
||||||
|
ABS_LOCK_TIME,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -235,11 +235,13 @@ def printHelp():
|
||||||
logger.info('--mainnet Run in mainnet mode.')
|
logger.info('--mainnet Run in mainnet mode.')
|
||||||
logger.info('--testnet Run in testnet mode.')
|
logger.info('--testnet Run in testnet mode.')
|
||||||
logger.info('--regtest Run in regtest mode.')
|
logger.info('--regtest Run in regtest mode.')
|
||||||
logger.info('--particl_mnemonic= Recovery phrase to use for the Particl wallet, default is randomly generated,\n'
|
logger.info('--particl_mnemonic= Recovery phrase to use for the Particl wallet, default is randomly generated,\n' +
|
||||||
+ ' "none" to set autogenerate account mode.')
|
' "none" to set autogenerate account mode.')
|
||||||
logger.info('--withcoin= Prepare system to run daemon for coin.')
|
logger.info('--withcoin= Prepare system to run daemon for coin.')
|
||||||
logger.info('--withoutcoin= Do not prepare system to run daemon for coin.')
|
logger.info('--withoutcoin= Do not prepare system to run daemon for coin.')
|
||||||
logger.info('--addcoin= Add coin to existing setup.')
|
logger.info('--addcoin= Add coin to existing setup.')
|
||||||
|
logger.info('--preparebinonly Don\'t prepare settings or datadirs.')
|
||||||
|
|
||||||
logger.info('\n' + 'Known coins: %s', ', '.join(known_coins.keys()))
|
logger.info('\n' + 'Known coins: %s', ', '.join(known_coins.keys()))
|
||||||
|
|
||||||
|
|
||||||
|
@ -276,6 +278,7 @@ def main():
|
||||||
data_dir = None
|
data_dir = None
|
||||||
chain = 'mainnet'
|
chain = 'mainnet'
|
||||||
particl_wallet_mnemonic = None
|
particl_wallet_mnemonic = None
|
||||||
|
prepare_bin_only = False
|
||||||
with_coins = {'particl', 'litecoin'}
|
with_coins = {'particl', 'litecoin'}
|
||||||
add_coin = ''
|
add_coin = ''
|
||||||
|
|
||||||
|
@ -304,6 +307,9 @@ def main():
|
||||||
if name == 'regtest':
|
if name == 'regtest':
|
||||||
chain = 'regtest'
|
chain = 'regtest'
|
||||||
continue
|
continue
|
||||||
|
if name == 'preparebinonly':
|
||||||
|
prepare_bin_only = True
|
||||||
|
continue
|
||||||
|
|
||||||
if len(s) == 2:
|
if len(s) == 2:
|
||||||
if name == 'datadir':
|
if name == 'datadir':
|
||||||
|
@ -424,12 +430,19 @@ def main():
|
||||||
continue
|
continue
|
||||||
coin = c
|
coin = c
|
||||||
prepareCore(coin, v, settings, data_dir)
|
prepareCore(coin, v, settings, data_dir)
|
||||||
|
|
||||||
|
if prepare_bin_only:
|
||||||
|
logger.info('Done.')
|
||||||
|
return 0
|
||||||
|
|
||||||
|
for c, v in known_coins.items():
|
||||||
|
if c not in with_coins:
|
||||||
|
continue
|
||||||
prepareDataDir(coin, settings, data_dir, chain, particl_wallet_mnemonic)
|
prepareDataDir(coin, settings, data_dir, chain, particl_wallet_mnemonic)
|
||||||
|
|
||||||
with open(config_path, 'w') as fp:
|
with open(config_path, 'w') as fp:
|
||||||
json.dump(settings, fp, indent=4)
|
json.dump(settings, fp, indent=4)
|
||||||
|
|
||||||
|
|
||||||
if particl_wallet_mnemonic == 'none':
|
if particl_wallet_mnemonic == 'none':
|
||||||
logger.info('Done.')
|
logger.info('Done.')
|
||||||
return 0
|
return 0
|
||||||
|
|
Loading…
Reference in a new issue