1
0
mirror of https://github.com/rancher/rke.git synced 2025-06-21 13:07:08 +00:00

Set timeouts for docker dialer

This commit is contained in:
galal-hussein 2018-03-27 23:07:16 +02:00
parent 28f216e0e6
commit c307bca304

View File

@ -4,10 +4,15 @@ import (
"fmt" "fmt"
"net" "net"
"net/http" "net/http"
"time"
"golang.org/x/crypto/ssh" "golang.org/x/crypto/ssh"
) )
const (
DockerDialerTimeout = 30
)
type DialerFactory func(h *Host) (func(network, address string) (net.Conn, error), error) type DialerFactory func(h *Host) (func(network, address string) (net.Conn, error), error)
type dialer struct { type dialer struct {
@ -105,9 +110,13 @@ func (h *Host) newHTTPClient(dialerFactory DialerFactory) (*http.Client, error)
if err != nil { if err != nil {
return nil, err return nil, err
} }
dockerDialerTimeout := time.Second * DockerDialerTimeout
return &http.Client{ return &http.Client{
Transport: &http.Transport{ Transport: &http.Transport{
Dial: dialer, Dial: dialer,
TLSHandshakeTimeout: dockerDialerTimeout,
IdleConnTimeout: dockerDialerTimeout,
ResponseHeaderTimeout: dockerDialerTimeout,
}, },
}, nil }, nil
} }