instances

package
v0.0.0-...-e794f14 Latest Latest
Warning

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

Go to latest
Published: Dec 24, 2024 License: Apache-2.0 Imports: 4 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DisableElbIngressAccess

func DisableElbIngressAccess(client *golangsdk.ServiceClient, instanceId string) error

DisableElbIngressAccess is a method to unbind the ingress eip associated with an existing APIG dedicated instance. Supported only when loadbalancer_provider is set to elb.

func GetTags

func GetTags(c *golangsdk.ServiceClient, instanceId string) ([]tags.ResourceTag, error)

GetTags is a method used to obtain the list of instance tags.

func List

List is a method to obtain an array of one or more APIG dedicated instance according to the query parameters.

func UpdateTags

func UpdateTags(c *golangsdk.ServiceClient, opts *TagsUpdateOpts) error

UpdateTags

Types

type BaseInstance

type BaseInstance struct {
	// Instance ID.
	Id string `json:"id"`
	// Project ID
	ProjectId string `json:"project_id"`
	// Instance name.
	Name string `json:"instance_name"`
	// Instance status. The value are as following:
	//   Creating, CreateSuccess, CreateFail, Initing, Registering, Running, InitingFailed, RegisterFailed, Installing
	//   InstallFailed, Updating, UpdateFailed, Rollbacking, RollbackSuccess, RollbackFailed, Deleting, DeleteFailed
	//   Unregistering, UnRegisterFailed, CreateTimeout, InitTimeout, RegisterTimeout, InstallTimeout, UpdateTimeout
	//   RollbackTimeout, DeleteTimeout, UnregisterTimeout, Starting, Freezing, Frozen, Restarting, RestartFail
	//   Unhealthy, RestartTimeout
	// Ditto: Issue of status 'Deleting'. --2021/06/15
	Status string `json:"status"`
	// Instance status ID.
	//   1:Creating, 2:CreateSuccess, 3:CreateFail, 4:Initing, 5:Registering, 6:Running, 7:InitingFailed
	//   8:RegisterFailed, 10:Installing, 11:InstallFailed, 12:Updating, 13:UpdateFailed, 20:Rollbacking
	//   21:RollbackSuccess, 22:RollbackFailed, 23:Deleting, 24:DeleteFailed, 25:Unregistering, 26:UnRegisterFailed
	//   27:CreateTimeout, 28:InitTimeout, 29:RegisterTimeout, 30:InstallTimeout, 31:UpdateTimeout
	//   32:RollbackTimeout, 33:DeleteTimeout, 34:UnregisterTimeout, 35:Starting, 36:Freezing, 37:Frozen, 38:Restarting
	//   39:RestartFail, 40:Unhealthy, 41:RestartTimeout
	// Ditto: Issue of status id 23 (Deleting). --2021/06/15
	StatusId int `json:"instance_status"`
	// Instance type.
	Type string `json:"type"`
	// Instance edition.
	Edition string `json:"spec"`
	// Time when the APIG dedicated instance is created, in Unix timestamp format.
	CreateTimestamp int64 `json:"create_time"`
	// Enterprise project ID.
	EnterpriseProjectId string `json:"enterprise_project_id"`
	// EIP bound to the APIG dedicated instance.
	Ipv4Address string `json:"eip_address"`
	// Billing mode of the APIG dedicated instance.
	//   0:Pay per use
	//   1:Pay per use
	ChargeMode int `json:"charging_mode"`
	// Yearly/Monthly subscription order ID.
	CbcMetadata string `json:"cbc_metadata"`
}

func ExtractInstances

func ExtractInstances(r pagination.Page) ([]BaseInstance, error)

Call its Extract method to interpret it as a BaseInstance array.

type CbcOperationLock

type CbcOperationLock struct {
	// Restricted operation scenarios:
	// + TO_PERIOD_LOCK: On-demand subcontracting period scene lock, which does not allow deletion, specification
	//                   changes, on-demand subcontracting periods, etc.
	// + SPEC_CHG_LOCK: Package cycle specification change scene lock, which does not allow deletion, specification
	//                  change, etc.
	LockScene string `json:"lock_scene"`
	// The ID of the object that initiated the restriction operation.
	LockSourceId string `json:"lock_source_id"`
}

CbcOperationLock is the structure that represents the restricted operation lock for CBC service.

type CreateOpts

type CreateOpts struct {
	// Name of the APIG dedicated instance. The name can contains of 3 to 64 characters.
	Name string `json:"instance_name" required:"true"`
	// Edition of the APIG dedicated instance. Currently, the editions are support:
	// (IPv4): BASIC, PROFESSIONAL, ENTERPRISE, PLATINUM
	// (IPv6): BASIC_IPV6, PROFESSIONAL_IPV6, ENTERPRISE_IPV6, PLATINUM_IPV6
	Edition string `json:"spec_id" required:"true"`
	// VPC ID.
	VpcId string `json:"vpc_id" required:"true"`
	// Subnet network ID.
	SubnetId string `json:"subnet_id" required:"true"`
	// ID of the security group to which the APIG dedicated instance belongs to.
	SecurityGroupId string `json:"security_group_id" required:"true"`
	// ID of the APIG dedicated instance, which will be automatically generated if you do not specify this parameter.
	Id string `json:"instance_id,omitempty"`
	// Description about the APIG dedicated instance.
	Description string `json:"description,omitempty"`
	// Start time of the maintenance time window in the format "xx:00:00".
	// The value of xx can be 02, 06, 10, 14, 18, or 22.
	MaintainBegin string `json:"maintain_begin,omitempty"`
	// End time of the maintenance time window in the format "xx:00:00".
	// There is a 4-hour difference between the start time and end time.
	MaintainEnd string `json:"maintain_end,omitempty"`
	// EIP ID.
	EipId string `json:"eip_id,omitempty"`
	// Outbound access bandwidth. This parameter is required if public outbound access is enabled for the APIG
	// dedicated instance.
	// Zero means turn off the egress access.
	BandwidthSize int `json:"bandwidth_size"`
	// Billing type of the public outbound access bandwidth. This parameter is required if public outbound access is enabled for the gateway.
	// + bandwidth: billed by bandwidth
	// + traffic: billed by traffic
	// Defaults to bandwidth.
	BandwidthChargingMode string `json:"bandwidth_charging_mode,omitempty"`
	// Enterprise project ID. This parameter is required if you are using an enterprise account.
	EnterpriseProjectId string `json:"enterprise_project_id,omitempty"`
	// AZs.
	AvailableZoneIds []string `json:"available_zone_ids,omitempty"`
	// Whether public access with an IPv6 address is supported.
	Ipv6Enable bool `json:"ipv6_enable,omitempty"`
	// The type of load balancer used by the instance.
	// The valid values are as follows:
	// + lvs: Linux virtual server
	// + elb: Elastic load balance
	LoadbalancerProvider string `json:"loadbalancer_provider,omitempty"`
	// Tags
	// A maximum of 20 tags can be created for a gateway.
	Tags []tags.ResourceTag `json:"tags,omitempty"`
	// Name of the VPC endpoint service.
	// It can contain a maximum of 16 characters, including letters, digits, underscores (_), and hyphens (-).
	// If this parameter is not specified, the system automatically generates a name in the
	// "{region}.apig.{service_id}" format. If this parameter is specified, the system automatically generates a name
	// in the "{region}.{vpcep_service_name}.{service_id}" format.
	// After the gateway is created, you can modify this name on the Gateways > VPC Endpoints page.
	VpcepServiceName string `json:"vpcep_service_name,omitempty"`
	// Public inbound access bandwidth.
	// This parameter is required if public inbound access is enabled for the gateway and loadbalancer_provider is set
	// to elb. After you bind an EIP to the gateway, users can access APIs in the gateway from public networks using
	// the EIP.
	// Defaults to 5.
	IngressBandwithSize int `json:"ingress_bandwidth_size,omitempty"`
	// Billing type of the public inbound access bandwidth.
	// This parameter is required if public inbound access is enabled for the gateway and loadbalancer_provider is set
	// to elb.
	// + bandwidth: billed by bandwidth
	// + traffic: billed by traffic
	IngressBandwithChargingMode string `json:"ingress_bandwidth_charging_mode,omitempty"`
}

CreateOpts allows to create an APIG dedicated instance using given parameters.

func (CreateOpts) ToInstanceCreateMap

func (opts CreateOpts) ToInstanceCreateMap() (map[string]interface{}, error)

type CreateOptsBuilder

type CreateOptsBuilder interface {
	ToInstanceCreateMap() (map[string]interface{}, error)
}

type CreateResp

type CreateResp struct {
	Id      string `json:"instance_id"`
	Message string `json:"message"`
}

type CreateResult

type CreateResult struct {
	// contains filtered or unexported fields
}

GetResult represents the result of a create operation.

func Create

func Create(client *golangsdk.ServiceClient, opts CreateOptsBuilder) (r CreateResult)

Create is a method by which to create function that create a APIG dedicated instance.

func (CreateResult) Extract

func (r CreateResult) Extract() (*CreateResp, error)

Call its Extract method to interpret it as a Instance Id.

type DeleteResult

type DeleteResult struct {
	golangsdk.ErrResult
}

DeleteResult represents the result of a Delete operation.

func Delete

func Delete(client *golangsdk.ServiceClient, id string) (r DeleteResult)

Delete is a method to delete an existing APIG dedicated instance

type DisableEgressResult

type DisableEgressResult struct {
	golangsdk.ErrResult
}

DisableEgressResult represents the result of a DisableEgressAccess operation.

func DisableEgressAccess

func DisableEgressAccess(client *golangsdk.ServiceClient, id string) (r DisableEgressResult)

DisableEgressAccess is a method by which to disable the egress access of an existing APIG dedicated instance.

type DisableIngressResult

type DisableIngressResult struct {
	golangsdk.ErrResult
}

DisableIngressResult represents the result of a DisableIngressAccess operation.

func DisableIngressAccess

func DisableIngressAccess(client *golangsdk.ServiceClient, id string) (r DisableIngressResult)

DisableIngressAccess is a method to unbind the eip associated with an existing APIG dedicated instance.

type Egress

type Egress struct {
	Id               string `json:"id"`
	CloudEipId       string `json:"cloudEipId"`
	CloudEipAddress  string `json:"cloudEipAddress"`
	InstanceId       string `json:"instanceId"`
	CloudBandwidthId string `json:"cloudBandwidthId"`
	BandwidthName    string `json:"bandwidthName"`
	BandwidthSize    int    `json:"bandwidthSize"`
}

type EgressAccessOpts

type EgressAccessOpts struct {
	// Outbound access bandwidth, in Mbit/s.
	BandwidthSize string `json:"bandwidth_size,omitempty"`
}

EgressAccessOpts allows the bandwidth size of an existing APIG dedicated instance to be updated with the given parameters.

func (EgressAccessOpts) ToEgressAccessMap

func (opts EgressAccessOpts) ToEgressAccessMap() (map[string]interface{}, error)

type EgressAccessOptsBuilder

type EgressAccessOptsBuilder interface {
	ToEgressAccessMap() (map[string]interface{}, error)
}

type EgressResult

type EgressResult struct {
	golangsdk.Result
}

type ElbIngressAccessOpts

type ElbIngressAccessOpts struct {
	// The APIG dedicated instance ID.
	InstanceId string `json:"-"`
	// Public inbound access bandwidth.
	IngressBandwithSize int `json:"bandwidth_size" required:"true"`
	// Billing type of the public inbound access bandwidth.
	// + bandwidth: billed by bandwidth.
	// + traffic: billed by traffic.
	IngressBandwithChargingMode string `json:"bandwidth_charging_mode" required:"true"`
}

ElbIngressAccessOpts is the structure that used to bind ingress EIP to instance when loadbalancer_provider is set to elb.

type EnableEgressResult

type EnableEgressResult struct {
	golangsdk.Result
}

EnableEgressResult represents the result of a EnableEgressAccess operation.

func EnableEgressAccess

func EnableEgressAccess(client *golangsdk.ServiceClient, id string, opts EgressAccessOptsBuilder) (r EnableEgressResult)

EnableEgressAccess is a method by which to enable the egress access of an existing APIG dedicated instance.

func (EnableEgressResult) Extract

func (r EnableEgressResult) Extract() (*Egress, error)

Extract is a method to interpret the response body as an Egress.

type EnableElbIngressResp

type EnableElbIngressResp struct {
	// ID of the APIG dedicated instance.
	Instance_id string `json:"instance_id"`
	// Task information of binding the ingress EIP.
	Message string `json:"message"`
	// Job ID of binding the ingress EIP.
	JobId string `json:"job_id"`
}

func EnableElbIngressAccess

func EnableElbIngressAccess(client *golangsdk.ServiceClient, opts ElbIngressAccessOpts) (*EnableElbIngressResp, error)

EnableElbIngressAccess is a method to bind the ingress eip associated with an existing APIG dedicated instance. Supported only when loadbalancer_provider is set to elb.

type EnableIngressResult

type EnableIngressResult struct {
	// contains filtered or unexported fields
}

EnableIngressResult represents the result of a EnableIngressAccess operation.

func EnableIngressAccess

func EnableIngressAccess(client *golangsdk.ServiceClient, id string, opts IngressAccessOptsBuilder) (r EnableIngressResult)

UpdateIngressAccess is a method to bind and update the eip associated with an existing APIG dedicated instance.

func (EnableIngressResult) Extract

func (r EnableIngressResult) Extract() (*Ingress, error)

Call its Extract method to interpret it as a Ingress.

type EndpointService

type EndpointService struct {
	// The service name of the endpoint node.
	ServiceName string `json:"service_name"`
	// The create time of the endpoint node.
	CreatedAt string `json:"created_at"`
}

type Feature

type Feature struct {
	// Feature ID.
	ID string `json:"id"`
	// Feature name.
	Name string `json:"name"`
	// Whether to enable the feature.
	Enable bool `json:"enable"`
	// Parameter configuration.
	Config string `json:"config"`
	// Dedicated APIG instance ID.
	InstanceId string `json:"instance_id"`
	// Feature update time.
	UpdatedAt string `json:"update_time"`
}

Feature represents the result of a feature configuration.

func ExtractFeatures

func ExtractFeatures(r pagination.Page) ([]Feature, error)

ExtractFeatures is a method to extract the list of feature configuration details for APIG instance.

func ListFeatures

func ListFeatures(c *golangsdk.ServiceClient, instanceId string, opts ListFeaturesOpts) ([]Feature, error)

ListFeatures is a method used to obtain the list of feature configuration details.

func UpdateFeature

func UpdateFeature(c *golangsdk.ServiceClient, instanceId string, opts FeatureOpts) (*Feature, error)

UpdateFeature is a method used to update the feature configuration.

type FeatureOpts

type FeatureOpts struct {
	// Feature name.
	Name string `json:"name" required:"true"`
	// Whether to enable the feature.
	Enable *bool `json:"enable" required:"true"`
	// Parameter configuration.
	Config string `json:"config,omitempty"`
}

FeatureOpts allows to update the dedicated APIG instance features.

type FeaturePage

type FeaturePage struct {
	pagination.OffsetPageBase
}

FeaturePage is a single page maximum result representing a query by offset page.

func (FeaturePage) IsEmpty

func (b FeaturePage) IsEmpty() (bool, error)

IsEmpty checks whether a FeaturePage struct is empty.

type GetResult

type GetResult struct {
	// contains filtered or unexported fields
}

GetResult represents the result of a Get operation.

func Get

func Get(client *golangsdk.ServiceClient, id string) (r GetResult)

Get is a method to obtain the specified APIG dedicated instance according to the instance Id.

func (GetResult) Extract

func (r GetResult) Extract() (*Instance, error)

Call its Extract method to interpret it as a Instance.

type Ingress

type Ingress struct {
	Id          string `json:"eip_id"`
	EipAddress  string `json:"eip_address"`
	Status      string `json:"eip_status"`
	Ipv6Address string `json:"eip_ipv6_address"`
}

type IngressAccessOpts

type IngressAccessOpts struct {
	// EIP ID
	EipId string `json:"eip_id,omitempty"`
}

IngressAccessOpts allows binding and updating the eip associated with an existing APIG dedicated instance with the given parameters.

func (IngressAccessOpts) ToEnableIngressAccessMap

func (opts IngressAccessOpts) ToEnableIngressAccessMap() (map[string]interface{}, error)

type IngressAccessOptsBuilder

type IngressAccessOptsBuilder interface {
	ToEnableIngressAccessMap() (map[string]interface{}, error)
}

type Instance

type Instance struct {
	// Instance ID.
	Id string `json:"id"`
	// Project ID.
	ProjectId string `json:"project_id"`
	// Instance name.
	Name string `json:"instance_name"`
	// Instance status. The value are as following:
	//   Creating, CreateSuccess, CreateFail, Initing, Registering, Running, InitingFailed, RegisterFailed, Installing
	//   InstallFailed, Updating, UpdateFailed, Rollbacking, RollbackSuccess, RollbackFailed, Deleting, DeleteFailed
	//   Unregistering, UnRegisterFailed, CreateTimeout, InitTimeout, RegisterTimeout, InstallTimeout, UpdateTimeout
	//   RollbackTimeout, DeleteTimeout, UnregisterTimeout, Starting, Freezing, Frozen, Restarting, RestartFail
	//   Unhealthy, RestartTimeout
	// The status 'Deleting' is not supported, it's a BUG. --2021/06/15
	Status string `json:"status"`
	// Instance status ID.
	//   1:Creating, 2:CreateSuccess, 3:CreateFail, 4:Initing, 5:Registering, 6:Running, 7:InitingFailed
	//   8:RegisterFailed, 10:Installing, 11:InstallFailed, 12:Updating, 13:UpdateFailed, 20:Rollbacking
	//   21:RollbackSuccess, 22:RollbackFailed, 23:Deleting, 24:DeleteFailed, 25:Unregistering, 26:UnRegisterFailed
	//   27:CreateTimeout, 28:InitTimeout, 29:RegisterTimeout, 30:InstallTimeout, 31:UpdateTimeout
	//   32:RollbackTimeout, 33:DeleteTimeout, 34:UnregisterTimeout, 35:Starting, 36:Freezing, 37:Frozen, 38:Restarting
	//   39:RestartFail, 40:Unhealthy, 41:RestartTimeout
	// Ditto: Issue of status id 23 (Deleting). --2021/06/15
	StatusId int `json:"instance_status"`
	// Instance type.
	Type string `json:"type"`
	// Instance edition.
	Edition string `json:"spec"`
	// Time when the APIG dedicated instance is created, in Unix timestamp format.
	CreateTimestamp int64 `json:"create_time"`
	// Enterprise project ID.
	EnterpriseProjectId string `json:"enterprise_project_id"`
	// Billing mode of the APIG dedicated instance.
	//   0:Pay per use
	//   1:Pay per use
	ChargeMode int `json:"charging_mode"`
	// Yearly/Monthly subscription order ID.
	CbcMetadata string `json:"cbc_metadata"`
	// The type of load balancer used by the instance.
	// The valid values are as follows:
	// + lvs: Linux virtual server
	// + elb: Elastic load balance
	LoadbalancerProvider string `json:"loadbalancer_provider"`
	// The operation locks of the CBC serivce.
	CbcOperationLocks []CbcOperationLock `json:"cbc_operation_locks"`
	// Description about the APIG dedicated instance.
	Description string `json:"description"`
	// VPC ID.
	VpcId string `json:"vpc_id"`
	// Subnet network ID.
	SubnetId string `json:"subnet_id"`
	// ID of the security group to which the APIG dedicated instance belongs to.
	SecurityGroupId string `json:"security_group_id"`
	// Start time of the maintenance time window in the format "xx:00:00".
	MaintainBegin string `json:"maintain_begin"`
	// End time of the maintenance time window in the format "xx:00:00".
	MaintainEnd string `json:"maintain_end"`
	// VPC ingress private address.
	Ipv4VpcIngressAddress string `json:"ingress_ip"`
	// VPC ingress private address (IPv6).
	Ipv6VpcIngressAddress string `json:"ingress_ip_v6"`
	// ID of the account to which the APIG dedicated instance belongs.
	UserId string `json:"user_id"`
	// EIP bound to the APIG dedicated instance.
	Ipv4IngressEipAddress string `json:"eip_address"`
	// EIP (IPv6).
	Ipv6IngressEipAddress string `json:"eip_ipv6_address"`
	// Public egress address (IPv6).
	Ipv6EgressCidr string `json:"nat_eip_ipv6_cidr"`
	// IP address for public outbound access.
	Ipv4EgressAddress string `json:"nat_eip_address"`
	// Outbound access bandwidth.
	BandwidthSize int `json:"bandwidth_size"`
	// Billing type of the public inbound access bandwidth.
	BandwidthChargingMode string `json:"bandwidth_charging_mode"`
	// AZs.
	AvailableZoneIds string `json:"available_zone_ids"`
	// Instance version.
	Version string `json:"instance_version"`
	// Supported features.
	SupportedFeatures []string `json:"supported_features"`
	// THe list of endpoint service.
	EndpointServices []EndpointService `json:"endpoint_services"`
	// The IP of the serivce node.
	NodeIp NodeIp `json:"node_ips"`
	// The ingress address list of public network.
	PublicIps []IpDetail `json:"publicips"`
	// The ingress address list of private network.
	PrivateIps []IpDetail `json:"privateips"`
	// Whether the gateway can be released.
	// + true: The gateway can be released.
	// + false: The gateway cannot be released.
	IsReleasable bool `json:"is_releasable"`
	// Billing mode of the public inbound access bandwidth.
	IngressBandwidthChargingMode string `json:"ingress_bandwidth_charging_mode"`
}

type InstancePage

type InstancePage struct {
	pagination.SinglePageBase
}

InstancePage represents the result of a List operation.

type IpDetail

type IpDetail struct {
	// IP address.
	IpAddress string `json:"ip_address"`
	// Bandwidth size.
	BandwidthSize int `json:"bandwidth_size"`
}

type ListFeaturesOpts

type ListFeaturesOpts struct {
	// Offset from which the query starts.
	// If the offset is less than 0, the value is automatically converted to 0. Defaults to 0.
	Offset int `q:"offset"`
	// Number of items displayed on each page.
	// Defaults to 20. The maximum value is 500.
	Limit int `q:"limit"`
}

type ListOpts

type ListOpts struct {
	// ID of the APIG dedicated instance.
	Id string `q:"instance_id"`
	// Name of the APIG dedicated instance.
	Name string `q:"instance_name"`
	// Instance status.
	Status string `q:"status"`
	// Offset from which the query starts.
	// If the offset is less than 0, the value is automatically converted to 0. Default to 0.
	Offset int `q:"offset"`
	// Number of items displayed on each page.
	Limit int `q:"limit"`
}

ListOpts allows to filter list data using given parameters.

func (ListOpts) ToInstanceListQuery

func (opts ListOpts) ToInstanceListQuery() (string, error)

type ListOptsBuilder

type ListOptsBuilder interface {
	ToInstanceListQuery() (string, error)
}

type NodeIp

type NodeIp struct {
	// The IP address list of the livedata node.
	LiveData []string `json:"livedata"`
	// The IP address list of the shubao node.
	Shubao []string `json:"shubao"`
}

type TagsUpdateOpts

type TagsUpdateOpts struct {
	// Dedicated instance ID.
	InstanceId string `json:"-" required:"true"`
	// Operation identification.
	// + create
	// + delete
	Action string `json:"action" required:"true"`
	// Tag list.
	// An instance supports the creation of up to 20 tags by default.
	Tags []tags.ResourceTag `json:"tags" required:"true"`
}

TagsUpdateOpts is the structure used to modify instance tags.

type UdpateEgressResult

type UdpateEgressResult struct {
	golangsdk.Result
}

UdpateEgressResult represents the result of a UpdateEgressBandwidth operation.

func UpdateEgressBandwidth

func UpdateEgressBandwidth(client *golangsdk.ServiceClient, id string, opts EgressAccessOptsBuilder) (r UdpateEgressResult)

UpdateEgressBandwidth is a method by which to update the egress bandwidth size of an existing APIG dedicated instance.

func (UdpateEgressResult) Extract

func (r UdpateEgressResult) Extract() (*Egress, error)

Extract is a method to interpret the response body or json string as an Egress.

type UpdateOpts

type UpdateOpts struct {
	// Description about the APIG dedicated instance.
	Description *string `json:"description,omitempty"`
	// Start time of the maintenance time window in the format "xx:00:00".
	// The value of xx can be 02, 06, 10, 14, 18, or 22.
	MaintainBegin string `json:"maintain_begin,omitempty"`
	// End time of the maintenance time window in the format "xx:00:00".
	// There is a 4-hour difference between the start time and end time.
	MaintainEnd string `json:"maintain_end,omitempty"`
	// Description about the APIG dedicated instance.
	Name string `json:"instance_name,omitempty"`
	// ID of the security group to which the APIG dedicated instance belongs to.
	SecurityGroupId string `json:"security_group_id,omitempty"`
	// Name of the VPC endpoint service.
	// It can contain a maximum of 16 characters, including letters, digits, underscores (_), and hyphens (-).
	// If this parameter is not specified, the system automatically generates a name in the
	// "{region}.apig.{service_id}" format. If this parameter is specified, the system automatically generates a name
	// in the "{region}.{vpcep_service_name}.{service_id}" format.
	VpcepServiceName string `json:"vpcep_service_name,omitempty"`
}

UpdateOpts allows to update an existing APIG dedicated instance using given parameters.

func (UpdateOpts) ToInstanceUpdateMap

func (opts UpdateOpts) ToInstanceUpdateMap() (map[string]interface{}, error)

type UpdateOptsBuilder

type UpdateOptsBuilder interface {
	ToInstanceUpdateMap() (map[string]interface{}, error)
}

type UpdateResult

type UpdateResult struct {
	// contains filtered or unexported fields
}

UpdateResult represents the result of a Update operation.

func Update

func Update(client *golangsdk.ServiceClient, id string, opts UpdateOptsBuilder) (r UpdateResult)

Update is a method by which to update an existing APIG dedicated instance.

func (UpdateResult) Extract

func (r UpdateResult) Extract() (*Instance, error)

Call its Extract method to interpret it as a Instance.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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