client

package
v1.16.0 Latest Latest
Warning

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

Go to latest
Published: Aug 27, 2020 License: Apache-2.0, MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const DefaultInternetChargeType = "PayByTraffic"

DefaultInternetChargeType is used for EIP

Variables

This section is empty.

Functions

func ComputeStorageEndpoint

func ComputeStorageEndpoint(region string) string

ComputeStorageEndpoint computes the OSS storage endpoint based on the given region.

Types

type ClientFactory

type ClientFactory interface {
	NewECSClient(region, accessKeyID, accessKeySecret string) (ECS, error)
	NewSTSClient(region, accessKeyID, accessKeySecret string) (STS, error)
	NewSLBClient(region, accessKeyID, accessKeySecret string) (SLB, error)
	NewVPCClient(region, accessKeyID, accessKeySecret string) (VPC, error)
	NewStorageClientFromSecretRef(ctx context.Context, client client.Client, secretRef *corev1.SecretReference, region string) (Storage, error)
}

ClientFactory is the new factory to instantiate Alicloud clients.

func NewClientFactory

func NewClientFactory() ClientFactory

NewClientFactory creates a new clientFactory instance that can be used to instantiate Alicloud clients

type ECS

type ECS interface {
	CheckIfImageExists(ctx context.Context, imageID string) (bool, error)
	ShareImageToAccount(ctx context.Context, regionID, imageID, accountID string) error
}

ECS is an interface which must be implemented by alicloud ecs clients.

type SLB

type SLB interface {
	GetLoadBalancerIDs(ctx context.Context, region string) ([]string, error)
	GetFirstVServerGroupName(ctx context.Context, region, loadBalancerID string) (string, error)
	DeleteLoadBalancer(ctx context.Context, region, loadBalancerID string) error
}

SLB is an interface which must be implemented by alicloud slb clients.

type STS

type STS interface {
	GetAccountIDFromCallerIdentity(ctx context.Context) (string, error)
}

STS is an interface which must be implemented by alicloud sts clients.

type Storage

type Storage interface {
	DeleteObjectsWithPrefix(ctx context.Context, bucketName, prefix string) error
	CreateBucketIfNotExists(ctx context.Context, bucketName string) error
	DeleteBucketIfExists(ctx context.Context, bucketName string) error
}

Storage is an interface which must be implemented by alicloud oss storage clients.

type VPC

type VPC interface {
	// DescribeVpcs describes the VPCs for the request.
	DescribeVpcs(req *alicloudvpc.DescribeVpcsRequest) (*alicloudvpc.DescribeVpcsResponse, error)
	// DescribeNatGateways describes the NAT gateways for the request.
	DescribeNatGateways(req *alicloudvpc.DescribeNatGatewaysRequest) (*alicloudvpc.DescribeNatGatewaysResponse, error)
	// DescribeEipAddresses describes the EIP addresses for the request.
	DescribeEipAddresses(req *alicloudvpc.DescribeEipAddressesRequest) (*alicloudvpc.DescribeEipAddressesResponse, error)
}

VPC is an interface which must be implemented by alicloud vpc clients.

Jump to

Keyboard shortcuts

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