From d0874f9a2d6475d81e50f6809aca6a05c4dced88 Mon Sep 17 00:00:00 2001 From: The MMGen Project Date: Tue, 21 Nov 2023 15:30:42 +0000 Subject: [PATCH] test/init.sh: handle broken dir symlinks --- mmgen_node_tools/data/version | 2 +- test/cmdtest_py_d/cfg.py | 5 +++-- test/init.sh | 12 +++++++++--- 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/mmgen_node_tools/data/version b/mmgen_node_tools/data/version index 2c19032..21ca9e7 100644 --- a/mmgen_node_tools/data/version +++ b/mmgen_node_tools/data/version @@ -1 +1 @@ -3.2.dev7 +3.2.dev8 diff --git a/test/cmdtest_py_d/cfg.py b/test/cmdtest_py_d/cfg.py index 5aacbf9..96bfe9f 100755 --- a/test/cmdtest_py_d/cfg.py +++ b/test/cmdtest_py_d/cfg.py @@ -12,7 +12,7 @@ test.cmdtest_py_d.cfg: configuration data for cmdtest.py """ -import os +cmd_groups_altcoin = [] cmd_groups_dfl = { 'main': ('CmdTestMain',{}), @@ -29,4 +29,5 @@ cfgs = { '3': {}, # main } -def fixup_cfgs(): pass +def fixup_cfgs(): + pass diff --git a/test/init.sh b/test/init.sh index 769490a..81727bb 100755 --- a/test/init.sh +++ b/test/init.sh @@ -47,9 +47,15 @@ build_mmgen_extmod() { create_dir_links() { for link_name in 'mmgen' 'scripts'; do target="$wallet_repo/$link_name" - if [ -e $link_name ]; then - [ $(realpath --relative-to=. $link_name) == $target ] || die "'$link_name' does not point to '$target'" - else + if [ -L $link_name ]; then + [ "$(realpath --relative-to=. $link_name 2>/dev/null)" == $target ] || { + echo "Removing broken symlink '$link_name'" + rm $link_name + } + elif [ -e $link_name ]; then + die "'$link_name' is not a symbolic link. Please remove or relocate it and re-run this script" + fi + if [ ! -e $link_name ]; then echo "Creating symlink: $link_name" ln -s $target fi