github.com/jfrog/jfrog-cli-go@v1.22.1-0.20200318093948-4826ef344ffd/inttestutils/buildinfo.go (about) 1 package inttestutils 2 3 import ( 4 "encoding/json" 5 "github.com/jfrog/jfrog-client-go/artifactory/buildinfo" 6 "github.com/jfrog/jfrog-client-go/httpclient" 7 "github.com/jfrog/jfrog-client-go/utils/io/httputils" 8 "github.com/jfrog/jfrog-client-go/utils/log" 9 "net/http" 10 "testing" 11 ) 12 13 func GetBuildInfo(artifactoryUrl, buildName, buildNumber string, t *testing.T, artHttpDetails httputils.HttpClientDetails) buildinfo.BuildInfo { 14 client, err := httpclient.ClientBuilder().Build() 15 if err != nil { 16 t.Error(err) 17 } 18 _, body, _, err := client.SendGet(artifactoryUrl+"api/build/"+buildName+"/"+buildNumber, true, artHttpDetails) 19 if err != nil { 20 t.Error(err) 21 } 22 23 var buildInfoJson struct { 24 BuildInfo buildinfo.BuildInfo `json:"buildInfo,omitempty"` 25 } 26 if err := json.Unmarshal(body, &buildInfoJson); err != nil { 27 t.Error(err) 28 } 29 return buildInfoJson.BuildInfo 30 } 31 32 func DeleteBuild(artifactoryUrl, buildName string, artHttpDetails httputils.HttpClientDetails) { 33 client, err := httpclient.ClientBuilder().Build() 34 if err != nil { 35 log.Error(err) 36 } 37 resp, body, err := client.SendDelete(artifactoryUrl+"api/build/"+buildName+"?deleteAll=1", nil, artHttpDetails) 38 if err != nil { 39 log.Error(err) 40 } 41 if resp.StatusCode != http.StatusOK && resp.StatusCode != http.StatusNotFound { 42 log.Error(resp.Status) 43 log.Error(string(body)) 44 } 45 }