internal

package
v0.0.0-...-f9a37e3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 16, 2026 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ConfigPath

func ConfigPath() string

func MaskAPIKey

func MaskAPIKey(key string) string

func SaveConfig

func SaveConfig(cfg *Config) error

Types

type Alias

type Alias struct {
	Alias     string   `yaml:"alias"`
	ForwardTo []string `yaml:"forward_to"`
}

type Config

type Config struct {
	CloudflareAPIToken  string         `yaml:"cloudflare_api_token"`
	CloudflareAccountID string         `yaml:"cloudflare_account_id"`
	BrevoAPIKey         string         `yaml:"brevo_api_key"`
	BrevoSMTPKey        string         `yaml:"brevo_smtp_key"`
	BrevoSMTPLogin      string         `yaml:"brevo_smtp_login"`
	DefaultForwardTo    string         `yaml:"default_forward_to"`
	Domains             []DomainConfig `yaml:"domains,omitempty"`
	SMTP                *SMTPConfig    `yaml:"smtp,omitempty"`
}

func LoadConfig

func LoadConfig() (*Config, error)

func (*Config) AddDomain

func (c *Config) AddDomain(domain, zoneID string, aliases []Alias)

func (*Config) FindDomain

func (c *Config) FindDomain(domain string) *DomainConfig

func (*Config) RemoveDomain

func (c *Config) RemoveDomain(domain string)

type DomainConfig

type DomainConfig struct {
	Domain           string  `yaml:"domain"`
	CloudflareZoneID string  `yaml:"cloudflare_zone_id"`
	Aliases          []Alias `yaml:"aliases,omitempty"`
	AddedAt          string  `yaml:"added_at"`
}

func (*DomainConfig) AddAlias

func (d *DomainConfig) AddAlias(name string, forwardTo []string)

func (*DomainConfig) FindAlias

func (d *DomainConfig) FindAlias(name string) *Alias

func (*DomainConfig) RemoveAlias

func (d *DomainConfig) RemoveAlias(name string)

type SMTPConfig

type SMTPConfig struct {
	Host        string `yaml:"host"`
	Port        int    `yaml:"port"`
	User        string `yaml:"user"`
	Pass        string `yaml:"pass"`
	DefaultFrom string `yaml:"default_from"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL