feat: add gateway setup wizard and fix test suite

New zt-gateway-setup script with subcommands for configuring this
router as a ZeroTier exit gateway: bridge, routing (tables 100/101),
DHCP, hotplug, and persistence. Exposes setup ubus method via backend
with ACL and LuCI panel in overview.

Also fixes two pre-existing test issues:
- overview.spec.ts: active gateway radio is intentionally enabled
  (users need to re-trigger switch for the already-selected gateway)
- drain.spec.ts: stubs drain status via page.route() since Docker
  has no real conntrack entries; fixed Playwright glob pattern bug
  where **/ubus* fails to match /ubus/?timestamp (regex needed)
This commit is contained in:
2026-07-13 08:48:53 +05:30
parent fbbddd2850
commit cd429291ef
9 changed files with 728 additions and 23 deletions

View File

@@ -4,7 +4,7 @@
"read": {
"uci": ["zt-gateway", "network"],
"ubus": {
"zt-gateway": ["status", "health", "drain_status"]
"zt-gateway": ["status", "health", "drain_status", "setup"]
},
"file": {
"/etc/hotplug.d/net/99-zerotier-bridge": ["read"],
@@ -14,7 +14,7 @@
"write": {
"uci": ["zt-gateway", "network"],
"ubus": {
"zt-gateway": ["switch", "cancel_drain"]
"zt-gateway": ["switch", "cancel_drain", "setup"]
},
"file": {
"/etc/hotplug.d/net/99-zerotier-bridge": ["write"],