Skip to content

Commit 071e494

Browse files
committed
keep useful error prefix
1 parent a043cf2 commit 071e494

1 file changed

Lines changed: 8 additions & 13 deletions

File tree

internal/config/vault.go

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import (
44
"context"
55
"errors"
66
"fmt"
7-
"net/http"
87

98
"github.com/go-viper/mapstructure/v2"
109
"github.com/hashicorp/vault-client-go"
@@ -18,11 +17,7 @@ func LookupWithAppRole(ctx context.Context, vaultAddr, caCertFile, roleID, secre
1817
}
1918
resp, err := client.Auth.AppRoleLogin(ctx, schema.AppRoleLoginRequest{RoleId: roleID, SecretId: secretID})
2019
if err != nil {
21-
var verr *vault.ResponseError
22-
if errors.As(err, &verr) && verr.OriginalRequest != nil {
23-
return nil, expandError(verr.OriginalRequest, err)
24-
}
25-
return nil, fmt.Errorf("approle.Login: %w", err)
20+
return nil, fmt.Errorf("approle.Login: %w", responseError(err))
2621
}
2722
if err = client.SetToken(resp.Auth.ClientToken); err != nil {
2823
return nil, fmt.Errorf("approle.SetToken: %w", err)
@@ -60,11 +55,7 @@ func newClient(vaultAddr, caCertFile string) (*vault.Client, error) {
6055
func lookup(ctx context.Context, client *vault.Client, path string) (*Config, error) {
6156
secret, err := client.Read(ctx, path)
6257
if err != nil {
63-
var verr *vault.ResponseError
64-
if errors.As(err, &verr) && verr.OriginalRequest != nil {
65-
return nil, expandError(verr.OriginalRequest, err)
66-
}
67-
return nil, fmt.Errorf("vault.Read: %w", err)
58+
return nil, fmt.Errorf("vault.Read: %w", responseError(err))
6859
}
6960
if secret == nil || secret.Data == nil {
7061
return nil, fmt.Errorf("secret not found at path %q", path)
@@ -76,8 +67,12 @@ func lookup(ctx context.Context, client *vault.Client, path string) (*Config, er
7667
return &cfg, nil
7768
}
7869

79-
func expandError(req *http.Request, err error) error {
80-
return fmt.Errorf("%s %s: %w", req.Method, req.URL.String(), err)
70+
func responseError(err error) error {
71+
var verr *vault.ResponseError
72+
if errors.As(err, &verr) && verr.OriginalRequest != nil {
73+
return fmt.Errorf("%s %s: %w", verr.OriginalRequest.Method, verr.OriginalRequest.URL.String(), err)
74+
}
75+
return err
8176
}
8277

8378
func logout(ctx context.Context, client *vault.Client, shouldLogout bool) {

0 commit comments

Comments
 (0)