mirror of
https://github.com/hanzoai/deploy.git
synced 2026-10-07 08:44:50 +00:00
go.mod still declared `module github.com/hanzoai/deploy` after the repo was renamed. A Go module path is not cosmetic — it is the resolvable location. So `go get github.com/hanzoai/cd` could not work, and anything importing this module had to spell a name that no longer exists at that address. The build log of v3.6.0 is where it surfaced: the compiler was still emitting github.com/hanzoai/deploy/cmd/cd/commands. 3541 import paths across 690 .go, 19 .proto, 4 .yaml, 3 .sh, 2 .mod, Procfile and Makefile. Plus the 62 ghcr.io/hanzoai/deploy image references, moved to ghcr.io/hanzoai/cd to match hanzo.yml's build target — a distinct string from the module path, replaced separately so neither could clobber the other. go mod tidy clean, CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build ./... clean. Co-authored-by: Hanzo Dev <[email protected]>
59 lines
1.4 KiB
Go
59 lines
1.4 KiB
Go
package fixture
|
|
|
|
import (
|
|
"bytes"
|
|
"context"
|
|
"crypto/tls"
|
|
"encoding/json"
|
|
"io"
|
|
"net/http"
|
|
"net/url"
|
|
|
|
"github.com/hanzoai/cd/common"
|
|
)
|
|
|
|
// DoHttpRequest executes a http request against the Argo CD API server
|
|
func DoHttpRequest(method string, path string, host string, data ...byte) (*http.Response, error) { //nolint:revive //FIXME(var-naming)
|
|
reqURL, err := url.Parse(path)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
reqURL.Scheme = "http"
|
|
if host != "" {
|
|
reqURL.Host = host
|
|
} else {
|
|
reqURL.Host = apiServerAddress
|
|
}
|
|
var body io.Reader
|
|
if data != nil {
|
|
body = bytes.NewReader(data)
|
|
}
|
|
req, err := http.NewRequestWithContext(context.Background(), method, reqURL.String(), body)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
req.AddCookie(&http.Cookie{Name: common.AuthCookieName, Value: token})
|
|
req.Header.Set("Content-Type", "application/json")
|
|
|
|
httpClient := &http.Client{
|
|
Transport: &http.Transport{
|
|
TLSClientConfig: &tls.Config{InsecureSkipVerify: IsRemote()},
|
|
},
|
|
}
|
|
|
|
return httpClient.Do(req)
|
|
}
|
|
|
|
// DoHttpJsonRequest executes a http request against the Argo CD API server and unmarshals the response body as JSON
|
|
func DoHttpJsonRequest(method string, path string, result any, data ...byte) error { //nolint:revive //FIXME(var-naming)
|
|
resp, err := DoHttpRequest(method, path, "", data...)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
responseData, err := io.ReadAll(resp.Body)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
return json.Unmarshal(responseData, result)
|
|
}
|