fix: node installer refuses a non-empty server before touching it and reports active only after xray stays up

The install script now checks for a foreign proxy (xray directory, docker marzban/xray) and busy ports
before adding the management key or writing anything, and tells the panel the node is active only after
xray has stayed up with its port listening for three checks in a row.
This commit is contained in:
Savsis? 2026-10-04 04:48:39 +05:00
parent 4791c5ca2b
commit 6372d649da
2 changed files with 39 additions and 2 deletions

View file

@ -61,6 +61,9 @@ jobs:
}
script = nodeprov.render_install_script(node)
assert "PRIVKEY" in script
assert "PREFLIGHT_FAIL" in script and "443 2053 2087" in script, "node install must refuse a non-empty server before touching it"
assert script.index("PREFLIGHT_FAIL") < script.index("authorized_keys"), "preflight must run before the management key is added"
assert "OK=$((OK+1))" in script and "STATUS=failed" in script, "node must report active only after xray stays up"
assert len(script) > 500
print("node install script rendered OK,", len(script), "bytes")
PYEOF