 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Overview ¶
Package flexibleip provides methods and message types of the flexibleip v1alpha1 API.
Index ¶
- Constants
- type API
- func (s *API) AttachFlexibleIP(req *AttachFlexibleIPRequest, opts ...scw.RequestOption) (*AttachFlexibleIPsResponse, error)
- func (s *API) CreateFlexibleIP(req *CreateFlexibleIPRequest, opts ...scw.RequestOption) (*FlexibleIP, error)
- func (s *API) DeleteFlexibleIP(req *DeleteFlexibleIPRequest, opts ...scw.RequestOption) error
- func (s *API) DeleteMACAddr(req *DeleteMACAddrRequest, opts ...scw.RequestOption) error
- func (s *API) DetachFlexibleIP(req *DetachFlexibleIPRequest, opts ...scw.RequestOption) (*DetachFlexibleIPsResponse, error)
- func (s *API) DuplicateMACAddr(req *DuplicateMACAddrRequest, opts ...scw.RequestOption) (*FlexibleIP, error)
- func (s *API) GenerateMACAddr(req *GenerateMACAddrRequest, opts ...scw.RequestOption) (*FlexibleIP, error)
- func (s *API) GetFlexibleIP(req *GetFlexibleIPRequest, opts ...scw.RequestOption) (*FlexibleIP, error)
- func (s *API) ListFlexibleIPs(req *ListFlexibleIPsRequest, opts ...scw.RequestOption) (*ListFlexibleIPsResponse, error)
- func (s *API) MoveMACAddr(req *MoveMACAddrRequest, opts ...scw.RequestOption) (*FlexibleIP, error)
- func (s *API) UpdateFlexibleIP(req *UpdateFlexibleIPRequest, opts ...scw.RequestOption) (*FlexibleIP, error)
- func (s *API) WaitForFlexibleIP(req *WaitForFlexibleIPRequest, opts ...scw.RequestOption) (*FlexibleIP, error)
- func (s *API) Zones() []scw.Zone
 
- type AttachFlexibleIPRequest
- type AttachFlexibleIPsResponse
- type CreateFlexibleIPRequest
- type DeleteFlexibleIPRequest
- type DeleteMACAddrRequest
- type DetachFlexibleIPRequest
- type DetachFlexibleIPsResponse
- type DuplicateMACAddrRequest
- type FlexibleIP
- type FlexibleIPStatus
- type GenerateMACAddrRequest
- type GetFlexibleIPRequest
- type ListFlexibleIPsRequest
- type ListFlexibleIPsRequestOrderBy
- type ListFlexibleIPsResponse
- type MACAddress
- type MACAddressStatus
- type MACAddressType
- type MoveMACAddrRequest
- type UpdateFlexibleIPRequest
- type WaitForFlexibleIPRequest
Constants ¶
const ( // FlexibleIPStatusUnknown is [insert doc]. FlexibleIPStatusUnknown = FlexibleIPStatus("unknown") // FlexibleIPStatusReady is [insert doc]. FlexibleIPStatusReady = FlexibleIPStatus("ready") // FlexibleIPStatusUpdating is [insert doc]. FlexibleIPStatusUpdating = FlexibleIPStatus("updating") // FlexibleIPStatusAttached is [insert doc]. FlexibleIPStatusAttached = FlexibleIPStatus("attached") // FlexibleIPStatusError is [insert doc]. FlexibleIPStatusError = FlexibleIPStatus("error") // FlexibleIPStatusDetaching is [insert doc]. FlexibleIPStatusDetaching = FlexibleIPStatus("detaching") // FlexibleIPStatusLocked is [insert doc]. FlexibleIPStatusLocked = FlexibleIPStatus("locked") )
const ( // ListFlexibleIPsRequestOrderByCreatedAtAsc is [insert doc]. ListFlexibleIPsRequestOrderByCreatedAtAsc = ListFlexibleIPsRequestOrderBy("created_at_asc") // ListFlexibleIPsRequestOrderByCreatedAtDesc is [insert doc]. ListFlexibleIPsRequestOrderByCreatedAtDesc = ListFlexibleIPsRequestOrderBy("created_at_desc") )
const ( // MACAddressStatusUnknown is [insert doc]. MACAddressStatusUnknown = MACAddressStatus("unknown") // MACAddressStatusReady is [insert doc]. MACAddressStatusReady = MACAddressStatus("ready") // MACAddressStatusUpdating is [insert doc]. MACAddressStatusUpdating = MACAddressStatus("updating") // MACAddressStatusUsed is [insert doc]. MACAddressStatusUsed = MACAddressStatus("used") // MACAddressStatusError is [insert doc]. MACAddressStatusError = MACAddressStatus("error") // MACAddressStatusDeleting is [insert doc]. MACAddressStatusDeleting = MACAddressStatus("deleting") )
const ( // MACAddressTypeUnknownType is [insert doc]. MACAddressTypeUnknownType = MACAddressType("unknown_type") // MACAddressTypeVmware is [insert doc]. MACAddressTypeVmware = MACAddressType("vmware") // MACAddressTypeXen is [insert doc]. MACAddressTypeXen = MACAddressType("xen") // MACAddressTypeKvm is [insert doc]. MACAddressTypeKvm = MACAddressType("kvm") )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type API ¶
type API struct {
	// contains filtered or unexported fields
}
    API: flexible IP API
func (*API) AttachFlexibleIP ¶
func (s *API) AttachFlexibleIP(req *AttachFlexibleIPRequest, opts ...scw.RequestOption) (*AttachFlexibleIPsResponse, error)
AttachFlexibleIP: attach a Flexible IP to a server
func (*API) CreateFlexibleIP ¶
func (s *API) CreateFlexibleIP(req *CreateFlexibleIPRequest, opts ...scw.RequestOption) (*FlexibleIP, error)
CreateFlexibleIP: create a Flexible IP
func (*API) DeleteFlexibleIP ¶
func (s *API) DeleteFlexibleIP(req *DeleteFlexibleIPRequest, opts ...scw.RequestOption) error
DeleteFlexibleIP: delete a Flexible IP
func (*API) DeleteMACAddr ¶
func (s *API) DeleteMACAddr(req *DeleteMACAddrRequest, opts ...scw.RequestOption) error
DeleteMACAddr: remove a virtual MAC from a Flexible IP
func (*API) DetachFlexibleIP ¶
func (s *API) DetachFlexibleIP(req *DetachFlexibleIPRequest, opts ...scw.RequestOption) (*DetachFlexibleIPsResponse, error)
DetachFlexibleIP: detach a Flexible IP from a server
func (*API) DuplicateMACAddr ¶
func (s *API) DuplicateMACAddr(req *DuplicateMACAddrRequest, opts ...scw.RequestOption) (*FlexibleIP, error)
DuplicateMACAddr: duplicate a Virtual MAC
Duplicate a Virtual MAC from a given Flexible IP onto another attached on the same server.
func (*API) GenerateMACAddr ¶
func (s *API) GenerateMACAddr(req *GenerateMACAddrRequest, opts ...scw.RequestOption) (*FlexibleIP, error)
GenerateMACAddr: generate a virtual MAC on a given Flexible IP
func (*API) GetFlexibleIP ¶
func (s *API) GetFlexibleIP(req *GetFlexibleIPRequest, opts ...scw.RequestOption) (*FlexibleIP, error)
GetFlexibleIP: get a Flexible IP
func (*API) ListFlexibleIPs ¶
func (s *API) ListFlexibleIPs(req *ListFlexibleIPsRequest, opts ...scw.RequestOption) (*ListFlexibleIPsResponse, error)
ListFlexibleIPs: list Flexible IPs
func (*API) MoveMACAddr ¶
func (s *API) MoveMACAddr(req *MoveMACAddrRequest, opts ...scw.RequestOption) (*FlexibleIP, error)
func (*API) UpdateFlexibleIP ¶
func (s *API) UpdateFlexibleIP(req *UpdateFlexibleIPRequest, opts ...scw.RequestOption) (*FlexibleIP, error)
UpdateFlexibleIP: update a Flexible IP
func (*API) WaitForFlexibleIP ¶
func (s *API) WaitForFlexibleIP(req *WaitForFlexibleIPRequest, opts ...scw.RequestOption) (*FlexibleIP, error)
WaitForFlexibleIP waits for the FlexibleIP to be in a ready state before returning.
type AttachFlexibleIPRequest ¶
type AttachFlexibleIPRequest struct {
	// Zone:
	//
	// Zone to target. If none is passed will use default zone from the config
	Zone scw.Zone `json:"-"`
	// FipsIDs: a list of Flexible IP IDs to attach
	//
	// Multiple IDs can be provided as long as Flexible IPs belong to the same MAC groups (see details about MAC groups).
	FipsIDs []string `json:"fips_ids"`
	// ServerID: a server ID on which to attach the Flexible IPs
	ServerID string `json:"server_id"`
}
    type AttachFlexibleIPsResponse ¶
type AttachFlexibleIPsResponse struct {
	// TotalCount: total count of Flexible IPs being updated
	TotalCount uint32 `json:"total_count"`
	// FlexibleIPs: listing of Flexible IPs in updating state
	FlexibleIPs []*FlexibleIP `json:"flexible_ips"`
}
    AttachFlexibleIPsResponse: attach flexible i ps response
type CreateFlexibleIPRequest ¶
type CreateFlexibleIPRequest struct {
	// Zone:
	//
	// Zone to target. If none is passed will use default zone from the config
	Zone scw.Zone `json:"-"`
	// ProjectID: ID of the project to associate with the Flexible IP
	ProjectID string `json:"project_id"`
	// Description: description to associate with the Flexible IP, max 255 characters
	Description string `json:"description"`
	// Tags: tags to associate to the Flexible IP
	Tags []string `json:"tags"`
	// ServerID: server ID on which to attach the created Flexible IP
	ServerID *string `json:"server_id"`
	// Reverse: reverse DNS value
	Reverse *string `json:"reverse"`
	// IsIPv6: if true, creates a Flexible IP with an ipv6 address
	IsIPv6 bool `json:"is_ipv6"`
}
    type DeleteFlexibleIPRequest ¶
type DeleteMACAddrRequest ¶
type DeleteMACAddrRequest struct {
	// Zone:
	//
	// Zone to target. If none is passed will use default zone from the config
	Zone scw.Zone `json:"-"`
	// FipID: flexible IP ID from which to delete the Virtual MAC
	//
	// If the Flexible IP belongs to a MAC group, the MAC will be removed from the MAC group and from the Flexible IP.
	FipID string `json:"-"`
}
    type DetachFlexibleIPRequest ¶
type DetachFlexibleIPRequest struct {
	// Zone:
	//
	// Zone to target. If none is passed will use default zone from the config
	Zone scw.Zone `json:"-"`
	// FipsIDs: a list of Flexible IP IDs to detach
	//
	// Multiple IDs can be provided as long as Flexible IPs belong to the same MAC groups (see details about MAC groups).
	FipsIDs []string `json:"fips_ids"`
}
    type DetachFlexibleIPsResponse ¶
type DetachFlexibleIPsResponse struct {
	// TotalCount: total count of Flexible IPs being detached
	TotalCount uint32 `json:"total_count"`
	// FlexibleIPs: listing of Flexible IPs in detaching state
	FlexibleIPs []*FlexibleIP `json:"flexible_ips"`
}
    DetachFlexibleIPsResponse: detach flexible i ps response
type DuplicateMACAddrRequest ¶
type DuplicateMACAddrRequest struct {
	// Zone:
	//
	// Zone to target. If none is passed will use default zone from the config
	Zone scw.Zone `json:"-"`
	// FipID: flexible IP ID on which to duplicate the Virtual MAC
	//
	// Flexible IPs need to be attached to the same server.
	FipID string `json:"-"`
	// DuplicateFromFipID: flexible IP ID to duplicate the Virtual MAC from
	//
	// Flexible IPs need to be attached to the same server.
	DuplicateFromFipID string `json:"duplicate_from_fip_id"`
}
    type FlexibleIP ¶
type FlexibleIP struct {
	// ID: ID of the Flexible IP
	ID string `json:"id"`
	// OrganizationID: organization ID the Flexible IP is attached to
	OrganizationID string `json:"organization_id"`
	// ProjectID: project ID the Flexible IP is attached to
	ProjectID string `json:"project_id"`
	// Description: description of the Flexible IP
	Description string `json:"description"`
	// Tags: tags associated with the Flexible IP
	Tags []string `json:"tags"`
	// UpdatedAt: date of last update of the Flexible IP
	UpdatedAt *time.Time `json:"updated_at"`
	// CreatedAt: date of creation of the Flexible IP
	CreatedAt *time.Time `json:"created_at"`
	// Status: status of the Flexible IP
	//
	// - ready : Flexible IP is created and ready to be attached to a server or to have a virtual MAC generated.
	// - updating: Flexible IP is being attached to a server or a virtual MAC operation is ongoing
	// - attached: Flexible IP is attached to a server
	// - error: a Flexible IP operation resulted in an error
	// - detaching: Flexible IP is being detached from a server
	// - locked: Flexible IP resource is locked
	//
	// Default value: unknown
	Status FlexibleIPStatus `json:"status"`
	// IPAddress: IP of the Flexible IP
	IPAddress scw.IPNet `json:"ip_address"`
	// MacAddress: mAC address of the Flexible IP
	MacAddress *MACAddress `json:"mac_address"`
	// ServerID: ID of the server linked to the Flexible IP
	ServerID *string `json:"server_id"`
	// Reverse: reverse DNS value
	Reverse string `json:"reverse"`
	// Zone: flexible IP Availability Zone
	Zone scw.Zone `json:"zone"`
}
    FlexibleIP: flexible ip
type FlexibleIPStatus ¶
type FlexibleIPStatus string
func (FlexibleIPStatus) MarshalJSON ¶
func (enum FlexibleIPStatus) MarshalJSON() ([]byte, error)
func (FlexibleIPStatus) String ¶
func (enum FlexibleIPStatus) String() string
func (*FlexibleIPStatus) UnmarshalJSON ¶
func (enum *FlexibleIPStatus) UnmarshalJSON(data []byte) error
type GenerateMACAddrRequest ¶
type GenerateMACAddrRequest struct {
	// Zone:
	//
	// Zone to target. If none is passed will use default zone from the config
	Zone scw.Zone `json:"-"`
	// FipID: flexible IP ID on which to generate a Virtual MAC
	FipID string `json:"-"`
	// MacType: tODO
	//
	// Default value: unknown_type
	MacType MACAddressType `json:"mac_type"`
}
    type GetFlexibleIPRequest ¶
type ListFlexibleIPsRequest ¶
type ListFlexibleIPsRequest struct {
	// Zone:
	//
	// Zone to target. If none is passed will use default zone from the config
	Zone scw.Zone `json:"-"`
	// OrderBy: the sort order of the returned Flexible IPs
	//
	// Default value: created_at_asc
	OrderBy ListFlexibleIPsRequestOrderBy `json:"-"`
	// Page: the page number for the returned Flexible IPs
	Page *int32 `json:"-"`
	// PageSize: the maximum number of Flexible IPs per page
	PageSize *uint32 `json:"-"`
	// Tags: filter Flexible IPs with one or more matching tags
	Tags []string `json:"-"`
	// Status: filter Flexible IPs by status
	Status []FlexibleIPStatus `json:"-"`
	// ServerIDs: filter Flexible IPs by server IDs
	ServerIDs []string `json:"-"`
	// OrganizationID: filter Flexible IPs by organization ID
	OrganizationID *string `json:"-"`
	// ProjectID: filter Flexible IPs by project ID
	ProjectID *string `json:"-"`
}
    type ListFlexibleIPsRequestOrderBy ¶
type ListFlexibleIPsRequestOrderBy string
func (ListFlexibleIPsRequestOrderBy) MarshalJSON ¶
func (enum ListFlexibleIPsRequestOrderBy) MarshalJSON() ([]byte, error)
func (ListFlexibleIPsRequestOrderBy) String ¶
func (enum ListFlexibleIPsRequestOrderBy) String() string
func (*ListFlexibleIPsRequestOrderBy) UnmarshalJSON ¶
func (enum *ListFlexibleIPsRequestOrderBy) UnmarshalJSON(data []byte) error
type ListFlexibleIPsResponse ¶
type ListFlexibleIPsResponse struct {
	// TotalCount: total count of matching Flexible IPs
	TotalCount uint32 `json:"total_count"`
	// FlexibleIPs: listing of Flexible IPs
	FlexibleIPs []*FlexibleIP `json:"flexible_ips"`
}
    ListFlexibleIPsResponse: list flexible i ps response
func (*ListFlexibleIPsResponse) UnsafeAppend ¶
func (r *ListFlexibleIPsResponse) UnsafeAppend(res interface{}) (uint32, error)
UnsafeAppend should not be used Internal usage only
func (*ListFlexibleIPsResponse) UnsafeGetTotalCount ¶
func (r *ListFlexibleIPsResponse) UnsafeGetTotalCount() uint32
UnsafeGetTotalCount should not be used Internal usage only
type MACAddress ¶
type MACAddress struct {
	// ID: ID of the Flexible IP
	ID string `json:"id"`
	// MacAddress: mAC address of the Virtual MAC
	MacAddress string `json:"mac_address"`
	// MacType: virtual MAC type
	//
	// Default value: unknown_type
	MacType MACAddressType `json:"mac_type"`
	// Status: virtual MAC status
	//
	// Default value: unknown
	Status MACAddressStatus `json:"status"`
	// UpdatedAt: date of last update of the Virtual MAC
	UpdatedAt *time.Time `json:"updated_at"`
	// CreatedAt: date of creation of the Virtual MAC
	CreatedAt *time.Time `json:"created_at"`
	// Zone: mAC Addr IP Availability Zone
	Zone scw.Zone `json:"zone"`
}
    MACAddress: mac address
type MACAddressStatus ¶
type MACAddressStatus string
func (MACAddressStatus) MarshalJSON ¶
func (enum MACAddressStatus) MarshalJSON() ([]byte, error)
func (MACAddressStatus) String ¶
func (enum MACAddressStatus) String() string
func (*MACAddressStatus) UnmarshalJSON ¶
func (enum *MACAddressStatus) UnmarshalJSON(data []byte) error
type MACAddressType ¶
type MACAddressType string
func (MACAddressType) MarshalJSON ¶
func (enum MACAddressType) MarshalJSON() ([]byte, error)
func (MACAddressType) String ¶
func (enum MACAddressType) String() string
func (*MACAddressType) UnmarshalJSON ¶
func (enum *MACAddressType) UnmarshalJSON(data []byte) error
type MoveMACAddrRequest ¶
type UpdateFlexibleIPRequest ¶
type UpdateFlexibleIPRequest struct {
	// Zone:
	//
	// Zone to target. If none is passed will use default zone from the config
	Zone scw.Zone `json:"-"`
	// FipID: ID of the Flexible IP to update
	FipID string `json:"-"`
	// Description: description to associate with the Flexible IP, max 255 characters
	Description *string `json:"description"`
	// Tags: tags to associate with the Flexible IP
	Tags *[]string `json:"tags"`
	// Reverse: reverse DNS value
	Reverse *string `json:"reverse"`
}