eip

package
v0.0.0-...-5b6f272 Latest Latest
Warning

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

Go to latest
Published: Oct 22, 2019 License: Apache-2.0 Imports: 4 Imported by: 3

Documentation

Index

Constants

View Source
const (
	PAYMENTTIMING_PREPAID     string = "Prepaid"
	PAYMENTTIMING_POSTPAID    string = "Postpaid"
	BILLINGMETHOD_BYTRAFFIC   string = "ByTraffic"
	BILLINGMETHOD_BYBANDWIDTH string = "ByBandwidth"
)

Variables

View Source
var Endpoint = map[string]string{
	"bj": "eip.bj.baidubce.com",
	"gz": "eip.gz.baidubce.com",
	"bd": "eip.bd.baidubce.com",
	"su": "eip.su.baidubce.com",
	"hk": "eip.hkg.baidubce.com",
}

Endpoint contains all endpoints of Baidu Cloud BCC.

Functions

This section is empty.

Types

type Billing

type Billing struct {
	PaymentTiming string       `json:"paymentTiming"`
	BillingMethod string       `json:"billingMethod"`
	Reservation   *Reservation `json:"reservation"`
}

type BindEipArgs

type BindEipArgs struct {
	Ip           string       `json:"-"`
	InstanceType InstanceType `json:"instanceType"`
	InstanceId   string       `json:"instanceId"`
}

type Client

type Client struct {
	*bce.Client
}

Client is the EIP client implemention for Baidu Cloud EIP API.

func NewEIPClient

func NewEIPClient(config *bce.Config) *Client

func (*Client) BindEip

func (c *Client) BindEip(args *BindEipArgs, option *bce.SignOption) error

func (*Client) CreateEip

func (c *Client) CreateEip(args *CreateEipArgs, option *bce.SignOption) (string, error)

func (*Client) DeleteEip

func (c *Client) DeleteEip(args *EipArgs, option *bce.SignOption) error

func (*Client) GetEips

func (c *Client) GetEips(args *GetEipsArgs, option *bce.SignOption) ([]Eip, error)

func (*Client) GetURL

func (c *Client) GetURL(version string, params map[string]string) string

GetURL generates the full URL of http request for Baidu Cloud EIP API.

func (*Client) PurchaseReservedEips

func (c *Client) PurchaseReservedEips()

not implemented

func (*Client) ResizeEip

func (c *Client) ResizeEip(args *ResizeEipArgs, option *bce.SignOption) error

func (*Client) UnbindEip

func (c *Client) UnbindEip(args *EipArgs, option *bce.SignOption) error

type CreateEipArgs

type CreateEipArgs struct {
	//  公网带宽,单位为Mbps。
	// 对于prepay以及bandwidth类型的EIP,限制为为1~200之间的整数,
	// 对于traffic类型的EIP,限制为1~1000之前的整数。
	BandwidthInMbps int      `json:"bandwidthInMbps"`
	Billing         *Billing `json:"billing"`
	Name            string   `json:"name,omitempty"`
}

type CreateEipResponse

type CreateEipResponse struct {
	Ip string `json:"eip"`
}

type Eip

type Eip struct {
	Name            string          `json:"name"`
	Eip             string          `json:"eip"`
	Status          string          `json:"status"`
	EipInstanceType EipInstanceType `json:"eipInstanceType"`
	InstanceType    InstanceType    `json:"instanceType"`
	InstanceId      string          `json:"instanceId"`
	ShareGroupId    string          `json:"shareGroupId"`
	BandwidthInMbps int             `json:"bandwidthInMbps"`
	PaymentTiming   string          `json:"paymentTiming"`
	BillingMethod   string          `json:"billingMethod"`
	CreateTime      string          `json:"createTime"`
	ExpireTime      string          `json:"expireTime"`
}

type EipArgs

type EipArgs struct {
	Ip string `json:"-"`
}

type EipInstanceType

type EipInstanceType string
const (
	NORMAL EipInstanceType = "normal"
	SHARED EipInstanceType = "shared"
)

type GetEipsArgs

type GetEipsArgs struct {
	Ip           string       `json:"-"`
	InstanceType InstanceType `json:"instanceType"`
	InstanceId   string       `json:"instanceId"`
}

type GetEipsResponse

type GetEipsResponse struct {
	EipList     []Eip  `json:"eipList"`
	Marker      string `json:"marker"`
	IsTruncated bool   `json:"isTruncated"`
	NextMarker  string `json:"nextMarker"`
	MaxKeys     int    `json:"maxKeys"`
}

type InstanceType

type InstanceType string
const (
	BCC InstanceType = "BCC"
	BLB InstanceType = "BLB"
)

type Reservation

type Reservation struct {
	ReservationLength   int    `json:"reservationLength"`
	ReservationTimeUnit string `json:"reservationTimeUnit"`
}

type ResizeEipArgs

type ResizeEipArgs struct {
	BandwidthInMbps int    `json:"newBandwidthInMbps"`
	Ip              string `json:"-"`
}

Jump to

Keyboard shortcuts

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