Commit ccbf0f4
Stop the first-boot test hanging when ICMP is filtered
The connectivity check was ping-only, so any network that filters ICMP failed
it. error_exit then blocks on `read` forever, .firstboot is never removed, and
the machine sits on "Check installation source. Press enter to continue".
That is not just CI: corporate, hotel and cloud networks filter ICMP too, and a
real DAppNode behind one dies the same way on its first boot. GitHub runners hit
it because Azure drops ICMP egress -- the ping_group_range sysctl in the e2e
workflows lets QEMU open the socket but cannot make the echo come back.
Fall back to an HTTPS probe, then to a bare TCP connect for the case where
neither curl nor wget is installed yet.
Verified on a local QEMU UEFI USB install of the Ubuntu 24.04.3 unattended ISO
with `iptables -A OUTPUT -p icmp --icmp-type echo-request -j DROP` applied in
the guest before the test ran: ping fails, the check passes, and the run
completes instead of stalling for the full 30 minute timeout.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>1 parent 9fbd7d4 commit ccbf0f4
1 file changed
Lines changed: 25 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
25 | 49 | | |
26 | 50 | | |
27 | | - | |
| 51 | + | |
28 | 52 | | |
29 | 53 | | |
30 | 54 | | |
| |||
0 commit comments