thepudds / fzgen

Auto-gen Go fuzzing wrappers from normal code. Finds buggy call sequences, including data races & deadlocks. Supports rich signature types.
Apache License 2.0
105 stars 5 forks source link

running the tailscale test script fails #20

Closed jasikpark closed 10 months ago

jasikpark commented 2 years ago
        fzgen: created wgengine/filter/autofuzz_test.go
        fzgen: created wgengine/magicsock/autofuzz_test.go
        fzgen: created wgengine/monitor/autofuzz_test.go
        fzgen: created wgengine/netstack/autofuzz_test.go
        fzgen: created wgengine/router/autofuzz_test.go
        fzgen: created wgengine/wgcfg/autofuzz_test.go
        fzgen: skipping tailscale.com/wgengine/wgcfg/nmcfg: unsupported parameters: WGCfg takes tailscale.com/types/logger.Logf
        fzgen: created wgengine/wglog/autofuzz_test.go
        fzgen: skipping tailscale.com/words: no fuzzable functions found: Scales has 0 input params
        fzgen: created 91 files
        > stdout 'fzgen: created 91 files'
        > exec gotip test -exec=true ./...
        [stderr]
        package tailscale.com/cmd/tailscaled
                imports tailscale.com/ipn/ipnserver
                imports tailscale.com/ipn/ipnlocal
                imports tailscale.com/wgengine
                imports tailscale.com/net/tstun
                imports inet.af/netstack/tcpip
                imports inet.af/netstack/atomicbitops
                imports inet.af/netstack/state
                imports inet.af/netstack/state/wire
                imports inet.af/netstack/gohacks: build constraints exclude all Go files in $WORK/gopath/pkg/mod/inet.af/netstack@v0.0.0-20211120045802-8aa80cf23d3c/gohacks
        [exit status 1]
        FAIL: testscripts/external_tailscale.txt:27: unexpected command failure

--- FAIL: TestScripts (0.05s)
    --- FAIL: TestScripts/external_tailscale (88.29s)
FAIL

presumably this is just a fail b/c tailscale has changed in the meantime perhaps?

thepudds commented 1 year ago

Hi @jasikpark, thanks for filing this!

presumably this is just a fail b/c tailscale has changed in the meantime perhaps?

At least the intent was to pin the tailscale version, so it might instead be that the pinned tailscale version does not like Go 1.19:

https://github.com/inetaf/netstack/blob/8aa80cf23d3cced44d45a31a5d8b841fae949dcf/gohacks/gohacks_unsafe.go#L15-L16

//go:build go1.13 && !go1.19
// +build go1.13,!go1.19

I'll take a closer look.... Thanks again!

thepudds commented 1 year ago

One other quick side note is the way the CI is set up, the external repo tests are allowed to fail, including to deal with possibly changes like this over time, but I'll look into getting those healthy again.

thepudds commented 10 months ago

I ended up disabling the larger test of the tailscale repo in #23. (It ended up effectively being a moving target due to their use of build constraints making it sensitive to changes in Go versions and so on).

We still test the terraform repo, and the most of the more interesting or initially problematic examples from the tailscale repo were extracted into standalone tests.