WIP: debug DNS test

This commit is contained in:
Anton Tolchanov 2025-04-10 14:07:52 +00:00
parent 5c562116fc
commit 5de8f42c9c
2 changed files with 11 additions and 5 deletions

View File

@ -39,7 +39,7 @@ concurrency:
jobs: jobs:
race-root-integration: race-root-integration:
runs-on: ubuntu-22.04 runs-on: ubuntu-24.04
strategy: strategy:
fail-fast: false # don't abort the entire matrix if one element fails fail-fast: false # don't abort the entire matrix if one element fails
matrix: matrix:
@ -54,7 +54,7 @@ jobs:
- name: build test wrapper - name: build test wrapper
run: ./tool/go build -o /tmp/testwrapper ./cmd/testwrapper run: ./tool/go build -o /tmp/testwrapper ./cmd/testwrapper
- name: integration tests as root - name: integration tests as root
run: PATH=$PWD/tool:$PATH /tmp/testwrapper -exec "sudo -E" -race ./tstest/integration/ run: PATH=$PWD/tool:$PATH /tmp/testwrapper -exec "sudo -E" -race ./tstest/integration/ -verbose-tailscaled -verbose-tailscale
env: env:
TS_TEST_SHARD: ${{ matrix.shard }} TS_TEST_SHARD: ${{ matrix.shard }}
@ -561,7 +561,7 @@ jobs:
notify_slack: notify_slack:
if: always() if: always()
# Any of these jobs failing causes a slack notification. # Any of these jobs failing causes a slack notification.
needs: needs:
- android - android
- test - test
- windows - windows
@ -578,7 +578,7 @@ jobs:
- staticcheck - staticcheck
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
steps: steps:
- name: notify - name: notify
# Only notify slack for merged commits, not PR failures. # Only notify slack for merged commits, not PR failures.
# #
# It may be tempting to move this condition into the job's 'if' block, but # It may be tempting to move this condition into the job's 'if' block, but
@ -595,7 +595,7 @@ jobs:
{ {
"attachments": [{ "attachments": [{
"title": "Failure: ${{ github.workflow }}", "title": "Failure: ${{ github.workflow }}",
"title_link": "https://github.com/${{ github.repository }}/commit/${{ github.sha }}/checks", "title_link": "https://github.com/${{ github.repository }}/commit/${{ github.sha }}/checks",
"text": "${{ github.repository }}@${{ github.ref_name }}: <https://github.com/${{ github.repository }}/commit/${{ github.sha }}|${{ github.sha }}>", "text": "${{ github.repository }}@${{ github.ref_name }}: <https://github.com/${{ github.repository }}/commit/${{ github.sha }}|${{ github.sha }}>",
"fields": [{ "value": ${{ toJson(github.event.head_commit.message) }}, "short": false }], "fields": [{ "value": ${{ toJson(github.event.head_commit.message) }}, "short": false }],
"footer": "${{ github.event.head_commit.committer.name }} at ${{ github.event.head_commit.timestamp }}", "footer": "${{ github.event.head_commit.committer.name }} at ${{ github.event.head_commit.timestamp }}",

View File

@ -1153,6 +1153,11 @@ func TestDNSOverTCPIntervalResolver(t *testing.T) {
t.Fatalf("error converting self dns name to fqdn: %v", err) t.Fatalf("error converting self dns name to fqdn: %v", err)
} }
out, err := n1.Tailscale("status").Output()
t.Logf("XXX: %s\n%s", err, string(out))
out, err = n1.Tailscale("dns", "status").Output()
t.Logf("XXX: %s\n%s", err, string(out))
cases := []struct { cases := []struct {
network string network string
serviceAddr netip.Addr serviceAddr netip.Addr
@ -1170,6 +1175,7 @@ func TestDNSOverTCPIntervalResolver(t *testing.T) {
err = tstest.WaitFor(time.Second*5, func() error { err = tstest.WaitFor(time.Second*5, func() error {
m := new(dns.Msg) m := new(dns.Msg)
m.SetQuestion(selfDNSName.WithTrailingDot(), dns.TypeA) m.SetQuestion(selfDNSName.WithTrailingDot(), dns.TypeA)
t.Logf("XXX: dig %s @%s", selfDNSName.WithTrailingDot(), c.serviceAddr.String())
conn, err := net.DialTimeout(c.network, net.JoinHostPort(c.serviceAddr.String(), "53"), time.Second*1) conn, err := net.DialTimeout(c.network, net.JoinHostPort(c.serviceAddr.String(), "53"), time.Second*1)
if err != nil { if err != nil {
return err return err