epik: add User-Agent (#2290)

This commit is contained in:
Ludovic Fernandez 2024-10-05 00:11:16 +02:00 committed by GitHub
parent 85b5ef459a
commit 748e4c0d70
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 9 additions and 3 deletions

View file

@ -60,7 +60,7 @@ More information [here]({{% ref "dns#configuration-and-credentials" %}}).
## More information
- [API documentation](https://docs.userapi.epik.com/v2/#/)
- [API documentation](https://docs-userapi.epik.com/v2/)
<!-- THIS DOCUMENTATION IS AUTO-GENERATED. PLEASE DO NOT EDIT. -->
<!-- providers/dns/epik/epik.toml -->

View file

@ -41,7 +41,7 @@ GLOBAL OPTIONS:
--dns value Solve a DNS-01 challenge using the specified provider. Can be mixed with other types of challenges. Run 'lego dnshelp' for help on usage.
--dns.disable-cp (deprecated) use dns.propagation-disable-ans instead. (default: false)
--dns.propagation-disable-ans By setting this flag to true, disables the need to await propagation of the TXT record to all authoritative name servers. (default: false)
--dns.propagation-rns By setting this flag, use all the recursive nameservers to check the propagation of the TXT record. (default: false)
--dns.propagation-rns By setting this flag to true, use all the recursive nameservers to check the propagation of the TXT record. (default: false)
--dns.propagation-wait value By setting this flag, disables all the propagation checks of the TXT record and uses a wait duration instead. (default: 0s)
--dns.resolvers value [ --dns.resolvers value ] Set the resolvers to use for performing (recursive) CNAME resolving and apex domain determination. For DNS-01 challenge verification, the authoritative DNS server is queried directly. Supported: host:port. The default is to use the system resolvers, or Google's DNS resolvers if the system's cannot be determined.
--http-timeout value Set the HTTP timeout value to a specific value in seconds. (default: 0)

View file

@ -19,4 +19,4 @@ lego --email you@example.com --dns epik --domains my.example.org run
EPIK_HTTP_TIMEOUT = "API request timeout"
[Links]
API = "https://docs.userapi.epik.com/v2/#/"
API = "https://docs-userapi.epik.com/v2/"

View file

@ -15,6 +15,10 @@ import (
const defaultBaseURL = "https://usersapiv2.epik.com/v2"
// The API server don't support User-Agent starting with `go-`, then this User-Agent is different from the other implementation.
// https://github.com/go-acme/lego/issues/2268#issuecomment-2394007004
const defaultUserAgent = "goacme/lego"
// Client the Epik API client.
type Client struct {
signature string
@ -97,6 +101,8 @@ func (c Client) RemoveHostRecord(ctx context.Context, domain string, recordID st
}
func (c Client) do(req *http.Request, result any) error {
req.Header.Set("User-Agent", defaultUserAgent)
resp, err := c.HTTPClient.Do(req)
if err != nil {
return errutils.NewHTTPDoError(req, err)