diff options
Diffstat (limited to 'ickadmin.go')
-rw-r--r-- | ickadmin.go | 40 |
1 files changed, 13 insertions, 27 deletions
diff --git a/ickadmin.go b/ickadmin.go index ecc97c2..fd2e113 100644 --- a/ickadmin.go +++ b/ickadmin.go @@ -136,35 +136,27 @@ func get_access_token(cfg *config) (string, error) { func get_projects(cfg *config, token string) (*projects, error) { url := fmt.Sprintf("%s/projects", cfg.idp) - - client := &http.Client{} - req, err := http.NewRequest("GET", url, nil) - req.Header.Add("Authorization", fmt.Sprintf("bearer %s", token)) - - resp, err := client.Do(req) - if err != nil { - fmt.Fprintf(os.Stderr, "GET %s: %v\n", url, err) - return nil, err - } - - bodyText, err := ioutil.ReadAll(resp.Body) + body, err := get_raw(url, token) if err != nil { - fmt.Fprintf(os.Stderr, "reading HTTP response: %v\n", err) return nil, err } - -// s := string(bodyText) -// fmt.Printf("%v", s) - res := projects{} - json.Unmarshal(bodyText, &res) - + json.Unmarshal(body, &res) return &res, nil } func get_builds(cfg *config, token string) (*builds, error) { url := fmt.Sprintf("%s/builds", cfg.idp) + body, err := get_raw(url, token) + if err != nil { + return nil, err + } + res := builds{} + json.Unmarshal(body, &res) + return &res, nil +} +func get_raw(url string, token string) ([]byte, error) { client := &http.Client{} req, err := http.NewRequest("GET", url, nil) req.Header.Add("Authorization", fmt.Sprintf("bearer %s", token)) @@ -175,17 +167,11 @@ func get_builds(cfg *config, token string) (*builds, error) { return nil, err } - bodyText, err := ioutil.ReadAll(resp.Body) + body, err := ioutil.ReadAll(resp.Body) if err != nil { fmt.Fprintf(os.Stderr, "reading HTTP response: %v\n", err) return nil, err } -// s := string(bodyText) -// fmt.Printf("%v", s) - - res := builds{} - json.Unmarshal(bodyText, &res) - - return &res, nil + return body, nil } |