mirror of
https://github.com/LBRYFoundation/LBRY-Vault.git
synced 2025-08-23 17:47:31 +00:00
parent
6f333bd86d
commit
10e186c1d3
2 changed files with 11 additions and 32 deletions
|
@ -159,6 +159,7 @@ fi
|
||||||
if [[ $1 == "redeem_htlcs" ]]; then
|
if [[ $1 == "redeem_htlcs" ]]; then
|
||||||
$bob stop
|
$bob stop
|
||||||
ELECTRUM_DEBUG_LIGHTNING_SETTLE_DELAY=10 $bob daemon start
|
ELECTRUM_DEBUG_LIGHTNING_SETTLE_DELAY=10 $bob daemon start
|
||||||
|
sleep 1
|
||||||
$bob load_wallet
|
$bob load_wallet
|
||||||
sleep 1
|
sleep 1
|
||||||
# alice opens channel
|
# alice opens channel
|
||||||
|
@ -204,6 +205,7 @@ fi
|
||||||
if [[ $1 == "breach_with_unspent_htlc" ]]; then
|
if [[ $1 == "breach_with_unspent_htlc" ]]; then
|
||||||
$bob stop
|
$bob stop
|
||||||
ELECTRUM_DEBUG_LIGHTNING_SETTLE_DELAY=3 $bob daemon start
|
ELECTRUM_DEBUG_LIGHTNING_SETTLE_DELAY=3 $bob daemon start
|
||||||
|
sleep 1
|
||||||
$bob load_wallet
|
$bob load_wallet
|
||||||
wait_for_balance alice 1
|
wait_for_balance alice 1
|
||||||
echo "alice opens channel"
|
echo "alice opens channel"
|
||||||
|
@ -235,6 +237,7 @@ fi
|
||||||
if [[ $1 == "breach_with_spent_htlc" ]]; then
|
if [[ $1 == "breach_with_spent_htlc" ]]; then
|
||||||
$bob stop
|
$bob stop
|
||||||
ELECTRUM_DEBUG_LIGHTNING_SETTLE_DELAY=3 $bob daemon start
|
ELECTRUM_DEBUG_LIGHTNING_SETTLE_DELAY=3 $bob daemon start
|
||||||
|
sleep 1
|
||||||
$bob load_wallet
|
$bob load_wallet
|
||||||
wait_for_balance alice 1
|
wait_for_balance alice 1
|
||||||
echo "alice opens channel"
|
echo "alice opens channel"
|
||||||
|
@ -275,6 +278,7 @@ if [[ $1 == "breach_with_spent_htlc" ]]; then
|
||||||
$alice stop
|
$alice stop
|
||||||
cp /tmp/alice/regtest/wallets/toxic_wallet /tmp/alice/regtest/wallets/default_wallet
|
cp /tmp/alice/regtest/wallets/toxic_wallet /tmp/alice/regtest/wallets/default_wallet
|
||||||
$alice daemon start
|
$alice daemon start
|
||||||
|
sleep 1
|
||||||
$alice load_wallet
|
$alice load_wallet
|
||||||
# wait until alice has spent both ctx outputs
|
# wait until alice has spent both ctx outputs
|
||||||
echo "alice spends to_local and htlc outputs"
|
echo "alice spends to_local and htlc outputs"
|
||||||
|
@ -283,6 +287,7 @@ if [[ $1 == "breach_with_spent_htlc" ]]; then
|
||||||
new_blocks 1
|
new_blocks 1
|
||||||
echo "bob comes back"
|
echo "bob comes back"
|
||||||
$bob daemon start
|
$bob daemon start
|
||||||
|
sleep 1
|
||||||
$bob load_wallet
|
$bob load_wallet
|
||||||
wait_for_balance bob 0.049
|
wait_for_balance bob 0.049
|
||||||
$bob getbalance
|
$bob getbalance
|
||||||
|
@ -297,6 +302,7 @@ if [[ $1 == "watchtower" ]]; then
|
||||||
$carol setconfig watchtower_port 12345
|
$carol setconfig watchtower_port 12345
|
||||||
$carol daemon start
|
$carol daemon start
|
||||||
$alice daemon start
|
$alice daemon start
|
||||||
|
sleep 1
|
||||||
$alice load_wallet
|
$alice load_wallet
|
||||||
wait_for_balance alice 1
|
wait_for_balance alice 1
|
||||||
echo "alice opens channel"
|
echo "alice opens channel"
|
||||||
|
|
37
run_electrum
37
run_electrum
|
@ -24,7 +24,6 @@
|
||||||
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
# SOFTWARE.
|
# SOFTWARE.
|
||||||
import os
|
import os
|
||||||
import time
|
|
||||||
import sys
|
import sys
|
||||||
import warnings
|
import warnings
|
||||||
import asyncio
|
import asyncio
|
||||||
|
@ -274,16 +273,6 @@ def sys_exit(i):
|
||||||
loop_thread.join(timeout=1)
|
loop_thread.join(timeout=1)
|
||||||
sys.exit(i)
|
sys.exit(i)
|
||||||
|
|
||||||
def can_ping_daemon(config):
|
|
||||||
try:
|
|
||||||
daemon.request(config, 'ping')
|
|
||||||
return True
|
|
||||||
except daemon.DaemonNotRunning:
|
|
||||||
return False
|
|
||||||
except BaseException as e:
|
|
||||||
print_stderr(e)
|
|
||||||
return False
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
# The hook will only be used in the Qt GUI right now
|
# The hook will only be used in the Qt GUI right now
|
||||||
util.setup_thread_excepthook()
|
util.setup_thread_excepthook()
|
||||||
|
@ -359,8 +348,6 @@ if __name__ == '__main__':
|
||||||
|
|
||||||
# todo: defer this to gui
|
# todo: defer this to gui
|
||||||
config = SimpleConfig(config_options)
|
config = SimpleConfig(config_options)
|
||||||
# this sets rpc_password as side effect
|
|
||||||
daemon.get_rpc_credentials(config)
|
|
||||||
|
|
||||||
cmdname = config.get('cmd')
|
cmdname = config.get('cmd')
|
||||||
subcommand = config.get('subcommand')
|
subcommand = config.get('subcommand')
|
||||||
|
@ -374,28 +361,12 @@ if __name__ == '__main__':
|
||||||
elif config.get('lightning') and not config.get('reckless'):
|
elif config.get('lightning') and not config.get('reckless'):
|
||||||
raise Exception('lightning branch not available on mainnet')
|
raise Exception('lightning branch not available on mainnet')
|
||||||
|
|
||||||
loop, stop_loop, loop_thread = create_and_start_event_loop()
|
|
||||||
|
|
||||||
if cmdname == 'daemon' and subcommand == 'start':
|
if cmdname == 'daemon' and subcommand == 'start':
|
||||||
if can_ping_daemon(config):
|
# fork before creating the asyncio event loop
|
||||||
print_stderr('daemon already running')
|
|
||||||
sys_exit(1)
|
|
||||||
loop.call_soon_threadsafe(stop_loop.set_result, 1)
|
|
||||||
loop_thread.join(timeout=1)
|
|
||||||
# we must fork before creating the asyncio event loop,
|
|
||||||
# see https://bugs.python.org/issue21998
|
|
||||||
pid = os.fork()
|
pid = os.fork()
|
||||||
loop, stop_loop, loop_thread = create_and_start_event_loop()
|
|
||||||
if pid:
|
if pid:
|
||||||
for i in range(10):
|
print_stderr("starting daemon (PID %d)" % pid)
|
||||||
if can_ping_daemon(config):
|
sys.exit(0)
|
||||||
break
|
|
||||||
time.sleep(0.5)
|
|
||||||
else:
|
|
||||||
print_stderr("Could not contact daemon, giving up")
|
|
||||||
sys_exit(1)
|
|
||||||
print_stderr("Daemon started (PID %d)" % pid)
|
|
||||||
sys_exit(0)
|
|
||||||
else:
|
else:
|
||||||
# redirect standard file descriptors
|
# redirect standard file descriptors
|
||||||
sys.stdout.flush()
|
sys.stdout.flush()
|
||||||
|
@ -407,6 +378,8 @@ if __name__ == '__main__':
|
||||||
os.dup2(so.fileno(), sys.stdout.fileno())
|
os.dup2(so.fileno(), sys.stdout.fileno())
|
||||||
os.dup2(se.fileno(), sys.stderr.fileno())
|
os.dup2(se.fileno(), sys.stderr.fileno())
|
||||||
|
|
||||||
|
loop, stop_loop, loop_thread = create_and_start_event_loop()
|
||||||
|
|
||||||
if cmdname == 'gui':
|
if cmdname == 'gui':
|
||||||
configure_logging(config)
|
configure_logging(config)
|
||||||
fd = daemon.get_file_descriptor(config)
|
fd = daemon.get_file_descriptor(config)
|
||||||
|
|
Loading…
Add table
Reference in a new issue