Documentation
¶
Index ¶
- Constants
- type Manager
- func (m *Manager) AddDokuDomain(domain string) error
- func (m *Manager) AddSingleEntry(ip, hostname string) error
- func (m *Manager) BackupHostsFile() (string, error)
- func (m *Manager) GetDokuDomain() (string, error)
- func (m *Manager) GetHostsFilePath() string
- func (m *Manager) HasDokuEntries() (bool, error)
- func (m *Manager) ListDokuEntries() ([]string, error)
- func (m *Manager) RemoveDokuEntries() error
- func (m *Manager) RemoveSingleEntry(hostname string) error
- func (m *Manager) RestoreHostsFile(backupPath string) error
- func (m *Manager) UpdateDokuDomain(domain string) error
- func (m *Manager) ValidateHostsFile() error
- func (m *Manager) VerifyDNSResolution(domain string) error
- type ResolverManager
- func (rm *ResolverManager) GetResolverPath(domain string) string
- func (rm *ResolverManager) HasResolver(domain string) bool
- func (rm *ResolverManager) IsMacOS() bool
- func (rm *ResolverManager) ListResolvers() ([]string, error)
- func (rm *ResolverManager) RemoveResolver(domain string) error
- func (rm *ResolverManager) SetupResolver(domain string) error
Constants ¶
const ( DokuMarker = "# doku-managed - do not edit" DokuStart = "# doku-managed-start" DokuEnd = "# doku-managed-end" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
Manager handles DNS and hosts file management
func (*Manager) AddDokuDomain ¶
AddDokuDomain adds Doku domain entries to the hosts file
func (*Manager) AddSingleEntry ¶
AddSingleEntry adds a single custom entry to hosts file
func (*Manager) BackupHostsFile ¶
BackupHostsFile creates a backup of the hosts file
func (*Manager) GetDokuDomain ¶
GetDokuDomain returns the currently configured Doku domain from hosts file
func (*Manager) GetHostsFilePath ¶
GetHostsFilePath returns the path to the hosts file
func (*Manager) HasDokuEntries ¶
HasDokuEntries checks if Doku entries exist in hosts file
func (*Manager) ListDokuEntries ¶
ListDokuEntries returns all Doku-managed entries
func (*Manager) RemoveDokuEntries ¶
RemoveDokuEntries removes Doku-managed entries from hosts file
func (*Manager) RemoveSingleEntry ¶
RemoveSingleEntry removes a specific entry from hosts file
func (*Manager) RestoreHostsFile ¶
RestoreHostsFile restores the hosts file from backup
func (*Manager) UpdateDokuDomain ¶
UpdateDokuDomain updates the domain in existing Doku entries
func (*Manager) ValidateHostsFile ¶
ValidateHostsFile checks if the hosts file is writable
func (*Manager) VerifyDNSResolution ¶
VerifyDNSResolution verifies that DNS resolution works for the domain
type ResolverManager ¶
type ResolverManager struct {
// contains filtered or unexported fields
}
ResolverManager handles macOS /etc/resolver configuration
func NewResolverManager ¶
func NewResolverManager() *ResolverManager
NewResolverManager creates a new resolver manager
func (*ResolverManager) GetResolverPath ¶
func (rm *ResolverManager) GetResolverPath(domain string) string
GetResolverPath returns the path to the resolver file for a domain
func (*ResolverManager) HasResolver ¶
func (rm *ResolverManager) HasResolver(domain string) bool
HasResolver checks if a resolver configuration exists for the domain
func (*ResolverManager) IsMacOS ¶
func (rm *ResolverManager) IsMacOS() bool
IsMacOS checks if the system is macOS
func (*ResolverManager) ListResolvers ¶
func (rm *ResolverManager) ListResolvers() ([]string, error)
ListResolvers lists all resolver configurations
func (*ResolverManager) RemoveResolver ¶
func (rm *ResolverManager) RemoveResolver(domain string) error
RemoveResolver removes the resolver configuration for the domain
func (*ResolverManager) SetupResolver ¶
func (rm *ResolverManager) SetupResolver(domain string) error
SetupResolver creates a resolver configuration for the domain (macOS only)