fix: use public DNS on phone-hotspot (carrier resolver fails .dev tunnel)

- yaris_uplink configure() keyfile: dns=8.8.8.8;1.1.1.1 + ignore-auto-dns=true
  so the Pi doesn't rely on the phone's DHCP DNS, which failed to resolve
  yaris.ceaf.dev (NameResolutionError) and broke uploads on the hotspot
- test asserts the DNS lines are written to the keyfile
This commit is contained in:
Mathieu Moran
2026-08-12 21:14:46 -04:00
parent 81c7ee25fd
commit 26597888ba
2 changed files with 7 additions and 0 deletions
+5
View File
@@ -379,6 +379,11 @@ method=auto
dhcp-send-hostname=true dhcp-send-hostname=true
dhcp-hostname=yaris dhcp-hostname=yaris
dhcp-client-id=yaris-obd dhcp-client-id=yaris-obd
# Use public DNS instead of the phone's DHCP-provided resolver — some
# carrier/hotspot resolvers fail to resolve the server hostname (e.g. the
# .dev Cloudflare tunnel), which broke uploads on the phone hotspot.
dns=8.8.8.8;1.1.1.1;
ignore-auto-dns=true
[ipv6] [ipv6]
method=auto method=auto
+2
View File
@@ -58,6 +58,8 @@ class UplinkCredentialTest(unittest.TestCase):
self.assertEqual(mode, 0o600) self.assertEqual(mode, 0o600)
self.assertIn("ssid=My Phone", keyfile) self.assertIn("ssid=My Phone", keyfile)
self.assertIn("psk=private-password", keyfile) self.assertIn("psk=private-password", keyfile)
self.assertIn("dns=8.8.8.8;1.1.1.1;", keyfile)
self.assertIn("ignore-auto-dns=true", keyfile)
for call in run_nmcli.call_args_list: for call in run_nmcli.call_args_list:
self.assertNotIn("private-password", call.args) self.assertNotIn("private-password", call.args)