chore: clean .gitignore cache
This commit is contained in:
@@ -1,95 +0,0 @@
|
||||
package builtin
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"time"
|
||||
|
||||
"github.com/Wikid82/charon/backend/pkg/dnsprovider"
|
||||
)
|
||||
|
||||
// GoDaddyProvider implements the ProviderPlugin interface for GoDaddy DNS.
|
||||
type GoDaddyProvider struct{}
|
||||
|
||||
func (p *GoDaddyProvider) Type() string {
|
||||
return "godaddy"
|
||||
}
|
||||
|
||||
func (p *GoDaddyProvider) Metadata() dnsprovider.ProviderMetadata {
|
||||
return dnsprovider.ProviderMetadata{
|
||||
Type: "godaddy",
|
||||
Name: "GoDaddy",
|
||||
Description: "GoDaddy DNS with API key and secret",
|
||||
DocumentationURL: "https://developer.godaddy.com/doc",
|
||||
IsBuiltIn: true,
|
||||
Version: "1.0.0",
|
||||
}
|
||||
}
|
||||
|
||||
func (p *GoDaddyProvider) Init() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (p *GoDaddyProvider) Cleanup() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (p *GoDaddyProvider) RequiredCredentialFields() []dnsprovider.CredentialFieldSpec {
|
||||
return []dnsprovider.CredentialFieldSpec{
|
||||
{
|
||||
Name: "api_key",
|
||||
Label: "API Key",
|
||||
Type: "text",
|
||||
Placeholder: "Enter your GoDaddy API key",
|
||||
Hint: "Production API key from GoDaddy developer portal",
|
||||
},
|
||||
{
|
||||
Name: "api_secret",
|
||||
Label: "API Secret",
|
||||
Type: "password",
|
||||
Placeholder: "Enter your GoDaddy API secret",
|
||||
Hint: "Production API secret (stored encrypted)",
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func (p *GoDaddyProvider) OptionalCredentialFields() []dnsprovider.CredentialFieldSpec {
|
||||
return []dnsprovider.CredentialFieldSpec{}
|
||||
}
|
||||
|
||||
func (p *GoDaddyProvider) ValidateCredentials(creds map[string]string) error {
|
||||
if creds["api_key"] == "" {
|
||||
return fmt.Errorf("api_key is required")
|
||||
}
|
||||
if creds["api_secret"] == "" {
|
||||
return fmt.Errorf("api_secret is required")
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (p *GoDaddyProvider) TestCredentials(creds map[string]string) error {
|
||||
return p.ValidateCredentials(creds)
|
||||
}
|
||||
|
||||
func (p *GoDaddyProvider) SupportsMultiCredential() bool {
|
||||
return false
|
||||
}
|
||||
|
||||
func (p *GoDaddyProvider) BuildCaddyConfig(creds map[string]string) map[string]any {
|
||||
return map[string]any{
|
||||
"name": "godaddy",
|
||||
"api_key": creds["api_key"],
|
||||
"api_secret": creds["api_secret"],
|
||||
}
|
||||
}
|
||||
|
||||
func (p *GoDaddyProvider) BuildCaddyConfigForZone(baseDomain string, creds map[string]string) map[string]any {
|
||||
return p.BuildCaddyConfig(creds)
|
||||
}
|
||||
|
||||
func (p *GoDaddyProvider) PropagationTimeout() time.Duration {
|
||||
return 180 * time.Second
|
||||
}
|
||||
|
||||
func (p *GoDaddyProvider) PollingInterval() time.Duration {
|
||||
return 10 * time.Second
|
||||
}
|
||||
Reference in New Issue
Block a user