From cc648ece2cc0cf0b1e610cdab85ad4dd55ff98e6 Mon Sep 17 00:00:00 2001 From: Taylor Silva Date: Thu, 16 Jan 2025 18:47:18 +0000 Subject: [PATCH] update cf connector to use slog instead Signed-off-by: Taylor Silva --- connector/cloudfoundry/cloudfoundry.go | 21 ++++++++------------- connector/cloudfoundry/cloudfoundry_test.go | 6 +++--- 2 files changed, 11 insertions(+), 16 deletions(-) diff --git a/connector/cloudfoundry/cloudfoundry.go b/connector/cloudfoundry/cloudfoundry.go index 472c14e9..ff10bccd 100644 --- a/connector/cloudfoundry/cloudfoundry.go +++ b/connector/cloudfoundry/cloudfoundry.go @@ -7,6 +7,7 @@ import ( "encoding/json" "errors" "fmt" + "log/slog" "net" "net/http" "os" @@ -17,7 +18,6 @@ import ( "golang.org/x/oauth2" "github.com/dexidp/dex/connector" - "github.com/dexidp/dex/pkg/log" ) type cloudfoundryConnector struct { @@ -29,7 +29,7 @@ type cloudfoundryConnector struct { authorizationURL string userInfoURL string httpClient *http.Client - logger log.Logger + logger *slog.Logger } type connectorData struct { @@ -106,7 +106,7 @@ type login struct { Href string `json:"href"` } -func (c *Config) Open(id string, logger log.Logger) (connector.Connector, error) { +func (c *Config) Open(id string, logger *slog.Logger) (connector.Connector, error) { var err error cloudfoundryConn := &cloudfoundryConnector{ @@ -125,16 +125,14 @@ func (c *Config) Open(id string, logger log.Logger) (connector.Connector, error) apiURL := strings.TrimRight(c.APIURL, "/") apiResp, err := cloudfoundryConn.httpClient.Get(apiURL) if err != nil { - logger.Errorf("failed-to-send-request-to-cloud-controller-api", err) - return nil, err + return nil, fmt.Errorf("failed-to-send-request-to-cloud-controller-api: %w", err) } defer apiResp.Body.Close() if apiResp.StatusCode != http.StatusOK { err = fmt.Errorf("request failed with status %d", apiResp.StatusCode) - logger.Errorf("failed-get-info-response-from-api", err) - return nil, err + return nil, fmt.Errorf("failed-get-info-response-from-api: %w", err) } var apiResult infoResp @@ -144,14 +142,12 @@ func (c *Config) Open(id string, logger log.Logger) (connector.Connector, error) uaaURL := strings.TrimRight(apiResult.Links.Login.Href, "/") uaaResp, err := cloudfoundryConn.httpClient.Get(fmt.Sprintf("%s/.well-known/openid-configuration", uaaURL)) if err != nil { - logger.Errorf("failed-to-send-request-to-uaa-api", err) - return nil, err + return nil, fmt.Errorf("failed-to-send-request-to-uaa-api: %w", err) } if apiResp.StatusCode != http.StatusOK { err = fmt.Errorf("request failed with status %d", apiResp.StatusCode) - logger.Errorf("failed-to-get-well-known-config-response-from-api", err) - return nil, err + return nil, fmt.Errorf("failed-to-get-well-known-config-response-from-api: %w", err) } defer uaaResp.Body.Close() @@ -160,8 +156,7 @@ func (c *Config) Open(id string, logger log.Logger) (connector.Connector, error) err = json.NewDecoder(uaaResp.Body).Decode(&uaaResult) if err != nil { - logger.Errorf("failed-to-decode-response-from-uaa-api", err) - return nil, err + return nil, fmt.Errorf("failed-to-decode-response-from-uaa-api: %w", err) } cloudfoundryConn.tokenURL, _ = uaaResult["token_endpoint"].(string) diff --git a/connector/cloudfoundry/cloudfoundry_test.go b/connector/cloudfoundry/cloudfoundry_test.go index 383ade22..d15b3261 100644 --- a/connector/cloudfoundry/cloudfoundry_test.go +++ b/connector/cloudfoundry/cloudfoundry_test.go @@ -4,14 +4,14 @@ import ( "encoding/json" "errors" "fmt" + "io" + "log/slog" "net/http" "net/http/httptest" "reflect" "strings" "testing" - "github.com/sirupsen/logrus" - "github.com/dexidp/dex/connector" ) @@ -510,7 +510,7 @@ func newConnector(t *testing.T, serverURL string) *cloudfoundryConnector { InsecureSkipVerify: true, } - log := logrus.New() + log := slog.New(slog.NewTextHandler(io.Discard, &slog.HandlerOptions{})) conn, err := testConfig.Open("id", log) if err != nil {