mirror of
https://github.com/coder/coder.git
synced 2026-06-02 20:48:20 +00:00
8c09df52f9
Fixes coder/internal#642 We recently fixed Windows specific flakes for this test and reenabled it. It then failed intermittently due to context deadline expiration. The temporary path created on Windows contained invalid characters. This resulted in a silent startup script failure on Windows. The test then fruitlessly waited until context expiration. The test now uses a valid path on Windows.
25 lines
1.4 KiB
Go
25 lines
1.4 KiB
Go
package testutil
|
|
|
|
import "go.uber.org/goleak"
|
|
|
|
// GoleakOptions is a common list of options to pass to goleak. This is useful if there is a known
|
|
// leaky function we want to exclude from goleak.
|
|
var GoleakOptions []goleak.Option = []goleak.Option{
|
|
// Go spawns a goroutine to lookup the protocol when run on
|
|
// windows. See https://go.dev/src/net/lookup_windows.go#L56
|
|
goleak.IgnoreAnyFunction("net.lookupProtocol.func1"),
|
|
// seelog (indirect dependency of dd-trace-go) has a known goroutine leak (https://github.com/cihub/seelog/issues/182)
|
|
// When https://github.com/DataDog/dd-trace-go/issues/2987 is resolved, this can be removed.
|
|
goleak.IgnoreAnyFunction("github.com/cihub/seelog.(*asyncLoopLogger).processQueue"),
|
|
// The lumberjack library is used by by agent and seems to leave
|
|
// goroutines after Close(), fails TestGitSSH tests.
|
|
// https://github.com/natefinch/lumberjack/pull/100
|
|
goleak.IgnoreTopFunction("gopkg.in/natefinch/lumberjack%2ev2.(*Logger).millRun"),
|
|
goleak.IgnoreTopFunction("gopkg.in/natefinch/lumberjack%2ev2.(*Logger).mill.func1"),
|
|
// The pq library appears to leave around a goroutine after Close().
|
|
goleak.IgnoreTopFunction("github.com/lib/pq.NewDialListener"),
|
|
// The go-winio library starts a process-level I/O completion port
|
|
// goroutine via sync.Once that is never terminated.
|
|
goleak.IgnoreAnyFunction("github.com/Microsoft/go-winio.ioCompletionProcessor"),
|
|
}
|