mirror of
https://github.com/go-acme/lego
synced 2026-03-14 14:35:48 +01:00
gandiv5: fix API Key header (#2769)
This commit is contained in:
parent
ee616417a1
commit
ff885d99c2
2 changed files with 14 additions and 11 deletions
|
|
@ -17,9 +17,6 @@ import (
|
|||
// defaultBaseURL endpoint is the Gandi API endpoint used by Present and CleanUp.
|
||||
const defaultBaseURL = "https://api.gandi.net/v5/livedns"
|
||||
|
||||
// APIKeyHeader API key header.
|
||||
const APIKeyHeader = "X-Api-Key"
|
||||
|
||||
// Related to Personal Access Token.
|
||||
const authorizationHeader = "Authorization"
|
||||
|
||||
|
|
@ -133,7 +130,7 @@ func (c *Client) DeleteTXTRecord(ctx context.Context, domain, name string) error
|
|||
|
||||
func (c *Client) do(req *http.Request, result any) error {
|
||||
if c.apiKey != "" {
|
||||
req.Header.Set(APIKeyHeader, c.apiKey)
|
||||
req.Header.Set(authorizationHeader, "Apikey "+c.apiKey)
|
||||
}
|
||||
|
||||
if c.pat != "" {
|
||||
|
|
|
|||
|
|
@ -9,23 +9,29 @@ import (
|
|||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func mockBuilder() *servermock.Builder[*Client] {
|
||||
func mockBuilder(apiKey, pat string) *servermock.Builder[*Client] {
|
||||
checkHeaders := servermock.CheckHeader().WithJSONHeaders()
|
||||
|
||||
if apiKey != "" {
|
||||
checkHeaders = checkHeaders.WithAuthorization("Apikey secret-apikey")
|
||||
} else {
|
||||
checkHeaders = checkHeaders.WithAuthorization("Bearer secret-pat")
|
||||
}
|
||||
|
||||
return servermock.NewBuilder[*Client](
|
||||
func(server *httptest.Server) (*Client, error) {
|
||||
client := NewClient("secret", "xxx")
|
||||
client := NewClient(apiKey, pat)
|
||||
client.BaseURL, _ = url.Parse(server.URL)
|
||||
client.HTTPClient = server.Client()
|
||||
|
||||
return client, nil
|
||||
},
|
||||
servermock.CheckHeader().WithJSONHeaders().
|
||||
With("X-Api-Key", "secret").
|
||||
WithAuthorization("Bearer xxx"),
|
||||
checkHeaders,
|
||||
)
|
||||
}
|
||||
|
||||
func TestClient_AddTXTRecord(t *testing.T) {
|
||||
client := mockBuilder().
|
||||
client := mockBuilder("secret-apikey", "").
|
||||
Route("GET /domains/example.com/records/foo/TXT",
|
||||
servermock.ResponseFromFixture("add_txt_record_get.json")).
|
||||
Route("PUT /domains/example.com/records/foo/TXT",
|
||||
|
|
@ -38,7 +44,7 @@ func TestClient_AddTXTRecord(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestClient_DeleteTXTRecord(t *testing.T) {
|
||||
client := mockBuilder().
|
||||
client := mockBuilder("", "secret-pat").
|
||||
Route("DELETE /domains/example.com/records/foo/TXT",
|
||||
servermock.ResponseFromFixture("api_response.json")).
|
||||
Build(t)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue