Documentation ¶
Overview ¶
Repeated strings and shorthand.
Index ¶
- Constants
- func Exists(path string) bool
- func GetConfigName(program, filename string) (string, error)
- func GetServerConfigName(program, filename string) (string, error)
- func SetClient(c DNSClient)
- type DNSAddAAAACmd
- type DNSAddACmd
- type DNSAddArgs
- type DNSAddArgsPri
- type DNSAddCNAMECmd
- type DNSAddCmd
- type DNSAddMXCmd
- type DNSAddNSCmd
- type DNSAddSRVCmd
- type DNSAddTXTCmd
- type DNSClient
- type DNSCmd
- type DNSDeleteAAAACmd
- type DNSDeleteACmd
- type DNSDeleteArgs
- type DNSDeleteArgsAll
- type DNSDeleteCNAMECmd
- type DNSDeleteCmd
- type DNSDeleteMXCmd
- type DNSDeleteNSCmd
- type DNSDeleteSRVCmd
- type DNSDeleteTXTCmd
- type DNSEditAAAACmd
- type DNSEditACmd
- type DNSEditArgs
- type DNSEditArgsPri
- type DNSEditCNAMECmd
- type DNSEditCmd
- type DNSEditMXCmd
- type DNSEditNSCmd
- type DNSEditSOACmd
- type DNSEditSRVCmd
- type DNSEditTXTCmd
- type DNSGetAAAACmd
- type DNSGetACmd
- type DNSGetAllCmd
- type DNSGetArgs
- type DNSGetCNAMECmd
- type DNSGetCmd
- type DNSGetMXCmd
- type DNSGetNSCmd
- type DNSGetSRVCmd
- type DNSGetTXTCmd
- type DNSNukeCmd
- type DNSStatusCmd
Constants ¶
const ( ANSI_RED = "\x1b[31;1m" ANSI_GREEN = "\x1b[32;1m" ANSI_YELLOW = "\x1b[33;1m" ANSI_BLUE = "\x1b[34;1m" ANSI_MAGENTA = "\x1b[35;1m" ANSI_CYAN = "\x1b[36;1m" ANSI_WHITE = "\x1b[37;1m" ANSI_NORMAL = "\x1b[0m" )
ANSI foreground colours for convenience.
Variables ¶
This section is empty.
Functions ¶
func GetConfigName ¶
GetConfigName gets the correct full path of the configuration file.
func GetServerConfigName ¶
GetServerConfigName gets the correct full path of the configuration file for servers.
Types ¶
type DNSAddAAAACmd ¶
type DNSAddAAAACmd struct {
Args DNSAddArgs `positional-args:"true"`
}
DNSAddAAAACmd arguments.
func (*DNSAddAAAACmd) Execute ¶
func (cmd *DNSAddAAAACmd) Execute(args []string) error
Execute AAAA record creation.
type DNSAddACmd ¶
type DNSAddACmd struct {
Args DNSAddArgs `positional-args:"true"`
}
DNSAddACmd arguments.
func (*DNSAddACmd) Execute ¶
func (cmd *DNSAddACmd) Execute(args []string) error
Execute A record creation.
type DNSAddArgs ¶
type DNSAddArgs struct { Domain string `required:"true" positional-arg-name:"DOMAIN" description:"Domain name."` Value string `required:"true" positional-arg-name:"VALUE" description:"IP address, or FQDN for CNAME."` Host string `positional-arg-name:"HOST" description:"Host name."` TTL int64 `positional-arg-name:"TTL" description:"Time to live (seconds)."` }
DNSAddArgs are the default arguments for some record-adding sub-commands.
type DNSAddArgsPri ¶
type DNSAddArgsPri struct { Domain string `required:"true" positional-arg-name:"DOMAIN" description:"Domain name."` Value string `required:"true" positional-arg-name:"VALUE" description:"IP address, or FQDN for CNAME."` Host string `positional-arg-name:"HOST" description:"Host name."` TTL int64 `positional-arg-name:"TTL" description:"Time to live (seconds)."` Priority uint16 `positional-arg-name:"PRIORITY" description:"Priority of record. Default is 0 (most important)."` }
DNSAddArgsPri are the default arguments for record-adding sub-commands with priority.
type DNSAddCNAMECmd ¶
type DNSAddCNAMECmd struct {
Args DNSAddArgs `positional-args:"true"`
}
DNSAddCNAMECmd arguments.
func (*DNSAddCNAMECmd) Execute ¶
func (cmd *DNSAddCNAMECmd) Execute(args []string) error
Execute CNAME record creation.
type DNSAddCmd ¶
type DNSAddCmd struct { A DNSAddACmd `command:"a" description:"Add an A record." alias:"A"` AAAA DNSAddAAAACmd `command:"aaaa" description:"Add an AAAA record." alias:"AAAA"` CNAME DNSAddCNAMECmd `command:"cname" description:"Add a CNAME record." alias:"CNAME"` MX DNSAddMXCmd `command:"mx" description:"Add an MX record." alias:"MX"` NS DNSAddNSCmd `command:"ns" description:"Add an NS record." alias:"NS"` TXT DNSAddTXTCmd `command:"txt" description:"Add a TXT record." alias:"TXT"` SRV DNSAddSRVCmd `command:"srv" description:"Add a SRV record." alias:"SRV"` }
DNSAddCmd arguments.
type DNSAddMXCmd ¶
type DNSAddMXCmd struct {
Args DNSAddArgsPri `positional-args:"true"`
}
DNSAddMXCmd arguments.
func (*DNSAddMXCmd) Execute ¶
func (cmd *DNSAddMXCmd) Execute(args []string) error
Execute MX record creation.
type DNSAddNSCmd ¶
type DNSAddNSCmd struct {
Args DNSAddArgsPri `positional-args:"true"`
}
DNSAddNSCmd arguments.
func (*DNSAddNSCmd) Execute ¶
func (cmd *DNSAddNSCmd) Execute(args []string) error
Execute NS record creation.
type DNSAddSRVCmd ¶
type DNSAddSRVCmd struct { Args struct { Domain string `required:"true" positional-arg-name:"DOMAIN" description:"Domain name."` Value string `required:"true" positional-arg-name:"VALUE" description:"IP address, or FQDN for CNAME."` Host string `` /* 143-byte string literal not displayed */ TTL int64 `positional-arg-name:"TTL" description:"Time to live (seconds)."` Priority uint16 `positional-arg-name:"PRIORITY" description:"Priority of record. Default is 0 (most important)."` Port uint16 `positional-arg-name:"PORT" description:"Port number of the service."` Weight uint16 `positional-arg-name:"WEIGHT" description:"Relative weight for records with the same priority."` } `positional-args:"true"` }
DNSAddSRVCmd arguments.
func (*DNSAddSRVCmd) Execute ¶
func (cmd *DNSAddSRVCmd) Execute(args []string) error
Execute SRV record creation.
type DNSAddTXTCmd ¶
type DNSAddTXTCmd struct {
Args DNSAddArgsPri `positional-args:"true"`
}
DNSAddTXTCmd arguments.
func (*DNSAddTXTCmd) Execute ¶
func (cmd *DNSAddTXTCmd) Execute(args []string) error
Execute TXT record creation.
type DNSClient ¶
type DNSClient interface { DNSActive(string) bool // // Add section // AddARecord(domain, address, host string, ttl int64, six bool) error AddCNAME(domain, value, host string, ttl int64) error AddMX(domain, value, host string, ttl int64, priority uint16) error AddNS(domain, value, host string, ttl int64, priority uint16) error AddTXT(domain, value, host string, ttl int64, priority uint16) error AddSRV(domain, value, host string, ttl int64, priority, port, weight uint16) error // // Get section // GetDNSRecords(domain, value, host, t string, page int) (*lbapi.DNSRecordList, error) // // Edit section // EditARecord(domain, oldip, newip, host string, ttl int64, six bool) error EditCNAME(domain, oldip, newip, host string, ttl int64) error EditMX(domain, oldip, newip, host string, ttl int64, priority uint16) error EditNS(domain, oldip, newip, host string, ttl int64) error EditTXT(domain, oldip, newip, host string, ttl int64) error EditSRV(domain, oldval, newval, host string, ttl int64, priority, port, weight uint) error EditSOA(domain, person string, refresh, retry, expire, ttl int64) error // // Delete section // DeleteARecord(domain, value, host string, six bool) error DeleteCNAME(domain, value, host string) error DeleteMX(domain, value, host string) error DeleteNS(domain, value, host string) error DeleteTXT(domain, value, host string) error DeleteSRV(domain, value, host string, port, weight uint16) error }
type DNSCmd ¶
type DNSCmd struct { Status DNSStatusCmd `command:"status" description:"Shows DNS management status for a domain by order ID, and activates it if not yet enabled."` Get DNSGetCmd `command:"get" description:"Get one type of DNS record for a domain."` Add DNSAddCmd `command:"add" description:"Add a DNS record for a domain."` Delete DNSDeleteCmd `command:"delete" description:"Delete a DNS record from a domain." alias:"del" alias:"rm"` Edit DNSEditCmd `command:"edit" description:"Edit a DNS record." alias:"ch" alias:"change" alias:"ed" alias:"mod"` Nuke DNSNukeCmd `command:"nuke" description:"Clear out all DNS records except the primary A/AAAA for a domain." alias:"wipeout"` }
DNSCmd arguments and sub-commands.
type DNSDeleteAAAACmd ¶
type DNSDeleteAAAACmd struct {
Args DNSDeleteArgs `positional-args:"true"`
}
DNSDeleteAAAACmd arguments.
func (*DNSDeleteAAAACmd) Execute ¶
func (cmd *DNSDeleteAAAACmd) Execute(args []string) error
Execute AAAA record deletion.
type DNSDeleteACmd ¶
type DNSDeleteACmd struct {
Args DNSDeleteArgs `positional-args:"true"`
}
DNSDeleteACmd arguments.
func (*DNSDeleteACmd) Execute ¶
func (cmd *DNSDeleteACmd) Execute(args []string) error
Execute A record deletion.
type DNSDeleteArgs ¶
type DNSDeleteArgs struct { Domain string `required:"true" positional-arg-name:"DOMAIN" description:"Domain name."` Value string `required:"true" positional-arg-name:"VALUE" description:"IP address, or FQDN for CNAME/MX."` Host string `positional-arg-name:"HOST" description:"Host name."` }
DNSDeleteArgs are the default args for most record-deletion sub-commands.
type DNSDeleteArgsAll ¶
type DNSDeleteArgsAll struct { Domain string `required:"true" positional-arg-name:"DOMAIN" description:"Domain name."` Value string `required:"true" positional-arg-name:"VALUE" description:"IP address, or FQDN for CNAME/MX."` Host string `required:"true" positional-arg-name:"HOST" description:"Host name."` }
DNSDeleteArgsAll are default args for some special record-deletion sub-commands.
type DNSDeleteCNAMECmd ¶
type DNSDeleteCNAMECmd struct {
Args DNSDeleteArgsAll `positional-args:"true"`
}
DNSDeleteCNAMECmd arguments.
func (*DNSDeleteCNAMECmd) Execute ¶
func (cmd *DNSDeleteCNAMECmd) Execute(args []string) error
Execute CNAME record deletion.
type DNSDeleteCmd ¶
type DNSDeleteCmd struct { A DNSDeleteACmd `command:"a" description:"Delete an A record." alias:"A"` AAAA DNSDeleteAAAACmd `command:"aaaa" description:"Delete an AAAA record." alias:"AAAA"` CNAME DNSDeleteCNAMECmd `command:"cname" description:"Delete a CNAME record." alias:"CNAME"` MX DNSDeleteMXCmd `command:"mx" description:"Delete an MX record." alias:"MX"` NS DNSDeleteNSCmd `command:"ns" description:"Delete an NS record." alias:"NS"` TXT DNSDeleteTXTCmd `command:"txt" description:"Delete a TXT record." alias:"TXT"` SRV DNSDeleteSRVCmd `command:"srv" description:"Delete a SRV record." alias:"SRV"` }
DNSDeleteCmd arguments.
type DNSDeleteMXCmd ¶
type DNSDeleteMXCmd struct {
Args DNSDeleteArgsAll `positional-args:"true"`
}
DNSDeleteMXCmd arguments.
func (*DNSDeleteMXCmd) Execute ¶
func (cmd *DNSDeleteMXCmd) Execute(args []string) error
Execute MX record deletion.
type DNSDeleteNSCmd ¶
type DNSDeleteNSCmd struct {
Args DNSDeleteArgs `positional-args:"true"`
}
DNSDeleteNSCmd arguments.
func (*DNSDeleteNSCmd) Execute ¶
func (cmd *DNSDeleteNSCmd) Execute(args []string) error
Execute NS record deletion.
type DNSDeleteSRVCmd ¶
type DNSDeleteSRVCmd struct { Args struct { Domain string `required:"true" positional-arg-name:"DOMAIN" description:"Domain name."` Value string `required:"true" positional-arg-name:"VALUE" description:"IP address, or FQDN for CNAME/MX etc."` Host string `` /* 143-byte string literal not displayed */ Port uint16 `required:"true" positional-arg-name:"PORT" description:"Port number of the service."` Weight uint16 `required:"true" positional-arg-name:"WEIGHT" description:"Weight of the service."` } `positional-args:"true"` }
DNSDeleteSRVCmd arguments.
func (*DNSDeleteSRVCmd) Execute ¶
func (cmd *DNSDeleteSRVCmd) Execute(args []string) error
Execute SRV record deletion.
type DNSDeleteTXTCmd ¶
type DNSDeleteTXTCmd struct {
Args DNSDeleteArgs `positional-args:"true"`
}
DNSDeleteTXTCmd arguments.
func (*DNSDeleteTXTCmd) Execute ¶
func (cmd *DNSDeleteTXTCmd) Execute(args []string) error
Execute TXT record deletion.
type DNSEditAAAACmd ¶
type DNSEditAAAACmd struct {
Args DNSEditArgs `positional-args:"true"`
}
DNSEditAAAACmd arguments.
func (*DNSEditAAAACmd) Execute ¶
func (cmd *DNSEditAAAACmd) Execute(args []string) error
Execute AAAA record modification.
type DNSEditACmd ¶
type DNSEditACmd struct {
Args DNSEditArgs `positional-args:"true"`
}
DNSEditACmd arguments.
func (*DNSEditACmd) Execute ¶
func (cmd *DNSEditACmd) Execute(args []string) error
Execute A record modification.
type DNSEditArgs ¶
type DNSEditArgs struct { Domain string `required:"true" positional-arg-name:"DOMAIN" description:"Domain name."` Old string `required:"true" positional-arg-name:"OLD VALUE" description:"IP address/name/data to change from."` New string `required:"true" positional-arg-name:"NEW VALUE" description:"New IP address/name/data."` Host string `positional-arg-name:"HOST" description:"Host name."` TTL int64 `positional-arg-name:"TTL" description:"Time to live (seconds)."` }
DNSEditArgs are the default arguments for some record-editing sub-commands.
type DNSEditArgsPri ¶
type DNSEditArgsPri struct { Domain string `required:"true" positional-arg-name:"DOMAIN" description:"Domain name."` Old string `required:"true" positional-arg-name:"OLDIP" description:"IP address to change from."` New string `required:"true" positional-arg-name:"NEWIP" description:"New IP address."` Host string `positional-arg-name:"HOST" description:"Host name."` TTL int64 `positional-arg-name:"TTL" description:"Time to live (seconds)."` Priority uint16 `positional-arg-name:"PRIORITY" description:"Priority of record. Default is 0 (most important)."` }
DNSEditArgsPri are the default arguments for record-editing sub-commands with priority.
type DNSEditCNAMECmd ¶
type DNSEditCNAMECmd struct {
Args DNSEditArgs `positional-args:"true"`
}
DNSEditCNAMECmd arguments.
func (*DNSEditCNAMECmd) Execute ¶
func (cmd *DNSEditCNAMECmd) Execute(args []string) error
Execute CNAME record modification.
type DNSEditCmd ¶
type DNSEditCmd struct { A DNSEditACmd `command:"a" description:"Edit an A record." alias:"A"` AAAA DNSEditAAAACmd `command:"aaaa" description:"Edit an AAAA record." alias:"AAAA"` CNAME DNSEditCNAMECmd `command:"cname" description:"Edit a CNAME record." alias:"CNAME"` MX DNSEditMXCmd `command:"mx" description:"Edit an MX record." alias:"MX"` NS DNSEditNSCmd `command:"ns" description:"Edit an NS record." alias:"NS"` TXT DNSEditTXTCmd `command:"txt" description:"Edit a TXT record." alias:"TXT"` SRV DNSEditSRVCmd `command:"srv" description:"Edit a SRV record." alias:"SRV"` SOA DNSEditSOACmd `command:"soa" description:"Edit the SOA record." alias:"SOA"` }
DNSEditCmd arguments.
type DNSEditMXCmd ¶
type DNSEditMXCmd struct {
Args DNSEditArgsPri `positional-args:"true"`
}
DNSEditMXCmd arguments.
func (*DNSEditMXCmd) Execute ¶
func (cmd *DNSEditMXCmd) Execute(args []string) error
Execute MX record modification.
type DNSEditNSCmd ¶
type DNSEditNSCmd struct {
Args DNSEditArgs `positional-args:"true"`
}
DNSEditNSCmd arguments.
func (*DNSEditNSCmd) Execute ¶
func (cmd *DNSEditNSCmd) Execute(args []string) error
Execute NS record modification.
type DNSEditSOACmd ¶
type DNSEditSOACmd struct { Args struct { Domain string `required:"true" positional-arg-name:"DOMAIN" description:"Domain name."` Person string `required:"true" positional-arg-name:"PERSON" description:"Responsible person's e-mail."` Refresh int64 `` /* 160-byte string literal not displayed */ Retry int64 `positional-arg-name:"RETRY" description:"Seconds between retries for failed refreshes. Minimum 7200 (2 hours)."` Expire int64 `` /* 134-byte string literal not displayed */ TTL int64 `` /* 149-byte string literal not displayed */ } }
DNSEditSOACmd arguments.
func (*DNSEditSOACmd) Execute ¶
func (cmd *DNSEditSOACmd) Execute(args []string) error
Execute SOA (Start of Authority) record modification.
type DNSEditSRVCmd ¶
type DNSEditSRVCmd struct { Args struct { Domain string `required:"true" positional-arg-name:"DOMAIN" description:"Domain name."` Old string `required:"true" positional-arg-name:"OLDIP" description:"IP address to change from."` New string `required:"true" positional-arg-name:"NEWIP" description:"New IP address."` Host string `` /* 143-byte string literal not displayed */ TTL int64 `positional-arg-name:"TTL" description:"Time to live (seconds)."` Priority uint `positional-arg-name:"PRIORITY" description:"Priority of record. Default is 0 (most important)."` Port uint `positional-arg-name:"PORT" description:"Port number of the service."` Weight uint `positional-arg-name:"WEIGHT" description:"Relative weight for records with the same priority."` } `positional-args:"true"` }
DNSEditSRVCmd arguments.
func (*DNSEditSRVCmd) Execute ¶
func (cmd *DNSEditSRVCmd) Execute(args []string) error
Execute SRV record modification.
type DNSEditTXTCmd ¶
type DNSEditTXTCmd struct {
Args DNSEditArgs `positional-args:"true"`
}
DNSEditTXTCmd arguments.
func (*DNSEditTXTCmd) Execute ¶
func (cmd *DNSEditTXTCmd) Execute(args []string) error
Execute TXT record modification.
type DNSGetAAAACmd ¶
type DNSGetAAAACmd struct {
Args DNSGetArgs `positional-args:"true"`
}
DNSGetAAAACmd arguments.
func (*DNSGetAAAACmd) Execute ¶
func (cmd *DNSGetAAAACmd) Execute(args []string) error
Execute AAAA record fetch.
type DNSGetACmd ¶
type DNSGetACmd struct {
Args DNSGetArgs `positional-args:"true"`
}
DNSGetACmd arguments.
func (*DNSGetACmd) Execute ¶
func (cmd *DNSGetACmd) Execute(args []string) error
Execute A record fetch.
type DNSGetAllCmd ¶
type DNSGetAllCmd struct { Args struct { Domain string `required:"true" positional-arg-name:"DOMAIN" description:"Domain name."` } `positional-args:"true"` }
DNSGetAllCmd arguments.
func (*DNSGetAllCmd) Execute ¶
func (cmd *DNSGetAllCmd) Execute(args []string) error
Execute a complete record fetch for the domain.
type DNSGetArgs ¶
type DNSGetArgs struct { Domain string `required:"true" positional-arg-name:"DOMAIN" description:"Domain name."` Value string `positional-arg-name:"VALUE" description:"IP address, or FQDN for CNAME."` Host string `positional-arg-name:"HOST" description:"Host name."` }
DNSGetArgs are the default arguments for record-fetching sub-commands.
type DNSGetCNAMECmd ¶
type DNSGetCNAMECmd struct {
Args DNSGetArgs `positional-args:"true"`
}
DNSGetCNAMECmd arguments.
func (*DNSGetCNAMECmd) Execute ¶
func (cmd *DNSGetCNAMECmd) Execute(args []string) error
Execute CNAME record fetch.
type DNSGetCmd ¶
type DNSGetCmd struct { A DNSGetACmd `command:"a" description:"Get A records for a domain." alias:"A"` AAAA DNSGetAAAACmd `command:"aaaa" description:"Get AAAA records for a domain." alias:"AAAA"` CNAME DNSGetCNAMECmd `command:"cname" description:"Get CNAME records for a domain." alias:"CNAME"` MX DNSGetMXCmd `command:"mx" description:"Get MX records for a domain." alias:"MX"` NS DNSGetNSCmd `command:"ns" description:"Get NS records for a domain." alias:"NS"` TXT DNSGetTXTCmd `command:"txt" description:"Get TXT records for a domain." alias:"TXT"` SRV DNSGetSRVCmd `command:"srv" description:"Get SRV records for a domain." alias:"SRV"` All DNSGetAllCmd `command:"all" description:"Get all records for a domain."` }
DNSGetCmd arguments.
type DNSGetMXCmd ¶
type DNSGetMXCmd struct {
Args DNSGetArgs `positional-args:"true"`
}
DNSGetMXCmd arguments.
func (*DNSGetMXCmd) Execute ¶
func (cmd *DNSGetMXCmd) Execute(args []string) error
Execute MX record fetch.
type DNSGetNSCmd ¶
type DNSGetNSCmd struct {
Args DNSGetArgs `positional-args:"true"`
}
DNSGetNSCmd arguments.
func (*DNSGetNSCmd) Execute ¶
func (cmd *DNSGetNSCmd) Execute(args []string) error
Execute NS record fetch.
type DNSGetSRVCmd ¶
type DNSGetSRVCmd struct {
Args DNSGetArgs `positional-args:"true"`
}
DNSGetSRVCmd arguments.
func (*DNSGetSRVCmd) Execute ¶
func (cmd *DNSGetSRVCmd) Execute(args []string) error
Execute SRV record fetch.
type DNSGetTXTCmd ¶
type DNSGetTXTCmd struct {
Args DNSGetArgs `positional-args:"true"`
}
DNSGetTXTCmd arguments.
func (*DNSGetTXTCmd) Execute ¶
func (cmd *DNSGetTXTCmd) Execute(args []string) error
Execute TXT record fetch.
type DNSNukeCmd ¶
type DNSNukeCmd struct { Args struct { Domain string `required:"true" positional-arg-name:"DOMAIN" description:"Domain name to clean out."` } `positional-args:"true"` }
DNSNukeCmd arguments.
func (*DNSNukeCmd) Execute ¶
func (cmd *DNSNukeCmd) Execute(args []string) error
Execute the nuclear option.
type DNSStatusCmd ¶
type DNSStatusCmd struct { Args struct { ID string `required:"true" positional-arg-name:"ID" description:"Domain order ID."` } `positional-args:"true"` }
DNSStatusCmd arguments.
func (*DNSStatusCmd) Execute ¶
func (cmd *DNSStatusCmd) Execute(args []string) error
Execute the status command.