tpl/data: Prevent getJSON and getCSV fetch failure from aborting build
authorAnthony Fok <foka@debian.org>
Mon, 28 Jan 2019 23:27:43 +0000 (16:27 -0700)
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Fri, 1 Feb 2019 07:52:29 +0000 (08:52 +0100)
Fixes #5643

tpl/data/data.go

index 33eee7b27bf253962fbbe69ad6481cc98778d8fb..81fde9d706568cca0c8234a485483610f91c566f 100644 (file)
@@ -83,7 +83,8 @@ func (ns *Namespace) GetCSV(sep string, urlParts ...string) (d [][]string, err e
 
        err = ns.getResource(cache, unmarshal, req)
        if err != nil {
-               return nil, _errors.Wrapf(err, "failed to read CSV resource %q", url)
+               ns.deps.Log.ERROR.Printf("Failed to get CSV resource %q: %s", url, err)
+               return nil, nil
        }
 
        return
@@ -113,19 +114,18 @@ func (ns *Namespace) GetJSON(urlParts ...string) (interface{}, error) {
        req.Header.Add("Accept", "application/json")
 
        err = ns.getResource(cache, unmarshal, req)
-
        if err != nil {
-               return nil, _errors.Wrapf(err, "failed to get getJSON resource %q", url)
+               ns.deps.Log.ERROR.Printf("Failed to get JSON resource %q: %s", url, err)
+               return nil, nil
        }
 
        return v, nil
-
 }
 
 // parseCSV parses bytes of CSV data into a slice slice string or an error
 func parseCSV(c []byte, sep string) ([][]string, error) {
        if len(sep) != 1 {
-               return nil, errors.New("Incorrect length of csv separator: " + sep)
+               return nil, errors.New("Incorrect length of CSV separator: " + sep)
        }
        b := bytes.NewReader(c)
        r := csv.NewReader(b)