Skip to content

Commit 75fcf6b

Browse files
mydeaclaude
andcommitted
fix(ci): Enable IPv6 in Playwright containers for loopback networking
Docker containers don't have IPv6 enabled on the loopback interface by default. Node.js fetch resolves localhost to ::1 (IPv6) first, which fails when IPv6 is disabled. This breaks E2E tests that do server-side self-referencing fetch (e.g., Astro SSR fetching its own API endpoints). Enable IPv6 via --sysctl net.ipv6.conf.all.disable_ipv6=0 on all container jobs. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 213b16a commit 75fcf6b

File tree

3 files changed

+7
-7
lines changed

3 files changed

+7
-7
lines changed

.github/workflows/build.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -500,7 +500,7 @@ jobs:
500500
credentials:
501501
username: ${{ github.actor }}
502502
password: ${{ secrets.GITHUB_TOKEN }}
503-
options: --ipc=host --user root
503+
options: --ipc=host --user root --sysctl net.ipv6.conf.all.disable_ipv6=0
504504
timeout-minutes: 25
505505
strategy:
506506
fail-fast: false
@@ -606,7 +606,7 @@ jobs:
606606
credentials:
607607
username: ${{ github.actor }}
608608
password: ${{ secrets.GITHUB_TOKEN }}
609-
options: --ipc=host --user root
609+
options: --ipc=host --user root --sysctl net.ipv6.conf.all.disable_ipv6=0
610610
timeout-minutes: 15
611611
strategy:
612612
fail-fast: false
@@ -826,7 +826,7 @@ jobs:
826826
credentials:
827827
username: ${{ github.actor }}
828828
password: ${{ secrets.GITHUB_TOKEN }}
829-
options: --ipc=host --user root
829+
options: --ipc=host --user root --sysctl net.ipv6.conf.all.disable_ipv6=0
830830
timeout-minutes: 15
831831
strategy:
832832
fail-fast: false
@@ -930,7 +930,7 @@ jobs:
930930
credentials:
931931
username: ${{ github.actor }}
932932
password: ${{ secrets.GITHUB_TOKEN }}
933-
options: --ipc=host --user root
933+
options: --ipc=host --user root --sysctl net.ipv6.conf.all.disable_ipv6=0
934934
timeout-minutes: 15
935935
env:
936936
# We just use a dummy DSN here, only send to the tunnel anyhow
@@ -1055,7 +1055,7 @@ jobs:
10551055
credentials:
10561056
username: ${{ github.actor }}
10571057
password: ${{ secrets.GITHUB_TOKEN }}
1058-
options: --ipc=host --user root
1058+
options: --ipc=host --user root --sysctl net.ipv6.conf.all.disable_ipv6=0
10591059
timeout-minutes: 15
10601060
env:
10611061
E2E_TEST_AUTH_TOKEN: ${{ secrets.E2E_TEST_AUTH_TOKEN }}

.github/workflows/canary.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ jobs:
7777
credentials:
7878
username: ${{ github.actor }}
7979
password: ${{ secrets.GITHUB_TOKEN }}
80-
options: --ipc=host --user root
80+
options: --ipc=host --user root --sysctl net.ipv6.conf.all.disable_ipv6=0
8181
timeout-minutes: 20
8282
env:
8383
# We just use a dummy DSN here, only send to the tunnel anyhow

.github/workflows/flaky-test-detector.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ jobs:
4545
credentials:
4646
username: ${{ github.actor }}
4747
password: ${{ secrets.GITHUB_TOKEN }}
48-
options: --ipc=host --user root
48+
options: --ipc=host --user root --sysctl net.ipv6.conf.all.disable_ipv6=0
4949
timeout-minutes: 60
5050
name: 'Check tests for flakiness'
5151
# Also skip if PR is from master -> develop

0 commit comments

Comments
 (0)