Documentation ¶
Index ¶
- Constants
- Variables
- func GetIPAddressFromRef(ref string) string
- type Bool
- type CapacityReport
- type Connector
- func (c *Connector) CreateObject(obj IBObject) (ref string, err error)
- func (c *Connector) DeleteObject(ref string) (refRes string, err error)
- func (c *Connector) GetObject(obj IBObject, ref string, queryParams *QueryParams, res interface{}) (err error)
- func (c *Connector) Logout() (err error)
- func (c *Connector) UpdateObject(obj IBObject, ref string) (refRes string, err error)
- type EA
- type EADefListValue
- type EADefinition
- type EASearch
- type FixedAddress
- type Grid
- type HostConfig
- type HostRecord
- type HostRecordIpv4Addr
- type HostRecordIpv6Addr
- type HttpRequestBuilder
- type HttpRequestor
- type IBBase
- type IBConnector
- type IBObject
- type IBObjectManager
- type Ipv6Setting
- type LanHaPortSetting
- type License
- type Lock
- type Member
- type MultiRequest
- type NTPSetting
- type NTPserver
- type NameServer
- type Network
- type NetworkContainer
- type NetworkSetting
- type NetworkView
- type NetworkViewLock
- type NodeInfo
- type NotFoundError
- type ObjectManager
- func (objMgr *ObjectManager) AllocateIP(netview string, cidr string, ipAddr string, isIPv6 bool, macOrDuid string, ...) (*FixedAddress, error)
- func (objMgr *ObjectManager) AllocateNetwork(netview string, cidr string, isIPv6 bool, prefixLen uint, comment string, ...) (network *Network, err error)
- func (objMgr *ObjectManager) CreateAAAARecord(netView string, dnsView string, recordName string, cidr string, ipAddr string, ...) (*RecordAAAA, error)
- func (objMgr *ObjectManager) CreateARecord(netView string, dnsView string, name string, cidr string, ipAddr string, ...) (*RecordA, error)
- func (objMgr *ObjectManager) CreateCNAMERecord(dnsview string, canonical string, recordname string, useTtl bool, ttl uint32, ...) (*RecordCNAME, error)
- func (objMgr *ObjectManager) CreateDefaultNetviews(globalNetview string, localNetview string) (globalNetviewRef string, localNetviewRef string, err error)
- func (objMgr *ObjectManager) CreateEADefinition(eadef EADefinition) (*EADefinition, error)
- func (objMgr *ObjectManager) CreateHostRecord(enabledns bool, enabledhcp bool, recordName string, netview string, ...) (*HostRecord, error)
- func (objMgr *ObjectManager) CreateMultiObject(req *MultiRequest) ([]map[string]interface{}, error)
- func (objMgr *ObjectManager) CreateNetwork(netview string, cidr string, isIPv6 bool, comment string, eas EA) (*Network, error)
- func (objMgr *ObjectManager) CreateNetworkContainer(netview string, cidr string, isIPv6 bool, comment string, eas EA) (*NetworkContainer, error)
- func (objMgr *ObjectManager) CreateNetworkView(name string, comment string, setEas EA) (*NetworkView, error)
- func (objMgr *ObjectManager) CreatePTRRecord(networkView string, dnsView string, ptrdname string, recordName string, ...) (*RecordPTR, error)
- func (objMgr *ObjectManager) CreateTXTRecord(recordname string, text string, ttl uint, dnsview string) (*RecordTXT, error)
- func (objMgr *ObjectManager) CreateZoneAuth(fqdn string, eas EA) (*ZoneAuth, error)
- func (objMgr *ObjectManager) CreateZoneDelegated(fqdn string, delegate_to []NameServer) (*ZoneDelegated, error)
- func (objMgr *ObjectManager) DeleteAAAARecord(ref string) (string, error)
- func (objMgr *ObjectManager) DeleteARecord(ref string) (string, error)
- func (objMgr *ObjectManager) DeleteCNAMERecord(ref string) (string, error)
- func (objMgr *ObjectManager) DeleteFixedAddress(ref string) (string, error)
- func (objMgr *ObjectManager) DeleteHostRecord(ref string) (string, error)
- func (objMgr *ObjectManager) DeleteNetwork(ref string) (string, error)
- func (objMgr *ObjectManager) DeleteNetworkContainer(ref string) (string, error)
- func (objMgr *ObjectManager) DeleteNetworkView(ref string) (string, error)
- func (objMgr *ObjectManager) DeletePTRRecord(ref string) (string, error)
- func (objMgr *ObjectManager) DeleteTXTRecord(ref string) (string, error)
- func (objMgr *ObjectManager) DeleteZoneAuth(ref string) (string, error)
- func (objMgr *ObjectManager) DeleteZoneDelegated(ref string) (string, error)
- func (objMgr *ObjectManager) GetAAAARecord(dnsview string, recordName string, ipAddr string) (*RecordAAAA, error)
- func (objMgr *ObjectManager) GetAAAARecordByRef(ref string) (*RecordAAAA, error)
- func (objMgr *ObjectManager) GetARecord(dnsview string, recordName string, ipAddr string) (*RecordA, error)
- func (objMgr *ObjectManager) GetARecordByRef(ref string) (*RecordA, error)
- func (objMgr *ObjectManager) GetAllMembers() ([]Member, error)
- func (objMgr *ObjectManager) GetCNAMERecord(dnsview string, canonical string, recordName string) (*RecordCNAME, error)
- func (objMgr *ObjectManager) GetCNAMERecordByRef(ref string) (*RecordCNAME, error)
- func (objMgr *ObjectManager) GetCapacityReport(name string) ([]CapacityReport, error)
- func (objMgr *ObjectManager) GetEADefinition(name string) (*EADefinition, error)
- func (objMgr *ObjectManager) GetFixedAddress(netview string, cidr string, ipAddr string, isIpv6 bool, macOrDuid string) (*FixedAddress, error)
- func (objMgr *ObjectManager) GetFixedAddressByRef(ref string) (*FixedAddress, error)
- func (objMgr *ObjectManager) GetGridInfo() ([]Grid, error)
- func (objMgr *ObjectManager) GetGridLicense() ([]License, error)
- func (objMgr *ObjectManager) GetHostRecord(netview string, dnsview string, recordName string, ipv4addr string, ...) (*HostRecord, error)
- func (objMgr *ObjectManager) GetHostRecordByRef(ref string) (*HostRecord, error)
- func (objMgr *ObjectManager) GetIpAddressFromHostRecord(host HostRecord) (string, error)
- func (objMgr *ObjectManager) GetLicense() ([]License, error)
- func (objMgr *ObjectManager) GetNetwork(netview string, cidr string, isIPv6 bool, ea EA) (*Network, error)
- func (objMgr *ObjectManager) GetNetworkByRef(ref string) (*Network, error)
- func (objMgr *ObjectManager) GetNetworkContainer(netview string, cidr string, isIPv6 bool, eaSearch EA) (*NetworkContainer, error)
- func (objMgr *ObjectManager) GetNetworkContainerByRef(ref string) (*NetworkContainer, error)
- func (objMgr *ObjectManager) GetNetworkView(name string) (*NetworkView, error)
- func (objMgr *ObjectManager) GetNetworkViewByRef(ref string) (*NetworkView, error)
- func (objMgr *ObjectManager) GetPTRRecord(dnsview string, ptrdname string, recordName string, ipAddr string) (*RecordPTR, error)
- func (objMgr *ObjectManager) GetPTRRecordByRef(ref string) (*RecordPTR, error)
- func (objMgr *ObjectManager) GetTXTRecord(name string) (*RecordTXT, error)
- func (objMgr *ObjectManager) GetTXTRecordByRef(ref string) (*RecordTXT, error)
- func (objMgr *ObjectManager) GetUpgradeStatus(statusType string) ([]UpgradeStatus, error)
- func (objMgr *ObjectManager) GetZoneAuth() ([]ZoneAuth, error)
- func (objMgr *ObjectManager) GetZoneAuthByRef(ref string) (*ZoneAuth, error)
- func (objMgr *ObjectManager) GetZoneDelegated(fqdn string) (*ZoneDelegated, error)
- func (objMgr *ObjectManager) ReleaseIP(netview string, cidr string, ipAddr string, isIpv6 bool, macOrDuid string) (string, error)
- func (objMgr *ObjectManager) UpdateAAAARecord(ref string, netView string, recordName string, ipAddr string, cidr string, ...) (*RecordAAAA, error)
- func (objMgr *ObjectManager) UpdateARecord(ref string, name string, ipAddr string, cidr string, netView string, ...) (*RecordA, error)
- func (objMgr *ObjectManager) UpdateCNAMERecord(ref string, canonical string, recordName string, useTtl bool, ttl uint32, ...) (*RecordCNAME, error)
- func (objMgr *ObjectManager) UpdateFixedAddress(fixedAddrRef string, netview string, name string, cidr string, ipAddr string, ...) (*FixedAddress, error)
- func (objMgr *ObjectManager) UpdateHostRecord(hostRref string, enabledns bool, enabledhcp bool, name string, netView string, ...) (*HostRecord, error)
- func (objMgr *ObjectManager) UpdateNetwork(ref string, setEas EA, comment string) (*Network, error)
- func (objMgr *ObjectManager) UpdateNetworkContainer(ref string, setEas EA, comment string) (*NetworkContainer, error)
- func (objMgr *ObjectManager) UpdateNetworkView(ref string, name string, comment string, setEas EA) (*NetworkView, error)
- func (objMgr *ObjectManager) UpdatePTRRecord(ref string, netview string, ptrdname string, name string, cidr string, ...) (*RecordPTR, error)
- func (objMgr *ObjectManager) UpdateTXTRecord(recordname string, text string) (*RecordTXT, error)
- func (objMgr *ObjectManager) UpdateZoneDelegated(ref string, delegate_to []NameServer) (*ZoneDelegated, error)
- type PhysicalPortSetting
- type QueryParams
- type RecordA
- type RecordAAAA
- type RecordCNAME
- type RecordNS
- type RecordPTR
- type RecordTXT
- type RequestBody
- type RequestType
- type ServiceStatus
- type SingleRequest
- type SubElementsStatus
- type TransportConfig
- type UpgradeStatus
- type UserProfile
- type WapiHttpRequestor
- type WapiRequestBuilder
- func (wrb *WapiRequestBuilder) BuildBody(t RequestType, obj IBObject) []byte
- func (wrb *WapiRequestBuilder) BuildRequest(t RequestType, obj IBObject, ref string, queryParams *QueryParams) (req *http.Request, err error)
- func (wrb *WapiRequestBuilder) BuildUrl(t RequestType, objType string, ref string, returnFields []string, ...) (urlStr string)
- func (wrb *WapiRequestBuilder) Init(cfg HostConfig)
- type ZoneAuth
- type ZoneDelegated
- type ZoneNameServer
Constants ¶
const MACADDR_ZERO = "00:00:00:00:00:00"
Variables ¶
var ValidateConnector = validateConnector
Functions ¶
func GetIPAddressFromRef ¶
Types ¶
type CapacityReport ¶
type CapacityReport struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` Name string `json:"name,omitempty"` HardwareType string `json:"hardware_type,omitempty"` MaxCapacity int `json:"max_capacity,omitempty"` ObjectCount []map[string]interface{} `json:"object_counts,omitempty"` PercentUsed int `json:"percent_used,omitempty"` Role string `json:"role,omitempty"` TotalObjects int `json:"total_objects,omitempty"` }
CapacityReport represents capacityreport object
func NewCapcityReport ¶
func NewCapcityReport(capReport CapacityReport) *CapacityReport
type Connector ¶
type Connector struct { HostConfig HostConfig TransportConfig TransportConfig RequestBuilder HttpRequestBuilder Requestor HttpRequestor }
func NewConnector ¶
func NewConnector(hostConfig HostConfig, transportConfig TransportConfig, requestBuilder HttpRequestBuilder, requestor HttpRequestor) (res *Connector, err error)
func (*Connector) CreateObject ¶
func (*Connector) DeleteObject ¶
func (*Connector) GetObject ¶
func (c *Connector) GetObject( obj IBObject, ref string, queryParams *QueryParams, res interface{}) (err error)
TODO: distinguish between "not found" and other kinds of errors.
type EADefListValue ¶
type EADefListValue string
func (EADefListValue) MarshalJSON ¶
func (v EADefListValue) MarshalJSON() ([]byte, error)
func (*EADefListValue) UnmarshalJSON ¶
func (v *EADefListValue) UnmarshalJSON(b []byte) (err error)
type EADefinition ¶
type EADefinition struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` Comment string `json:"comment"` Flags string `json:"flags,omitempty"` ListValues []EADefListValue `json:"list_values,omitempty"` Name string `json:"name,omitempty"` Type string `json:"type,omitempty"` AllowedObjectTypes []string `json:"allowed_object_types,omitempty"` }
func NewEADefinition ¶
func NewEADefinition(eadef EADefinition) *EADefinition
type FixedAddress ¶
type FixedAddress struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` NetviewName string `json:"network_view,omitempty"` Cidr string `json:"network,omitempty"` Comment string `json:"comment"` IPv4Address string `json:"ipv4addr,omitempty"` IPv6Address string `json:"ipv6addr,omitempty"` Duid string `json:"duid,omitempty"` Mac string `json:"mac,omitempty"` Name string `json:"name,omitempty"` MatchClient string `json:"match_client,omitempty"` Ea EA `json:"extattrs"` }
func NewEmptyFixedAddress ¶
func NewEmptyFixedAddress(isIPv6 bool) *FixedAddress
type Grid ¶
type Grid struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` Name string `json:"name,omitempty"` NTPSetting *NTPSetting `json:"ntp_setting,omitempty"` }
type HostConfig ¶
type HostRecord ¶
type HostRecord struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` Ipv4Addr string `json:"ipv4addr,omitempty"` Ipv4Addrs []HostRecordIpv4Addr `json:"ipv4addrs,omitempty"` Ipv6Addr string `json:"ipv6addr,omitempty"` Ipv6Addrs []HostRecordIpv6Addr `json:"ipv6addrs,omitempty"` Name string `json:"name,omitempty"` View string `json:"view,omitempty"` Zone string `json:"zone,omitempty"` EnableDns bool `json:"configure_for_dns"` NetworkView string `json:"network_view,omitempty"` Comment string `json:"comment"` Ea EA `json:"extattrs"` UseTtl bool `json:"use_ttl"` Ttl uint32 `json:"ttl"` Aliases []string `json:"aliases,omitempty"` }
func NewEmptyHostRecord ¶
func NewEmptyHostRecord() *HostRecord
func NewHostRecord ¶
type HostRecordIpv4Addr ¶
type HostRecordIpv4Addr struct { IBBase `json:"-"` Ipv4Addr string `json:"ipv4addr,omitempty"` Ref string `json:"_ref,omitempty"` Mac string `json:"mac,omitempty"` View string `json:"view,omitempty"` Cidr string `json:"network,omitempty"` EnableDhcp bool `json:"configure_for_dhcp"` }
func NewEmptyHostRecordIpv4Addr ¶
func NewEmptyHostRecordIpv4Addr() *HostRecordIpv4Addr
func NewHostRecordIpv4Addr ¶
func NewHostRecordIpv4Addr( ipAddr string, macAddr string, enableDhcp bool, ref string) *HostRecordIpv4Addr
type HostRecordIpv6Addr ¶
type HostRecordIpv6Addr struct { IBBase `json:"-"` Ipv6Addr string `json:"ipv6addr,omitempty"` Ref string `json:"_ref,omitempty"` Duid string `json:"duid,omitempty"` View string `json:"view,omitempty"` Cidr string `json:"network,omitempty"` EnableDhcp bool `json:"configure_for_dhcp"` }
func NewEmptyHostRecordIpv6Addr ¶
func NewEmptyHostRecordIpv6Addr() *HostRecordIpv6Addr
func NewHostRecordIpv6Addr ¶
func NewHostRecordIpv6Addr( ipAddr string, duid string, enableDhcp bool, ref string) *HostRecordIpv6Addr
type HttpRequestBuilder ¶
type HttpRequestBuilder interface { Init(HostConfig) BuildUrl(r RequestType, objType string, ref string, returnFields []string, queryParams *QueryParams) (urlStr string) BuildBody(r RequestType, obj IBObject) (jsonStr []byte) BuildRequest(r RequestType, obj IBObject, ref string, queryParams *QueryParams) (req *http.Request, err error) }
type HttpRequestor ¶
type HttpRequestor interface { Init(TransportConfig) SendRequest(*http.Request) ([]byte, error) }
type IBBase ¶
type IBBase struct {
// contains filtered or unexported fields
}
func (*IBBase) ObjectType ¶
func (*IBBase) ReturnFields ¶
type IBConnector ¶
type IBObjectManager ¶
type IBObjectManager interface { AllocateIP(netview string, cidr string, ipAddr string, isIPv6 bool, macOrDuid string, name string, comment string, eas EA) (*FixedAddress, error) AllocateNetwork(netview string, cidr string, isIPv6 bool, prefixLen uint, comment string, eas EA) (network *Network, err error) CreateARecord(netView string, dnsView string, name string, cidr string, ipAddr string, ttl uint32, useTTL bool, comment string, ea EA) (*RecordA, error) CreateAAAARecord(netView string, dnsView string, recordName string, cidr string, ipAddr string, useTtl bool, ttl uint32, comment string, eas EA) (*RecordAAAA, error) CreateZoneAuth(fqdn string, ea EA) (*ZoneAuth, error) CreateCNAMERecord(dnsview string, canonical string, recordname string, useTtl bool, ttl uint32, comment string, eas EA) (*RecordCNAME, error) CreateDefaultNetviews(globalNetview string, localNetview string) (globalNetviewRef string, localNetviewRef string, err error) CreateEADefinition(eadef EADefinition) (*EADefinition, error) CreateHostRecord(enabledns bool, enabledhcp bool, recordName string, netview string, dnsview string, ipv4cidr string, ipv6cidr string, ipv4Addr string, ipv6Addr string, macAddr string, duid string, useTtl bool, ttl uint32, comment string, eas EA, aliases []string) (*HostRecord, error) CreateNetwork(netview string, cidr string, isIPv6 bool, comment string, eas EA) (*Network, error) CreateNetworkContainer(netview string, cidr string, isIPv6 bool, comment string, eas EA) (*NetworkContainer, error) CreateNetworkView(name string, comment string, setEas EA) (*NetworkView, error) CreatePTRRecord(networkView string, dnsView string, ptrdname string, recordName string, cidr string, ipAddr string, useTtl bool, ttl uint32, comment string, eas EA) (*RecordPTR, error) CreateTXTRecord(recordname string, text string, ttl uint, dnsview string) (*RecordTXT, error) CreateZoneDelegated(fqdn string, delegate_to []NameServer) (*ZoneDelegated, error) DeleteARecord(ref string) (string, error) DeleteAAAARecord(ref string) (string, error) DeleteZoneAuth(ref string) (string, error) DeleteCNAMERecord(ref string) (string, error) DeleteFixedAddress(ref string) (string, error) DeleteHostRecord(ref string) (string, error) DeleteNetwork(ref string) (string, error) DeleteNetworkContainer(ref string) (string, error) DeleteNetworkView(ref string) (string, error) DeletePTRRecord(ref string) (string, error) DeleteTXTRecord(ref string) (string, error) DeleteZoneDelegated(ref string) (string, error) GetARecordByRef(ref string) (*RecordA, error) GetARecord(dnsview string, recordName string, ipAddr string) (*RecordA, error) GetAAAARecord(dnsview string, recordName string, ipAddr string) (*RecordAAAA, error) GetAAAARecordByRef(ref string) (*RecordAAAA, error) GetCNAMERecord(dnsview string, canonical string, recordName string) (*RecordCNAME, error) GetCNAMERecordByRef(ref string) (*RecordCNAME, error) GetEADefinition(name string) (*EADefinition, error) GetFixedAddress(netview string, cidr string, ipAddr string, isIPv6 bool, macOrDuid string) (*FixedAddress, error) GetFixedAddressByRef(ref string) (*FixedAddress, error) GetHostRecord(netview string, dnsview string, recordName string, ipv4addr string, ipv6addr string) (*HostRecord, error) GetHostRecordByRef(ref string) (*HostRecord, error) GetIpAddressFromHostRecord(host HostRecord) (string, error) GetNetwork(netview string, cidr string, isIPv6 bool, ea EA) (*Network, error) GetNetworkByRef(ref string) (*Network, error) GetNetworkContainer(netview string, cidr string, isIPv6 bool, eaSearch EA) (*NetworkContainer, error) GetNetworkContainerByRef(ref string) (*NetworkContainer, error) GetNetworkView(name string) (*NetworkView, error) GetNetworkViewByRef(ref string) (*NetworkView, error) GetPTRRecord(dnsview string, ptrdname string, recordName string, ipAddr string) (*RecordPTR, error) GetPTRRecordByRef(ref string) (*RecordPTR, error) GetZoneAuthByRef(ref string) (*ZoneAuth, error) GetZoneDelegated(fqdn string) (*ZoneDelegated, error) GetCapacityReport(name string) ([]CapacityReport, error) GetUpgradeStatus(statusType string) ([]UpgradeStatus, error) GetAllMembers() ([]Member, error) GetGridInfo() ([]Grid, error) GetGridLicense() ([]License, error) ReleaseIP(netview string, cidr string, ipAddr string, isIPv6 bool, macAddr string) (string, error) UpdateAAAARecord(ref string, netView string, recordName string, cidr string, ipAddr string, useTtl bool, ttl uint32, comment string, setEas EA) (*RecordAAAA, error) UpdateCNAMERecord(ref string, canonical string, recordName string, useTtl bool, ttl uint32, comment string, setEas EA) (*RecordCNAME, error) UpdateFixedAddress(fixedAddrRef string, netview string, name string, cidr string, ipAddr string, matchclient string, macOrDuid string, comment string, eas EA) (*FixedAddress, error) UpdateHostRecord(hostRref string, enabledns bool, enabledhcp bool, name string, netview string, ipv4cidr string, ipv6cidr string, ipv4Addr string, ipv6Addr string, macAddress string, duid string, useTtl bool, ttl uint32, comment string, eas EA, aliases []string) (*HostRecord, error) UpdateNetwork(ref string, setEas EA, comment string) (*Network, error) UpdateNetworkContainer(ref string, setEas EA, comment string) (*NetworkContainer, error) UpdateNetworkView(ref string, name string, comment string, setEas EA) (*NetworkView, error) UpdatePTRRecord(ref string, netview string, ptrdname string, name string, cidr string, ipAddr string, useTtl bool, ttl uint32, comment string, setEas EA) (*RecordPTR, error) UpdateARecord(ref string, name string, ipAddr string, cidr string, netview string, ttl uint32, useTTL bool, comment string, eas EA) (*RecordA, error) UpdateZoneDelegated(ref string, delegate_to []NameServer) (*ZoneDelegated, error) }
func NewObjectManager ¶
func NewObjectManager(connector IBConnector, cmpType string, tenantID string) IBObjectManager
type Ipv6Setting ¶
type Ipv6Setting struct { AutoRouterConfigEnabled bool `json:"auto_router_config_enabled"` CidrPrefix uint `json:"cidr_prefix,omitempty"` Dscp uint `json:"dscp,omitempty"` Enabled bool `json:"enabled,omitempty"` Gateway string `json:"gateway"` Primary string `json:"primary,omitempty"` VirtualIp string `json:"virtual_ip"` VlanId uint `json:"vlan_id,emitempty"` UseDscp bool `json:"use_dscp,omitempty"` }
type LanHaPortSetting ¶
type LanHaPortSetting struct { HAIpAddress string `json:"ha_ip_address,omitempty"` HaPortSetting PhysicalPortSetting `json:"ha_port_setting,omitempty"` LanPortSetting PhysicalPortSetting `json:"lan_port_setting,omitempty"` MgmtIpv6addr string `json:"mgmt_ipv6addr,omitempty"` MgmtLan string `json:"mgmt_lan,omitempty"` }
type License ¶
type License struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` ExpirationStatus string `json:"expiration_status,omitempty"` ExpiryDate int `json:"expiry_date,omitempty"` HwID string `json:"hwid,omitempty"` Key string `json:"key,omitempty"` Kind string `json:"kind,omitempty"` Limit string `json:"limit,omitempty"` LimitContext string `json:"limit_context,omitempty"` Licensetype string `json:"type,omitempty"` }
License represents license wapi object
func NewGridLicense ¶
func NewLicense ¶
type Member ¶
type Member struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` HostName string `json:"host_name,omitempty"` ConfigAddrType string `json:"config_addr_type,omitempty"` PLATFORM string `json:"platform,omitempty"` ServiceTypeConfiguration string `json:"service_type_configuration,omitempty"` Nodeinfo []NodeInfo `json:"node_info,omitempty"` TimeZone string `json:"time_zone,omitempty"` }
Member represents NIOS member
type MultiRequest ¶
type MultiRequest struct { IBBase `json:"-"` Body []*RequestBody }
func NewMultiRequest ¶
func NewMultiRequest(body []*RequestBody) *MultiRequest
func (*MultiRequest) MarshalJSON ¶
func (r *MultiRequest) MarshalJSON() ([]byte, error)
type NTPSetting ¶
type NTPserver ¶
type NTPserver struct { Address string `json:"address,omitempty"` Burst bool `json:"burst,omitempty"` EnableAuthentication bool `json:"enable_authentication,omitempty"` IBurst bool `json:"iburst,omitempty"` NTPKeyNumber uint `json:"ntp_key_number,omitempty"` Preffered bool `json:"preffered,omitempty"` }
type NameServer ¶
type Network ¶
type Network struct { IBBase Ref string `json:"_ref,omitempty"` NetviewName string `json:"network_view,omitempty"` Cidr string `json:"network,omitempty"` Ea EA `json:"extattrs"` Comment string `json:"comment"` }
func BuildIPv6NetworkFromRef ¶
func BuildNetworkFromRef ¶
type NetworkContainer ¶
type NetworkContainer struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` NetviewName string `json:"network_view,omitempty"` Cidr string `json:"network,omitempty"` Comment string `json:"comment"` Ea EA `json:"extattrs"` }
func NewNetworkContainer ¶
func NewNetworkContainer(netview, cidr string, isIPv6 bool, comment string, ea EA) *NetworkContainer
type NetworkSetting ¶
type NetworkView ¶
type NetworkView struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` Name string `json:"name,omitempty"` Comment string `json:"comment"` Ea EA `json:"extattrs"` }
func BuildNetworkViewFromRef ¶
func BuildNetworkViewFromRef(ref string) *NetworkView
func NewEmptyNetworkView ¶
func NewEmptyNetworkView() *NetworkView
func NewNetworkView ¶
func NewNetworkView(name string, comment string, eas EA, ref string) *NetworkView
type NetworkViewLock ¶
type NetworkViewLock struct { Name string ObjMgr *ObjectManager LockEA string LockTimeoutEA string }
func (*NetworkViewLock) Lock ¶
func (l *NetworkViewLock) Lock() error
func (*NetworkViewLock) UnLock ¶
func (l *NetworkViewLock) UnLock(force bool) error
type NodeInfo ¶
type NodeInfo struct { HaStatus string `json:"ha_status,omitempty"` HwId string `json:"hwid,omitempty"` HwModel string `json:"hwmodel,omitempty"` HwPlatform string `json:"hwplatform,omitempty"` HwType string `json:"hwtype,omitempty"` Lan2PhysicalSetting PhysicalPortSetting `json:"lan2_physical_setting,omitempty"` LanHaPortSetting LanHaPortSetting `json:"lan_ha_Port_Setting,omitempty"` MgmtNetworkSetting NetworkSetting `json:"mgmt_network_setting,omitempty"` MgmtPhysicalSetting PhysicalPortSetting `json:"mgmt_physical_setting,omitempty"` PaidNios bool `json:"paid_nios,omitempty"` PhysicalOid string `json:"physical_oid,omitempty"` ServiceStatus []ServiceStatus `json:"service_status,omitempty"` V6MgmtNetworkSetting Ipv6Setting `json:"v6_mgmt_network_setting,omitempty"` }
type NotFoundError ¶
type NotFoundError struct {
// contains filtered or unexported fields
}
func NewNotFoundError ¶
func NewNotFoundError(msg string) *NotFoundError
func (*NotFoundError) Error ¶
func (e *NotFoundError) Error() string
type ObjectManager ¶
type ObjectManager struct {
// contains filtered or unexported fields
}
func (*ObjectManager) AllocateIP ¶
func (*ObjectManager) AllocateNetwork ¶
func (*ObjectManager) CreateAAAARecord ¶
func (*ObjectManager) CreateARecord ¶
func (*ObjectManager) CreateCNAMERecord ¶
func (objMgr *ObjectManager) CreateCNAMERecord( dnsview string, canonical string, recordname string, useTtl bool, ttl uint32, comment string, eas EA) (*RecordCNAME, error)
func (*ObjectManager) CreateDefaultNetviews ¶
func (*ObjectManager) CreateEADefinition ¶
func (objMgr *ObjectManager) CreateEADefinition(eadef EADefinition) (*EADefinition, error)
func (*ObjectManager) CreateHostRecord ¶
func (objMgr *ObjectManager) CreateHostRecord( enabledns bool, enabledhcp bool, recordName string, netview string, dnsview string, ipv4cidr string, ipv6cidr string, ipv4Addr string, ipv6Addr string, macAddr string, duid string, useTtl bool, ttl uint32, comment string, eas EA, aliases []string) (*HostRecord, error)
func (*ObjectManager) CreateMultiObject ¶
func (objMgr *ObjectManager) CreateMultiObject(req *MultiRequest) ([]map[string]interface{}, error)
CreateMultiObject unmarshals the result into slice of maps
func (*ObjectManager) CreateNetwork ¶
func (*ObjectManager) CreateNetworkContainer ¶
func (objMgr *ObjectManager) CreateNetworkContainer(netview string, cidr string, isIPv6 bool, comment string, eas EA) (*NetworkContainer, error)
func (*ObjectManager) CreateNetworkView ¶
func (objMgr *ObjectManager) CreateNetworkView(name string, comment string, setEas EA) (*NetworkView, error)
func (*ObjectManager) CreatePTRRecord ¶
func (objMgr *ObjectManager) CreatePTRRecord( networkView string, dnsView string, ptrdname string, recordName string, cidr string, ipAddr string, useTtl bool, ttl uint32, comment string, eas EA) (*RecordPTR, error)
TODO check if the respective zone exists before creation of the record
func (*ObjectManager) CreateTXTRecord ¶
func (objMgr *ObjectManager) CreateTXTRecord(recordname string, text string, ttl uint, dnsview string) (*RecordTXT, error)
Creates TXT Record. Use TTL of 0 to inherit TTL from the Zone
func (*ObjectManager) CreateZoneAuth ¶
func (objMgr *ObjectManager) CreateZoneAuth( fqdn string, eas EA) (*ZoneAuth, error)
CreateZoneAuth creates zones and subs by passing fqdn
func (*ObjectManager) CreateZoneDelegated ¶
func (objMgr *ObjectManager) CreateZoneDelegated(fqdn string, delegate_to []NameServer) (*ZoneDelegated, error)
CreateZoneDelegated creates delegated zone
func (*ObjectManager) DeleteAAAARecord ¶
func (objMgr *ObjectManager) DeleteAAAARecord(ref string) (string, error)
func (*ObjectManager) DeleteARecord ¶
func (objMgr *ObjectManager) DeleteARecord(ref string) (string, error)
func (*ObjectManager) DeleteCNAMERecord ¶
func (objMgr *ObjectManager) DeleteCNAMERecord(ref string) (string, error)
func (*ObjectManager) DeleteFixedAddress ¶
func (objMgr *ObjectManager) DeleteFixedAddress(ref string) (string, error)
func (*ObjectManager) DeleteHostRecord ¶
func (objMgr *ObjectManager) DeleteHostRecord(ref string) (string, error)
func (*ObjectManager) DeleteNetwork ¶
func (objMgr *ObjectManager) DeleteNetwork(ref string) (string, error)
func (*ObjectManager) DeleteNetworkContainer ¶
func (objMgr *ObjectManager) DeleteNetworkContainer(ref string) (string, error)
func (*ObjectManager) DeleteNetworkView ¶
func (objMgr *ObjectManager) DeleteNetworkView(ref string) (string, error)
func (*ObjectManager) DeletePTRRecord ¶
func (objMgr *ObjectManager) DeletePTRRecord(ref string) (string, error)
func (*ObjectManager) DeleteTXTRecord ¶
func (objMgr *ObjectManager) DeleteTXTRecord(ref string) (string, error)
func (*ObjectManager) DeleteZoneAuth ¶
func (objMgr *ObjectManager) DeleteZoneAuth(ref string) (string, error)
DeleteZoneAuth deletes an auth zone
func (*ObjectManager) DeleteZoneDelegated ¶
func (objMgr *ObjectManager) DeleteZoneDelegated(ref string) (string, error)
DeleteZoneDelegated deletes delegated zone
func (*ObjectManager) GetAAAARecord ¶
func (objMgr *ObjectManager) GetAAAARecord(dnsview string, recordName string, ipAddr string) (*RecordAAAA, error)
func (*ObjectManager) GetAAAARecordByRef ¶
func (objMgr *ObjectManager) GetAAAARecordByRef(ref string) (*RecordAAAA, error)
func (*ObjectManager) GetARecord ¶
func (*ObjectManager) GetARecordByRef ¶
func (objMgr *ObjectManager) GetARecordByRef(ref string) (*RecordA, error)
func (*ObjectManager) GetAllMembers ¶
func (objMgr *ObjectManager) GetAllMembers() ([]Member, error)
GetAllMembers returns all members information
func (*ObjectManager) GetCNAMERecord ¶
func (objMgr *ObjectManager) GetCNAMERecord(dnsview string, canonical string, recordName string) (*RecordCNAME, error)
func (*ObjectManager) GetCNAMERecordByRef ¶
func (objMgr *ObjectManager) GetCNAMERecordByRef(ref string) (*RecordCNAME, error)
func (*ObjectManager) GetCapacityReport ¶
func (objMgr *ObjectManager) GetCapacityReport(name string) ([]CapacityReport, error)
GetCapacityReport returns all capacity for members
func (*ObjectManager) GetEADefinition ¶
func (objMgr *ObjectManager) GetEADefinition(name string) (*EADefinition, error)
func (*ObjectManager) GetFixedAddress ¶
func (objMgr *ObjectManager) GetFixedAddress(netview string, cidr string, ipAddr string, isIpv6 bool, macOrDuid string) (*FixedAddress, error)
func (*ObjectManager) GetFixedAddressByRef ¶
func (objMgr *ObjectManager) GetFixedAddressByRef(ref string) (*FixedAddress, error)
func (*ObjectManager) GetGridInfo ¶
func (objMgr *ObjectManager) GetGridInfo() ([]Grid, error)
GetGridInfo returns the details for grid
func (*ObjectManager) GetGridLicense ¶
func (objMgr *ObjectManager) GetGridLicense() ([]License, error)
GetLicense returns the license details for grid
func (*ObjectManager) GetHostRecord ¶
func (objMgr *ObjectManager) GetHostRecord(netview string, dnsview string, recordName string, ipv4addr string, ipv6addr string) (*HostRecord, error)
func (*ObjectManager) GetHostRecordByRef ¶
func (objMgr *ObjectManager) GetHostRecordByRef(ref string) (*HostRecord, error)
func (*ObjectManager) GetIpAddressFromHostRecord ¶
func (objMgr *ObjectManager) GetIpAddressFromHostRecord(host HostRecord) (string, error)
func (*ObjectManager) GetLicense ¶
func (objMgr *ObjectManager) GetLicense() ([]License, error)
GetLicense returns the license details for member
func (*ObjectManager) GetNetwork ¶
func (*ObjectManager) GetNetworkByRef ¶
func (objMgr *ObjectManager) GetNetworkByRef(ref string) (*Network, error)
func (*ObjectManager) GetNetworkContainer ¶
func (objMgr *ObjectManager) GetNetworkContainer(netview string, cidr string, isIPv6 bool, eaSearch EA) (*NetworkContainer, error)
TODO normalize IPv4 and IPv6 addresses
func (*ObjectManager) GetNetworkContainerByRef ¶
func (objMgr *ObjectManager) GetNetworkContainerByRef(ref string) (*NetworkContainer, error)
func (*ObjectManager) GetNetworkView ¶
func (objMgr *ObjectManager) GetNetworkView(name string) (*NetworkView, error)
func (*ObjectManager) GetNetworkViewByRef ¶
func (objMgr *ObjectManager) GetNetworkViewByRef(ref string) (*NetworkView, error)
func (*ObjectManager) GetPTRRecord ¶
func (*ObjectManager) GetPTRRecordByRef ¶
func (objMgr *ObjectManager) GetPTRRecordByRef(ref string) (*RecordPTR, error)
func (*ObjectManager) GetTXTRecord ¶
func (objMgr *ObjectManager) GetTXTRecord(name string) (*RecordTXT, error)
func (*ObjectManager) GetTXTRecordByRef ¶
func (objMgr *ObjectManager) GetTXTRecordByRef(ref string) (*RecordTXT, error)
func (*ObjectManager) GetUpgradeStatus ¶
func (objMgr *ObjectManager) GetUpgradeStatus(statusType string) ([]UpgradeStatus, error)
GetUpgradeStatus returns the grid upgrade information
func (*ObjectManager) GetZoneAuth ¶
func (objMgr *ObjectManager) GetZoneAuth() ([]ZoneAuth, error)
GetZoneAuth returns the authoritatives zones
func (*ObjectManager) GetZoneAuthByRef ¶
func (objMgr *ObjectManager) GetZoneAuthByRef(ref string) (*ZoneAuth, error)
Retreive a authortative zone by ref
func (*ObjectManager) GetZoneDelegated ¶
func (objMgr *ObjectManager) GetZoneDelegated(fqdn string) (*ZoneDelegated, error)
GetZoneDelegated returns the delegated zone
func (*ObjectManager) UpdateAAAARecord ¶
func (*ObjectManager) UpdateARecord ¶
func (*ObjectManager) UpdateCNAMERecord ¶
func (objMgr *ObjectManager) UpdateCNAMERecord( ref string, canonical string, recordName string, useTtl bool, ttl uint32, comment string, setEas EA) (*RecordCNAME, error)
func (*ObjectManager) UpdateFixedAddress ¶
func (*ObjectManager) UpdateHostRecord ¶
func (objMgr *ObjectManager) UpdateHostRecord( hostRref string, enabledns bool, enabledhcp bool, name string, netView string, ipv4cidr string, ipv6cidr string, ipv4Addr string, ipv6Addr string, macAddress string, duid string, useTtl bool, ttl uint32, comment string, eas EA, aliases []string) (*HostRecord, error)
func (*ObjectManager) UpdateNetwork ¶
func (objMgr *ObjectManager) UpdateNetwork( ref string, setEas EA, comment string) (*Network, error)
UpdateNetwork updates comment and EA parameters. EAs which exist will be updated, those which do exist but not in setEas map, will be deleted, EAs which do not exist will be created as new.
func (*ObjectManager) UpdateNetworkContainer ¶
func (objMgr *ObjectManager) UpdateNetworkContainer( ref string, setEas EA, comment string) (*NetworkContainer, error)
func (*ObjectManager) UpdateNetworkView ¶
func (objMgr *ObjectManager) UpdateNetworkView(ref string, name string, comment string, setEas EA) (*NetworkView, error)
func (*ObjectManager) UpdatePTRRecord ¶
func (*ObjectManager) UpdateTXTRecord ¶
func (objMgr *ObjectManager) UpdateTXTRecord(recordname string, text string) (*RecordTXT, error)
func (*ObjectManager) UpdateZoneDelegated ¶
func (objMgr *ObjectManager) UpdateZoneDelegated(ref string, delegate_to []NameServer) (*ZoneDelegated, error)
UpdateZoneDelegated updates delegated zone
type PhysicalPortSetting ¶
type QueryParams ¶
type QueryParams struct {
// contains filtered or unexported fields
}
This is a general struct to add query params used in makeRequest
func NewQueryParams ¶
func NewQueryParams(forceProxy bool, searchFields map[string]string) *QueryParams
type RecordA ¶
type RecordA struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` Ipv4Addr string `json:"ipv4addr,omitempty"` Name string `json:"name,omitempty"` View string `json:"view,omitempty"` Zone string `json:"zone,omitempty"` UseTtl bool `json:"use_ttl"` Ttl uint32 `json:"ttl"` Comment string `json:"comment"` Ea EA `json:"extattrs"` }
func NewEmptyRecordA ¶
func NewEmptyRecordA() *RecordA
type RecordAAAA ¶
type RecordAAAA struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` Ipv6Addr string `json:"ipv6addr,omitempty"` Name string `json:"name,omitempty"` View string `json:"view,omitempty"` Zone string `json:"zone,omitempty"` UseTtl bool `json:"use_ttl"` Ttl uint32 `json:"ttl"` Comment string `json:"comment"` Ea EA `json:"extattrs"` }
func NewEmptyRecordAAAA ¶
func NewEmptyRecordAAAA() *RecordAAAA
type RecordCNAME ¶
type RecordCNAME struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` Canonical string `json:"canonical,omitempty"` Name string `json:"name,omitempty"` View string `json:"view,omitempty"` Zone string `json:"zone,omitempty"` Ea EA `json:"extattrs"` Comment string `json:"comment"` UseTtl bool `json:"use_ttl"` Ttl uint32 `json:"ttl"` }
func NewEmptyRecordCNAME ¶
func NewEmptyRecordCNAME() *RecordCNAME
type RecordNS ¶
type RecordNS struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` Addresses []ZoneNameServer `json:"addresses,omitempty"` Name string `json:"name,omitempty"` Nameserver string `json:"nameserver,omitempty"` View string `json:"view,omitempty"` Zone string `json:"zone,omitempty"` }
func NewRecordNS ¶
type RecordPTR ¶
type RecordPTR struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` Ipv4Addr string `json:"ipv4addr,omitempty"` Ipv6Addr string `json:"ipv6addr,omitempty"` Name string `json:"name,omitempty"` PtrdName string `json:"ptrdname,omitempty"` View string `json:"view,omitempty"` Zone string `json:"zone,omitempty"` Ea EA `json:"extattrs"` UseTtl bool `json:"use_ttl"` Ttl uint32 `json:"ttl"` Comment string `json:"comment,omitempty"` }
func NewEmptyRecordPTR ¶
func NewEmptyRecordPTR() *RecordPTR
type RecordTXT ¶
type RecordTXT struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` Name string `json:"name,omitempty"` Text string `json:"text,omitempty"` Ttl uint `json:"ttl,omitempty"` View string `json:"view,omitempty"` Zone string `json:"zone,omitempty"` Ea EA `json:"extattrs,omitempty"` UseTtl bool `json:"use_ttl,omitempty"` }
func NewRecordTXT ¶
type RequestBody ¶
type RequestBody struct { Data map[string]interface{} `json:"data,omitempty"` Args map[string]string `json:"args,omitempty"` Method string `json:"method"` Object string `json:"object,omitempty"` EnableSubstitution bool `json:"enable_substitution,omitempty"` AssignState map[string]string `json:"assign_state,omitempty"` Discard bool `json:"discard,omitempty"` }
type ServiceStatus ¶
type SingleRequest ¶
type SingleRequest struct { IBBase `json:"-"` Body *RequestBody }
func NewRequest ¶
func NewRequest(body *RequestBody) *SingleRequest
type SubElementsStatus ¶
type SubElementsStatus struct { Ref string `json:"_ref,omitempty"` CurrentVersion string `json:"current_version"` ElementStatus string `json:"element_status"` Ipv4Address string `json:"ipv4_address"` Ipv6Address string `json:"ipv6_address"` StatusValue string `json:"status_value"` StepsTotal int `json:"steps_total"` StepsCompleted int `json:"steps_completed"` NodeType string `json:"type"` Member string `json:"member"` }
SubElementsStatus object representation
type TransportConfig ¶
type TransportConfig struct { SslVerify bool HttpRequestTimeout time.Duration // in seconds HttpPoolConnections int ProxyUrl *url.URL // contains filtered or unexported fields }
func NewTransportConfig ¶
func NewTransportConfig(sslVerify string, httpRequestTimeout int, httpPoolConnections int) (cfg TransportConfig)
type UpgradeStatus ¶
type UpgradeStatus struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` Type string `json:"type"` SubElementStatus []SubElementsStatus `json:"subelements_status,omitempty"` UpgradeGroup string `json:"upgrade_group,omitempty"` }
UpgradeStatus object representation
func NewUpgradeStatus ¶
func NewUpgradeStatus(upgradeStatus UpgradeStatus) *UpgradeStatus
type UserProfile ¶
type UserProfile struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` Name string `json:"name,omitempty"` }
func NewUserProfile ¶
func NewUserProfile(userprofile UserProfile) *UserProfile
type WapiHttpRequestor ¶
type WapiHttpRequestor struct {
// contains filtered or unexported fields
}
func (*WapiHttpRequestor) Init ¶
func (whr *WapiHttpRequestor) Init(cfg TransportConfig)
func (*WapiHttpRequestor) SendRequest ¶
func (whr *WapiHttpRequestor) SendRequest(req *http.Request) (res []byte, err error)
type WapiRequestBuilder ¶
type WapiRequestBuilder struct {
HostConfig HostConfig
}
func (*WapiRequestBuilder) BuildBody ¶
func (wrb *WapiRequestBuilder) BuildBody(t RequestType, obj IBObject) []byte
func (*WapiRequestBuilder) BuildRequest ¶
func (wrb *WapiRequestBuilder) BuildRequest(t RequestType, obj IBObject, ref string, queryParams *QueryParams) (req *http.Request, err error)
func (*WapiRequestBuilder) BuildUrl ¶
func (wrb *WapiRequestBuilder) BuildUrl(t RequestType, objType string, ref string, returnFields []string, queryParams *QueryParams) (urlStr string)
func (*WapiRequestBuilder) Init ¶
func (wrb *WapiRequestBuilder) Init(cfg HostConfig)
type ZoneAuth ¶
type ZoneAuth struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` Fqdn string `json:"fqdn,omitempty"` View string `json:"view,omitempty"` Ea EA `json:"extattrs"` }
func NewZoneAuth ¶
type ZoneDelegated ¶
type ZoneDelegated struct { IBBase `json:"-"` Ref string `json:"_ref,omitempty"` Fqdn string `json:"fqdn,omitempty"` DelegateTo []NameServer `json:"delegate_to,omitempty"` View string `json:"view,omitempty"` Ea EA `json:"extattrs"` }
func NewZoneDelegated ¶
func NewZoneDelegated(za ZoneDelegated) *ZoneDelegated
type ZoneNameServer ¶
type ZoneNameServer struct {
Address string `json:"address,omitempty"`
}