resources: Add timeout to the HTTP request in Get

Workaround for https://github.com/golang/go/issues/49366
This commit is contained in:
Bjørn Erik Pedersen
2021-12-02 14:13:24 +01:00
parent 94f149b21e
commit 93572e5318
4 changed files with 12 additions and 3 deletions

View File

@@ -18,6 +18,7 @@ package create
import (
"bufio"
"bytes"
"context"
"fmt"
"io"
"io/ioutil"
@@ -180,6 +181,14 @@ func (c *Client) FromRemote(uri string, options map[string]interface{}) (resourc
}
addUserProvidedHeaders(headers, req)
}
// Workaround for https://github.com/golang/go/issues/49366
// This is the entire lifetime of the request.
ctx, cancel := context.WithTimeout(req.Context(), 30*time.Second)
defer cancel()
req = req.WithContext(ctx)
res, err := c.httpClient.Do(req)
if err != nil {
return nil, err