HttpClient: Refactor timeout into two seperate functions
This commit is contained in:
@@ -32,7 +32,7 @@ const (
|
||||
type metadataService struct{}
|
||||
|
||||
type getter interface {
|
||||
Get(string) ([]byte, error)
|
||||
GetRetry(string) ([]byte, error)
|
||||
}
|
||||
|
||||
func NewMetadataService() *metadataService {
|
||||
@@ -49,12 +49,12 @@ func (ms *metadataService) FetchMetadata() ([]byte, error) {
|
||||
|
||||
func (ms *metadataService) FetchUserdata() ([]byte, error) {
|
||||
client := pkg.NewHttpClient()
|
||||
if data, err := client.Get(Ec2UserdataUrl); err == nil {
|
||||
if data, err := client.GetRetry(Ec2UserdataUrl); err == nil {
|
||||
return data, err
|
||||
} else if _, ok := err.(pkg.ErrTimeout); ok {
|
||||
return data, err
|
||||
}
|
||||
return client.Get(OpenstackUserdataUrl)
|
||||
return client.GetRetry(OpenstackUserdataUrl)
|
||||
}
|
||||
|
||||
func (ms *metadataService) Type() string {
|
||||
@@ -62,7 +62,7 @@ func (ms *metadataService) Type() string {
|
||||
}
|
||||
|
||||
func fetchMetadata(client getter) ([]byte, error) {
|
||||
if metadata, err := client.Get(OpenstackMetadataUrl); err == nil {
|
||||
if metadata, err := client.GetRetry(OpenstackMetadataUrl); err == nil {
|
||||
return metadata, nil
|
||||
} else if _, ok := err.(pkg.ErrTimeout); ok {
|
||||
return nil, err
|
||||
@@ -76,7 +76,7 @@ func fetchMetadata(client getter) ([]byte, error) {
|
||||
}
|
||||
|
||||
func fetchAttributes(client getter, url string) ([]string, error) {
|
||||
resp, err := client.Get(url)
|
||||
resp, err := client.GetRetry(url)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@@ -14,7 +14,7 @@ type TestHttpClient struct {
|
||||
err error
|
||||
}
|
||||
|
||||
func (t *TestHttpClient) Get(url string) ([]byte, error) {
|
||||
func (t *TestHttpClient) GetRetry(url string) ([]byte, error) {
|
||||
if t.err != nil {
|
||||
return nil, t.err
|
||||
}
|
||||
|
@@ -43,7 +43,7 @@ func (c *procCmdline) FetchUserdata() ([]byte, error) {
|
||||
}
|
||||
|
||||
client := pkg.NewHttpClient()
|
||||
cfg, err := client.Get(url)
|
||||
cfg, err := client.GetRetry(url)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@@ -20,7 +20,7 @@ func (f *remoteFile) FetchMetadata() ([]byte, error) {
|
||||
|
||||
func (f *remoteFile) FetchUserdata() ([]byte, error) {
|
||||
client := pkg.NewHttpClient()
|
||||
return client.Get(f.url)
|
||||
return client.GetRetry(f.url)
|
||||
}
|
||||
|
||||
func (f *remoteFile) Type() string {
|
||||
|
Reference in New Issue
Block a user