Documentation
¶
Index ¶
- Constants
- Variables
- func AbortMultipartUpload(connectionName string, bucketName string, objectName string, uploadID string) error
- func AddAccessSubnet(connectionName string, nameID string, subnetIID cres.IID) (*cres.FileSystemInfo, error)
- func AddNLBVMs(connectionName string, nlbName string, vmNames []string) (*cres.NLBInfo, error)
- func AddNodeGroup(connectionName string, rsType string, clusterName string, ...) (*cres.ClusterInfo, error)
- func AddRules(connectionName string, sgName string, reqInfoList []cres.SecurityRuleInfo) (*cres.SecurityInfo, error)
- func AddSubnet(connectionName string, rsType string, vpcName string, reqInfo cres.SubnetInfo, ...) (*cres.VPCInfo, error)
- func AddTag(connectionName string, resType cres.RSType, resName string, tag cres.KeyValue) (cres.KeyValue, error)
- func AddVMFavorite(...) error
- func AnyCall(connectionName string, reqInfo cres.AnyCallInfo) (*cres.AnyCallInfo, error)
- func AttachDisk(connectionName string, diskName string, ownerVMName string) (*cres.DiskInfo, error)
- func ChangeDiskSize(connectionName string, diskName string, size string) (bool, error)
- func ChangeHealthChecker(connectionName string, nlbName string, healthChecker cres.HealthCheckerInfo) (*cres.NLBInfo, error)
- func ChangeListener(connectionName string, nlbName string, listener cres.ListenerInfo) (*cres.NLBInfo, error)
- func ChangeNodeGroupScaling(connectionName string, clusterName string, nodeGroupName string, ...) (cres.NodeGroupInfo, error)
- func ChangeVMGroup(connectionName string, nlbName string, vmGroup cres.VMGroupInfo) (*cres.NLBInfo, error)
- func CompleteMultipartUpload(connectionName string, bucketName string, objectName string, uploadID string, ...) (string, string, error)
- func ControlVM(connectionName string, rsType string, nameID string, action string) (cres.VMStatus, error)
- func CountAllClusters() (int64, error)
- func CountAllDisks() (int64, error)
- func CountAllKeys() (int64, error)
- func CountAllMyImages() (int64, error)
- func CountAllNLBs() (int64, error)
- func CountAllSecurityGroups() (int64, error)
- func CountAllSubnets() (int64, error)
- func CountAllVMs() (int64, error)
- func CountAllVPCs() (int64, error)
- func CountClustersByConnection(connectionName string) (int64, error)
- func CountDisksByConnection(connectionName string) (int64, error)
- func CountKeysByConnection(connectionName string) (int64, error)
- func CountMyImagesByConnection(connectionName string) (int64, error)
- func CountNLBsByConnection(connectionName string) (int64, error)
- func CountS3BucketsByConnection(connectionName string) (int64, error)
- func CountSecurityGroupsByConnection(connectionName string) (int64, error)
- func CountSubnetsByConnection(connectionName string) (int64, error)
- func CountVMsByConnection(connectionName string) (int64, error)
- func CountVPCsByConnection(connectionName string) (int64, error)
- func CreateCluster(connectionName string, rsType string, reqInfo cres.ClusterInfo, ...) (*cres.ClusterInfo, error)
- func CreateDisk(connectionName string, rsType string, reqInfo cres.DiskInfo, ...) (*cres.DiskInfo, error)
- func CreateFileSystem(connectionName string, reqInfo cres.FileSystemInfo) (*cres.FileSystemInfo, error)
- func CreateKey(connectionName string, rsType string, reqInfo cres.KeyPairReqInfo, ...) (*cres.KeyPairInfo, error)
- func CreateNLB(connectionName string, rsType string, reqInfo cres.NLBInfo, ...) (*cres.NLBInfo, error)
- func CreateS3Bucket(connectionName, bucketName string) (*minio.BucketInfo, error)
- func CreateSecurity(connectionName string, rsType string, reqInfo cres.SecurityReqInfo, ...) (*cres.SecurityInfo, error)
- func CreateVPC(connectionName string, rsType string, reqInfo cres.VPCReqInfo, ...) (*cres.VPCInfo, error)
- func DeleteCSPResource(connectionName string, rsType string, systemID string) (bool, cres.VMStatus, error)
- func DeleteCluster(connectionName string, rsType string, nameID string, force string) (bool, error)
- func DeleteDisk(connectionName string, rsType string, nameID string, force string) (bool, error)
- func DeleteFileSystem(connectionName string, nameID string) (bool, error)
- func DeleteKey(connectionName string, rsType string, nameID string, force string) (bool, error)
- func DeleteMyImage(connectionName string, rsType string, nameID string, force string) (bool, error)
- func DeleteNLB(connectionName string, rsType string, nameID string, force string) (bool, error)
- func DeleteS3Bucket(connectionName, bucketName string, force string) (bool, error)
- func DeleteS3BucketCORS(connectionName string, bucketName string) (bool, error)
- func DeleteS3Object(connectionName, bucketName, objectName string) (bool, error)
- func DeleteS3ObjectDeleteMarker(connectionName, bucketName, objectName string) (bool, error)
- func DeleteS3ObjectVersion(connectionName, bucketName, objectName, versionID string) (bool, error)
- func DeleteSecurity(connectionName string, rsType string, nameID string, force string) (bool, error)
- func DeleteVM(connectionName string, rsType string, nameID string, force string) (bool, cres.VMStatus, error)
- func DeleteVMFavorite(csp, region, zone, imageName, specName string) error
- func DeleteVMRecent(csp, region, zone, imageName, specName string) error
- func DeleteVPC(connectionName string, rsType string, nameID string, force string) (bool, error)
- func DetachDisk(connectionName string, diskName string, ownerVMName string) (bool, error)
- func DisplayResourceUsage(sysInfoTotalMemory string, usage *ResourceUsage)
- func DisplaySystemInfo(sysInfo *SystemInfo)
- func EmptyCheckAndTrim(inputName string, inputValue string) (string, error)
- func EnableVersioning(connectionName string, bucketName string) (bool, error)
- func FindTag(connectionName string, resType cres.RSType, keyword string) ([]*cres.TagInfo, error)
- func ForceEmptyAndDeleteBucket(connectionName, bucketName string) (bool, error)
- func ForceEmptyBucket(connectionName, bucketName string) (bool, error)
- func GenerateClusterToken(connectionName string, clusterName string) (string, error)
- func GetAllSPLockInfo() []string
- func GetCSPResourceInfo(connectionName string, rsType string, systemID string) ([]byte, error)
- func GetCSPResourceName(connectionName string, rsType string, nameID string) (string, error)
- func GetCSPVM(connectionName string, rsType string, cspID string) (*cres.VMInfo, error)
- func GetCluster(connectionName string, rsType string, clusterName string) (*cres.ClusterInfo, error)
- func GetClusterOwnerVPC(connectionName string, cspID string) (owerVPC cres.IID, err error)
- func GetDisk(connectionName string, rsType string, nameID string) (*cres.DiskInfo, error)
- func GetDriverCapabilityInfo(connectionName string) (ifs.DriverCapabilityInfo, error)
- func GetFileSystem(connectionName string, nameID string) (*cres.FileSystemInfo, error)
- func GetID_MGMT(thisMode string) string
- func GetImage(connectionName string, rsType string, nameID string) (*cres.ImageInfo, error)
- func GetKey(connectionName string, rsType string, nameID string) (*cres.KeyPairInfo, error)
- func GetMyImage(connectionName string, rsType string, nameID string) (*cres.MyImageInfo, error)
- func GetNLB(connectionName string, rsType string, nameID string) (*cres.NLBInfo, error)
- func GetNLBOwnerVPC(connectionName string, cspID string) (owerVPC cres.IID, err error)
- func GetOrgVMSpec(connectionName string, nameID string) (string, error)
- func GetPriceInfo(connectionName string, productFamily string, regionName string, ...) (string, error)
- func GetRegionZone(connectionName string, nameID string) (*cres.RegionZoneInfo, error)
- func GetRegionZonePreConfig(driverName string, credentialName string, nameID string) (*cres.RegionZoneInfo, error)
- func GetS3Bucket(connectionName, bucketName string) (*minio.BucketInfo, error)
- func GetS3BucketCORS(connectionName string, bucketName string) (*cors.Config, error)
- func GetS3BucketRegionInfo(connectionName, bucketName string) (string, error)
- func GetS3BucketTotalSize(connectionName, bucketName string) (int64, int64, error)
- func GetS3ObjectInfo(connectionName, bucketName, objectName string) (*minio.ObjectInfo, error)
- func GetS3ObjectInfoWithVersion(connectionName, bucketName, objectName, versionId string) (*minio.ObjectInfo, error)
- func GetS3ObjectStream(connectionName, bucketName, objectName string) (io.ReadCloser, error)
- func GetS3ObjectStreamWithVersion(connectionName, bucketName, objectName, versionId string) (io.ReadCloser, error)
- func GetS3PresignedURL(connectionName string, bucketName string, objectName string, method string, ...) (string, error)
- func GetSGOwnerVPC(connectionName string, cspID string) (owerVPC cres.IID, err error)
- func GetSecurity(connectionName string, rsType string, nameID string) (*cres.SecurityInfo, error)
- func GetSubnet(connectionName string, vpcName string, nameID string) (*cres.SubnetInfo, error)
- func GetTag(connectionName string, resType cres.RSType, resName string, key string) (cres.KeyValue, error)
- func GetVM(connectionName string, rsType string, nameID string) (*cres.VMInfo, error)
- func GetVMGroupHealthInfo(connectionName string, nlbName string) (*cres.HealthInfo, error)
- func GetVMSpec(connectionName string, nameID string) (*cres.VMSpecInfo, error)
- func GetVMStatus(connectionName string, rsType string, nameID string) (cres.VMStatus, error)
- func GetVPC(connectionName string, rsType string, nameID string) (*cres.VPCInfo, error)
- func GetVersioning(connectionName string, bucketName string) (string, error)
- func InitiateMultipartUpload(connectionName string, bucketName string, objectName string) (string, error)
- func InsertOrUpdateVMFavoriteBulk(records []VMFavoriteInfo) (inserted int, skipped int, err error)
- func InsertOrUpdateVMRecent(csp, region, zone, imageName, specName string, elapsedTimeSec float64, ...) error
- func InsertOrUpdateVMRecentBulk(records []VMRecentInfo) (inserted int, skipped int, err error)
- func ListAccessSubnet(connectionName string, nameID string) ([]cres.IID, error)
- func ListCluster(connectionName string, rsType string) ([]*cres.ClusterInfo, error)
- func ListDisk(connectionName string, rsType string) ([]*cres.DiskInfo, error)
- func ListFileSystem(connectionName string) ([]*cres.FileSystemInfo, error)
- func ListImage(connectionName string, rsType string) ([]*cres.ImageInfo, error)
- func ListKey(connectionName string, rsType string) ([]*cres.KeyPairInfo, error)
- func ListMyImage(connectionName string, rsType string) ([]*cres.MyImageInfo, error)
- func ListNLB(connectionName string, rsType string) ([]*cres.NLBInfo, error)
- func ListOrgRegion(connectionName string) (string, error)
- func ListOrgRegionPreConfig(driverName string, credentialName string) (string, error)
- func ListOrgVMSpec(connectionName string) (string, error)
- func ListOrgZone(connectionName string) (string, error)
- func ListProductFamily(connectionName string, regionName string) ([]string, error)
- func ListRegionZone(connectionName string) ([]*cres.RegionZoneInfo, error)
- func ListRegionZonePreConfig(driverName string, credentialName string) ([]*cres.RegionZoneInfo, error)
- func ListResourceName(connectionName, rsType string) ([]string, error)
- func ListS3Buckets(connectionName string) ([]*minio.BucketInfo, error)
- func ListS3ObjectVersions(connectionName string, bucketName string, prefix string) ([]minio.ObjectInfo, error)
- func ListS3Objects(connectionName, bucketName, prefix string) ([]minio.ObjectInfo, error)
- func ListSecurity(connectionName string, rsType string) ([]*cres.SecurityInfo, error)
- func ListTag(connectionName string, resType cres.RSType, resName string) ([]cres.KeyValue, error)
- func ListVM(connectionName string, rsType string) ([]*cres.VMInfo, error)
- func ListVMSpec(connectionName string) ([]*cres.VMSpecInfo, error)
- func ListVMStatus(connectionName string, rsType string) ([]*cres.VMStatusInfo, error)
- func ListVPC(connectionName string, rsType string) ([]*cres.VPCInfo, error)
- func ListVpcSecurity(connectionName, rsType, vpcName string) ([]*cres.SecurityInfo, error)
- func LoadConfigFileYAML(configFilePath string) (string, error)
- func NewS3Client(connInfo *S3ConnectionInfo) (*minio.Client, error)
- func NewS3ClientForBucketCreation(connInfo *S3ConnectionInfo) (*minio.Client, error)
- func PutS3ObjectFromReader(connectionName string, bucketName string, objectName string, reader io.Reader, ...) (minio.UploadInfo, error)
- func RSTypeString(rsType string) string
- func RegisterCluster(connectionName string, vpcUserID string, userIID cres.IID) (*cres.ClusterInfo, error)
- func RegisterDisk(connectionName string, zoneId string, userIID cres.IID) (*cres.DiskInfo, error)
- func RegisterKey(connectionName string, userIID cres.IID) (*cres.KeyPairInfo, error)
- func RegisterMyImage(connectionName string, userIID cres.IID) (*cres.MyImageInfo, error)
- func RegisterNLB(connectionName string, vpcUserID string, userIID cres.IID) (*cres.NLBInfo, error)
- func RegisterSecurity(connectionName string, vpcUserID string, userIID cres.IID) (*cres.SecurityInfo, error)
- func RegisterSubnet(connectionName string, zoneId string, vpcName string, userIID cres.IID) (*cres.VPCInfo, error)
- func RegisterVM(connectionName string, userIID cres.IID) (*cres.VMInfo, error)
- func RegisterVPC(connectionName string, userIID cres.IID) (*cres.VPCInfo, error)
- func RemoveAccessSubnet(connectionName string, nameID string, subnetIID cres.IID) (bool, error)
- func RemoveCSPNodeGroup(connectionName string, clusterName string, systemID string) (bool, error)
- func RemoveCSPSubnet(connectionName string, vpcName string, systemID string) (bool, error)
- func RemoveNLBVMs(connectionName string, nlbName string, vmNames []string) (bool, error)
- func RemoveNodeGroup(connectionName string, clusterName string, nodeGroupName string, force string) (bool, error)
- func RemoveRules(connectionName string, sgName string, reqRuleInfoList []cres.SecurityRuleInfo) (bool, error)
- func RemoveSubnet(connectionName string, vpcName string, nameID string, force string) (bool, error)
- func RemoveTag(connectionName string, resType cres.RSType, resName string, key string) (bool, error)
- func SetNodeGroupAutoScaling(connectionName string, clusterName string, nodeGroupName string, on bool) (bool, error)
- func SetS3BucketCORS(connectionName string, bucketName string, allowedOrigins []string, ...) (bool, error)
- func SnapshotVM(connectionName string, rsType string, reqInfo cres.MyImageInfo, ...) (*cres.MyImageInfo, error)
- func SpiderletAnyCall(connectionName string, reqInfo cres.AnyCallInfo) (*cres.AnyCallInfo, error)
- func StartVM(connectionName string, rsType string, reqInfo cres.VMReqInfo, ...) (*cres.VMInfo, error)
- func SuspendVersioning(connectionName string, bucketName string) (bool, error)
- func UnregisterResource(connectionName string, rsType string, nameId string) (bool, error)
- func UnregisterSubnet(connectionName string, vpcName string, nameId string) (bool, error)
- func UpdateRegionZoneDisplayNames(csp string, infoList []*cres.RegionZoneInfo) ([]*cres.RegionZoneInfo, error)
- func UpgradeCluster(connectionName string, clusterName string, newVersion string) (cres.ClusterInfo, error)
- func UploadPart(connectionName string, bucketName string, objectName string, uploadID string, ...) (string, error)
- func ValidateStruct(is interface{}, emptyPermissionList []string) error
- type AllResourceInfoList
- type AllResourceList
- type CapabilityType
- type ClusterDependentIIDInfo
- type ClusterIIDInfo
- type CompletePart
- type DeleteResult
- type DeletedResourceInfoList
- type DestroyedInfo
- type DiskIIDInfo
- type DiskPartitionInfo
- type FileSystemIIDInfo
- type FirstIIDInfo
- type Initiator
- type KeyIIDInfo
- type ListMultipartUploadsResult
- type ListPartsResult
- type MultipartUploadInfo
- type MyImageIIDInfo
- type NLBIIDInfo
- type NodeGroupIIDInfo
- type ObjectVersionToDelete
- type Owner
- type PartInfo
- type RemainedErrorInfo
- type ResourceUsage
- type ResultVMInfo
- type ResultVPCInfo
- type S3BucketIIDInfo
- type S3ConnectionInfo
- type SGIIDInfo
- type SubnetIIDInfo
- type SubnetReqZoneInfo
- type SystemInfo
- type VMFavoriteInfo
- type VMIIDInfo
- type VMRecentInfo
- type VMUsingResources
- type VPCDependentIIDInfo
- type VPCIIDInfo
- type WAITER
- type ZoneLevelIIDInfo
- type ZoneLevelVPCDependentIIDInfo
Constants ¶
const ( IMAGE string = string(cres.IMAGE) VPC string = string(cres.VPC) SUBNET string = string(cres.SUBNET) SG string = string(cres.SG) KEY string = string(cres.KEY) VM string = string(cres.VM) NLB string = string(cres.NLB) DISK string = string(cres.DISK) MYIMAGE string = string(cres.MYIMAGE) CLUSTER string = string(cres.CLUSTER) NODEGROUP string = string(cres.NODEGROUP) FILESYSTEM string = string(cres.FILESYSTEM) )
define string of resource types redefined for backward compatibility
const ( // Error message templates ERR_GETTING_PROCESS_INFO = "error getting process information: %v" ERR_GETTING_HOST_INFO = "error getting host information: %v" ERR_GETTING_CPU_INFO = "error getting CPU information: %v" ERR_GETTING_MEMORY_INFO = "error getting memory information: %v" ERR_GETTING_DISK_INFO = "error getting disk information: %v" ERR_GETTING_DISK_IO_INFO = "error getting disk I/O information: %v" ERR_GETTING_NETWORK_IO_INFO = "error getting network I/O information: %v" )
const CONNECTION_NAME_COLUMN = "connection_name"
==================================================================== Common column name and struct for GORM
const NAME_ID_COLUMN = "name_id"
const OWNER_CLUSTER_NAME_COLUMN = "owner_cluster_name"
const OWNER_VPC_NAME_COLUMN = "owner_vpc_name"
const SYSTEM_ID_COLUMN = "system_id"
Variables ¶
var GoServicePort string
GO Service Port
var MiddleStartTime string
var ServerIPorName string
// CB-Spider Servcie Address Configuration // cf) https://github.com/cloud-barista/cb-spider/wiki/CB-Spider-Service-Address-Configuration REST and GO SERVER_ADDRESS since v0.4.4
var ServerPort string
var ServiceIPorName string
REST SERVICE_ADDRESS for AdminWeb since v0.4.4
var ServicePort string
var ShortStartTime string
var StartTime string
CB-Spider Start Time
Functions ¶
func AbortMultipartUpload ¶ added in v0.11.6
func AddAccessSubnet ¶ added in v0.10.8
func AddNLBVMs ¶ added in v0.5.11
(1) check exist(NameID) and VMs (2) add VMs (3) Get NLBInfo (4) Set ResoureInfo
func AddNodeGroup ¶ added in v0.6.13
func AddNodeGroup(connectionName string, rsType string, clusterName string, reqInfo cres.NodeGroupInfo, IDTransformMode string) (*cres.ClusterInfo, error)
(1) check exist(NameID) (2) add NodeGroup (3) Get ClusterInfo (4) Set ResoureInfo
func AddRules ¶ added in v0.5.4
func AddRules(connectionName string, sgName string, reqInfoList []cres.SecurityRuleInfo) (*cres.SecurityInfo, error)
(1) check exist(NameID) (2) add Rules
func AddSubnet ¶ added in v0.3.1
func AddSubnet(connectionName string, rsType string, vpcName string, reqInfo cres.SubnetInfo, IDTransformMode string) (*cres.VPCInfo, error)
(1) check exist(NameID) (2) create Resource (3) insert IID
func AddTag ¶ added in v0.9.2
func AddTag(connectionName string, resType cres.RSType, resName string, tag cres.KeyValue) (cres.KeyValue, error)
AddTag adds a tag to a resource.
func AddVMFavorite ¶ added in v0.12.6
func AddVMFavorite(csp, region, zone, imageName, specName, osArch, osPlatform, osDistribution, cpuInfo, gpuInfo, priceInfo string) error
AddVMFavorite adds a new favorite VM configuration
func AnyCall ¶ added in v0.6.9
func AnyCall(connectionName string, reqInfo cres.AnyCallInfo) (*cres.AnyCallInfo, error)
func AttachDisk ¶ added in v0.6.7
(1) check exist(NameID) and VMs (2) attach disk to VM (3) Set ResoureInfo
func ChangeDiskSize ¶ added in v0.6.7
func ChangeHealthChecker ¶ added in v0.5.10
func ChangeHealthChecker(connectionName string, nlbName string, healthChecker cres.HealthCheckerInfo) (*cres.NLBInfo, error)
---------------------------------------------------// @todo To support or not will be decided later. // ---------------------------------------------------// (1) check exist(NameID) (2) change HealthCheckerInfo (3) Get NLBInfo (4) Set ResoureInfo
func ChangeListener ¶ added in v0.5.10
func ChangeListener(connectionName string, nlbName string, listener cres.ListenerInfo) (*cres.NLBInfo, error)
---------------------------------------------------// @todo To support or not will be decided later. // ---------------------------------------------------// (1) check exist(NameID) (2) change listener (3) Get NLBInfo (4) Set ResoureInfo
func ChangeNodeGroupScaling ¶ added in v0.6.13
func ChangeVMGroup ¶ added in v0.5.10
func ChangeVMGroup(connectionName string, nlbName string, vmGroup cres.VMGroupInfo) (*cres.NLBInfo, error)
---------------------------------------------------// @todo To support or not will be decided later. // ---------------------------------------------------// (1) check exist(NameID) (2) change VMGroup (3) Get NLBInfo (4) Set ResoureInfo
func CompleteMultipartUpload ¶ added in v0.11.0
func ControlVM ¶
func ControlVM(connectionName string, rsType string, nameID string, action string) (cres.VMStatus, error)
(1) get IID(NameId) (2) control CSP:VM(SystemId)
func CountAllClusters ¶ added in v0.8.17
func CountAllDisks ¶ added in v0.8.17
func CountAllKeys ¶ added in v0.8.17
func CountAllMyImages ¶ added in v0.8.17
func CountAllNLBs ¶ added in v0.8.17
func CountAllSecurityGroups ¶ added in v0.8.17
func CountAllSubnets ¶ added in v0.8.17
func CountAllVMs ¶ added in v0.8.17
func CountAllVPCs ¶ added in v0.8.17
func CountClustersByConnection ¶ added in v0.8.17
func CountDisksByConnection ¶ added in v0.8.17
func CountKeysByConnection ¶ added in v0.8.17
func CountMyImagesByConnection ¶ added in v0.8.17
func CountNLBsByConnection ¶ added in v0.8.17
func CountS3BucketsByConnection ¶ added in v0.12.1
func CountSecurityGroupsByConnection ¶ added in v0.8.17
func CountSubnetsByConnection ¶ added in v0.8.17
func CountVMsByConnection ¶ added in v0.8.17
func CountVPCsByConnection ¶ added in v0.8.17
func CreateCluster ¶ added in v0.6.13
func CreateCluster(connectionName string, rsType string, reqInfo cres.ClusterInfo, IDTransformMode string) (*cres.ClusterInfo, error)
(1) check exist(NameID) (2) generate SP-XID and create reqIID, driverIID (3) create Resource (4) create spiderIID: {reqNameID, "driverNameID:driverSystemID"} (5) insert spiderIID (6) create userIID (7) set used Resources's userIID
func CreateDisk ¶ added in v0.6.7
func CreateDisk(connectionName string, rsType string, reqInfo cres.DiskInfo, IDTransformMode string) (*cres.DiskInfo, error)
(1) check exist(NameID) (2) generate SP-XID and create reqIID, driverIID (3) create Resource (4) create spiderIID: {reqNameID, "driverNameID:driverSystemID"} (5) insert spiderIID (6) create userIID
func CreateFileSystem ¶ added in v0.10.8
func CreateFileSystem(connectionName string, reqInfo cres.FileSystemInfo) (*cres.FileSystemInfo, error)
func CreateKey ¶
func CreateKey(connectionName string, rsType string, reqInfo cres.KeyPairReqInfo, IDTransformMode string) (*cres.KeyPairInfo, error)
(1) check exist(NameID) (2) generate SP-XID and create reqIID, driverIID (3) create Resource (4) create spiderIID: {reqNameID, "driverNameID:driverSystemID"} (5) insert spiderIID (6) create userIID
func CreateNLB ¶ added in v0.5.10
func CreateNLB(connectionName string, rsType string, reqInfo cres.NLBInfo, IDTransformMode string) (*cres.NLBInfo, error)
(1) check exist(NameID) (2) generate SP-XID and create reqIID, driverIID (3) create Resource (4) create spiderIID: {reqNameID, "driverNameID:driverSystemID"} (5) insert spiderIID (6) create userIID
func CreateS3Bucket ¶ added in v0.10.8
func CreateS3Bucket(connectionName, bucketName string) (*minio.BucketInfo, error)
func CreateSecurity ¶
func CreateSecurity(connectionName string, rsType string, reqInfo cres.SecurityReqInfo, IDTransformMode string) (*cres.SecurityInfo, error)
(1) check exist(NameID) (2) generate SP-XID and create reqIID, driverIID (3) create Resource (4) create spiderIID: {reqNameID, "driverNameID:driverSystemID"} (5) insert spiderIID (6) create userIID
func DeleteCSPResource ¶
func DeleteCSPResource(connectionName string, rsType string, systemID string) (bool, cres.VMStatus, error)
delete CSP's Resource(SystemId)
func DeleteCluster ¶ added in v0.7.6
func DeleteDisk ¶ added in v0.7.6
func DeleteFileSystem ¶ added in v0.10.8
func DeleteMyImage ¶ added in v0.7.6
func DeleteS3Bucket ¶ added in v0.10.8
func DeleteS3BucketCORS ¶ added in v0.11.0
func DeleteS3Object ¶ added in v0.10.8
func DeleteS3ObjectDeleteMarker ¶ added in v0.11.0
DeleteS3ObjectDeleteMarker deletes a delete marker (null version ID case)
func DeleteS3ObjectVersion ¶ added in v0.11.0
DeleteS3ObjectVersion deletes a specific version of an object
func DeleteSecurity ¶ added in v0.7.6
func DeleteSecurity(connectionName string, rsType string, nameID string, force string) (bool, error)
(1) get spiderIID (2) delete Resource(SystemId) (3) delete IID
func DeleteVMFavorite ¶ added in v0.12.6
DeleteVMFavorite removes a favorite VM configuration
func DeleteVMRecent ¶ added in v0.12.6
DeleteVMRecent removes a recent VM record
func DetachDisk ¶ added in v0.6.7
(1) check exist(NameID) (2) detach disk from VM
func DisplayResourceUsage ¶ added in v0.10.4
func DisplayResourceUsage(sysInfoTotalMemory string, usage *ResourceUsage)
DisplayResourceUsage prints the collected resource usage information
func DisplaySystemInfo ¶ added in v0.10.4
func DisplaySystemInfo(sysInfo *SystemInfo)
DisplaySystemInfo prints the collected system information
func EmptyCheckAndTrim ¶ added in v0.4.15
func EnableVersioning ¶ added in v0.10.8
func ForceEmptyAndDeleteBucket ¶ added in v0.11.0
ForceEmptyAndDeleteBucket completely empties a bucket and deletes it
func ForceEmptyBucket ¶ added in v0.11.0
ForceEmptyBucket completely empties a bucket but keeps the bucket
func GenerateClusterToken ¶ added in v0.11.13
Generate Token for Cluster Authentication (1) get IID(NameId) (2) generate token using driver
func GetAllSPLockInfo ¶ added in v0.5.7
func GetAllSPLockInfo() []string
func GetCSPResourceInfo ¶ added in v0.6.17
Get Json string of CSP's Resource(SystemId) Info
func GetCSPResourceName ¶ added in v0.6.6
================ get CSP Name
func GetCluster ¶ added in v0.6.13
func GetCluster(connectionName string, rsType string, clusterName string) (*cres.ClusterInfo, error)
(1) get IID(NameId) (2) get resource(SystemId) (3) set ResourceInfo(IID.NameId)
func GetClusterOwnerVPC ¶ added in v0.6.13
func GetDisk ¶ added in v0.6.7
(1) get IID(NameId) (2) get resource(SystemId) (3) set ResourceInfo(IID.NameId)
func GetDriverCapabilityInfo ¶ added in v0.10.3
func GetDriverCapabilityInfo(connectionName string) (ifs.DriverCapabilityInfo, error)
================ DriverCapabilityInfo Handler
func GetFileSystem ¶ added in v0.10.8
func GetFileSystem(connectionName string, nameID string) (*cres.FileSystemInfo, error)
func GetID_MGMT ¶ added in v0.8.15
func GetMyImage ¶ added in v0.6.10
(1) get IID(NameId) (2) get resource(SystemId) (3) set ResourceInfo(IID.NameId)
func GetNLB ¶ added in v0.5.10
(1) get IID(NameId) (2) get resource(SystemId) (3) set ResourceInfo(IID.NameId)
func GetNLBOwnerVPC ¶ added in v0.5.10
func GetPriceInfo ¶ added in v0.8.2
func GetRegionZone ¶ added in v0.7.6
func GetRegionZone(connectionName string, nameID string) (*cres.RegionZoneInfo, error)
func GetRegionZonePreConfig ¶ added in v0.8.5
func GetS3Bucket ¶ added in v0.10.8
func GetS3Bucket(connectionName, bucketName string) (*minio.BucketInfo, error)
func GetS3BucketCORS ¶ added in v0.11.0
func GetS3BucketRegionInfo ¶ added in v0.11.6
func GetS3BucketTotalSize ¶ added in v0.12.5
func GetS3ObjectInfo ¶ added in v0.10.8
func GetS3ObjectInfo(connectionName, bucketName, objectName string) (*minio.ObjectInfo, error)
func GetS3ObjectInfoWithVersion ¶ added in v0.11.0
func GetS3ObjectInfoWithVersion(connectionName, bucketName, objectName, versionId string) (*minio.ObjectInfo, error)
func GetS3ObjectStream ¶ added in v0.10.8
func GetS3ObjectStream(connectionName, bucketName, objectName string) (io.ReadCloser, error)
func GetS3ObjectStreamWithVersion ¶ added in v0.11.0
func GetS3ObjectStreamWithVersion(connectionName, bucketName, objectName, versionId string) (io.ReadCloser, error)
func GetS3PresignedURL ¶ added in v0.10.8
func GetSGOwnerVPC ¶ added in v0.5.5
func GetSecurity ¶
(1) get IID(NameId) (2) get resource(SystemId) (3) set ResourceInfo(IID.NameId)
func GetSubnet ¶ added in v0.9.5
(1) get spiderIID(NameId) (2) get resource(driverIID) (3) set ResourceInfo(userIID)
func GetTag ¶ added in v0.9.2
func GetTag(connectionName string, resType cres.RSType, resName string, key string) (cres.KeyValue, error)
GetTag gets a specific tag of a resource.
func GetVMGroupHealthInfo ¶ added in v0.5.10
func GetVMGroupHealthInfo(connectionName string, nlbName string) (*cres.HealthInfo, error)
(1) check exist(NameID) (2) Get HealthInfo (3) Get NLBInfo (4) Set ResoureInfo
func GetVMStatus ¶
(1) get IID(NameId) (2) get CSP:VMStatus(SystemId)
func GetVersioning ¶ added in v0.11.0
func InitiateMultipartUpload ¶ added in v0.11.0
func InsertOrUpdateVMFavoriteBulk ¶ added in v0.12.6
func InsertOrUpdateVMFavoriteBulk(records []VMFavoriteInfo) (inserted int, skipped int, err error)
InsertOrUpdateVMFavoriteBulk imports multiple VM favorite records, skipping duplicates
func InsertOrUpdateVMRecent ¶ added in v0.12.6
func InsertOrUpdateVMRecent(csp, region, zone, imageName, specName string, elapsedTimeSec float64, osArch, osPlatform, osDistribution, cpuInfo, gpuInfo, priceInfo string) error
InsertOrUpdateVMRecent inserts or updates VM creation record in Recent table
func InsertOrUpdateVMRecentBulk ¶ added in v0.12.6
func InsertOrUpdateVMRecentBulk(records []VMRecentInfo) (inserted int, skipped int, err error)
InsertOrUpdateVMRecentBulk imports multiple VM recent records, skipping duplicates
func ListAccessSubnet ¶ added in v0.10.8
func ListCluster ¶ added in v0.6.13
func ListCluster(connectionName string, rsType string) ([]*cres.ClusterInfo, error)
(1) get IID:list (2) get ClusterInfo:list (3) set userIID, and ...
func ListFileSystem ¶ added in v0.10.8
func ListFileSystem(connectionName string) ([]*cres.FileSystemInfo, error)
func ListKey ¶
func ListKey(connectionName string, rsType string) ([]*cres.KeyPairInfo, error)
(1) get IID:list (2) get KeyInfo:list
func ListMyImage ¶ added in v0.6.10
func ListMyImage(connectionName string, rsType string) ([]*cres.MyImageInfo, error)
(1) get IID:list (2) get MyImageInfo:list (3) set userIID, and ...
func ListOrgRegion ¶ added in v0.7.6
func ListOrgRegionPreConfig ¶ added in v0.8.5
func ListOrgVMSpec ¶
func ListOrgZone ¶ added in v0.7.6
func ListProductFamily ¶ added in v0.8.2
================ PriceInfo Handler
func ListRegionZone ¶ added in v0.7.6
func ListRegionZone(connectionName string) ([]*cres.RegionZoneInfo, error)
================ RegionZone Handler
func ListRegionZonePreConfig ¶ added in v0.8.5
func ListRegionZonePreConfig(driverName string, credentialName string) ([]*cres.RegionZoneInfo, error)
func ListResourceName ¶ added in v0.8.20
ListResourceName lists resource names by connectionName and rsType
func ListS3Buckets ¶ added in v0.10.8
func ListS3Buckets(connectionName string) ([]*minio.BucketInfo, error)
func ListS3ObjectVersions ¶ added in v0.10.8
func ListS3Objects ¶ added in v0.10.8
func ListS3Objects(connectionName, bucketName, prefix string) ([]minio.ObjectInfo, error)
func ListSecurity ¶
func ListSecurity(connectionName string, rsType string) ([]*cres.SecurityInfo, error)
(1) get IID:list (2) get SecurityInfo:list (3) set userIID, and ...
func ListVMSpec ¶
func ListVMSpec(connectionName string) ([]*cres.VMSpecInfo, error)
================ VMSpec Handler
func ListVMStatus ¶
func ListVMStatus(connectionName string, rsType string) ([]*cres.VMStatusInfo, error)
(1) get IID:list (2) get VMStatusInfo:list
func ListVpcSecurity ¶ added in v0.10.2
func ListVpcSecurity(connectionName, rsType, vpcName string) ([]*cres.SecurityInfo, error)
(1) get IID of Security Group for typical VPC:list (2) get SecurityInfo:list (3) set userIID, and ...
func LoadConfigFileYAML ¶ added in v0.8.18
loading config file with yaml format
func NewS3Client ¶ added in v0.10.8
func NewS3Client(connInfo *S3ConnectionInfo) (*minio.Client, error)
func NewS3ClientForBucketCreation ¶ added in v0.12.1
func NewS3ClientForBucketCreation(connInfo *S3ConnectionInfo) (*minio.Client, error)
NewS3ClientForBucketCreation creates a client for bucket creation For Tencent, uses path-style (non virtual-hosted-style) to avoid DNS issues
func PutS3ObjectFromReader ¶ added in v0.11.0
func RSTypeString ¶ added in v0.8.20
func RegisterCluster ¶ added in v0.6.13
func RegisterCluster(connectionName string, vpcUserID string, userIID cres.IID) (*cres.ClusterInfo, error)
UserIID{UserID, CSP-ID} => SpiderIID{UserID, SP-XID:CSP-ID} (0) check VPC existence(VPC UserID) (1) check existence(UserID) (2) get resource info(CSP-ID) (3) create spiderIID: {UserID, SP-XID:CSP-ID} (4) insert spiderIID
func RegisterDisk ¶ added in v0.6.7
UserIID{UserID, CSP-ID} => SpiderIID{UserID, SP-XID:CSP-ID} (1) check existence(UserID) (2) get resource info(CSP-ID) (3) create spiderIID: {UserID, SP-XID:CSP-ID} (4) insert spiderIID
func RegisterKey ¶ added in v0.4.12
UserIID{UserID, CSP-ID} => SpiderIID{UserID, SP-XID:CSP-ID} (1) check existence(UserID) (2) get resource info(CSP-ID) (3) create spiderIID: {UserID, SP-XID:CSP-ID} (4) insert spiderIID
func RegisterMyImage ¶ added in v0.6.10
UserIID{UserID, CSP-ID} => SpiderIID{UserID, SP-XID:CSP-ID} (1) check existence(UserID) (2) get resource info(CSP-ID) (3) create spiderIID: {UserID, SP-XID:CSP-ID} (4) insert spiderIID
func RegisterNLB ¶ added in v0.5.10
UserIID{UserID, CSP-ID} => SpiderIID{UserID, SP-XID:CSP-ID} (0) check VPC existence(VPC UserID) (1) check existence(UserID) (2) get resource info(CSP-ID) (3) create spiderIID: {UserID, SP-XID:CSP-ID} (4) insert spiderIID
func RegisterSecurity ¶ added in v0.4.12
func RegisterSecurity(connectionName string, vpcUserID string, userIID cres.IID) (*cres.SecurityInfo, error)
UserIID{UserID, CSP-ID} => SpiderIID{UserID, SP-XID:CSP-ID} (0) check VPC existence(VPC UserID) (1) check existence(UserID) (2) get resource info(CSP-ID) (3) create spiderIID: {UserID, SP-XID:CSP-ID} (4) insert spiderIID
func RegisterSubnet ¶ added in v0.7.6
func RegisterSubnet(connectionName string, zoneId string, vpcName string, userIID cres.IID) (*cres.VPCInfo, error)
UserIID{UserID, CSP-ID} => SpiderIID{UserID, SP-XID:CSP-ID} (1) check existence(UserID) (2) get resource info(CSP-ID) (3) create spiderIID: {UserID, SP-XID:CSP-ID} (4) insert spiderIID
func RegisterVM ¶ added in v0.4.12
UserIID{UserID, CSP-ID} => SpiderIID{UserID, SP-XID:CSP-ID} (1) check existence(UserID) (2) get resource info(CSP-ID) (3) create spiderIID: {UserID, SP-XID:CSP-ID} (4) insert spiderIID
func RegisterVPC ¶ added in v0.4.12
UserIID{UserID, CSP-ID} => SpiderIID{UserID, SP-XID:CSP-ID} (1) check existence(UserID) (2) get resource info(CSP-ID) (3) create spiderIID: {UserID, SP-XID:CSP-ID} (4) insert spiderIID
func RemoveAccessSubnet ¶ added in v0.10.8
func RemoveCSPNodeGroup ¶ added in v0.6.14
func RemoveCSPSubnet ¶ added in v0.4.11
remove CSP's Subnet(SystemId)
func RemoveNLBVMs ¶ added in v0.5.11
(1) check exist(NameID) (2) remove VMs
func RemoveNodeGroup ¶ added in v0.6.13
func RemoveRules ¶ added in v0.5.4
func RemoveRules(connectionName string, sgName string, reqRuleInfoList []cres.SecurityRuleInfo) (bool, error)
(1) check exist(NameID) (2) remove Rules
func RemoveSubnet ¶ added in v0.4.11
(1) get spiderIID (2) delete Resource(SystemId) (3) delete IID
func RemoveTag ¶ added in v0.9.2
func RemoveTag(connectionName string, resType cres.RSType, resName string, key string) (bool, error)
RemoveTag removes a specific tag from a resource.
func SetNodeGroupAutoScaling ¶ added in v0.6.13
func SetS3BucketCORS ¶ added in v0.11.0
func SnapshotVM ¶ added in v0.6.10
func SnapshotVM(connectionName string, rsType string, reqInfo cres.MyImageInfo, IDTransformMode string) (*cres.MyImageInfo, error)
(1) check exist(NameID) (2) generate SP-XID and create reqIID, driverIID (3) create Resource (4) create spiderIID: {reqNameID, "driverNameID:driverSystemID"} (5) insert spiderIID (6) create userIID
func SpiderletAnyCall ¶ added in v0.9.8
func SpiderletAnyCall(connectionName string, reqInfo cres.AnyCallInfo) (*cres.AnyCallInfo, error)
// for Spiderlet
func StartVM ¶
func StartVM(connectionName string, rsType string, reqInfo cres.VMReqInfo, IDTransformMode string) (*cres.VMInfo, error)
(1) check exist(NameID) (2) generate SP-XID and create reqIID, driverIID (3) clone the reqInfo with DriverIID (4) create Resource (5) create spiderIID: {reqNameID, "driverNameID:driverSystemID"} (6) insert spiderIID (7) create userIID
func SuspendVersioning ¶ added in v0.10.8
func UnregisterResource ¶ added in v0.4.12
UnregisterResource API does not delete the real resource. This API just unregister the resource from Spider. (1) check exist(NameID) (2) delete SpiderIID
func UnregisterSubnet ¶ added in v0.7.6
func UpdateRegionZoneDisplayNames ¶ added in v0.10.1
func UpdateRegionZoneDisplayNames(csp string, infoList []*cres.RegionZoneInfo) ([]*cres.RegionZoneInfo, error)
func UpgradeCluster ¶ added in v0.6.14
func UploadPart ¶ added in v0.11.0
func ValidateStruct ¶ added in v0.4.15
Types ¶
type AllResourceInfoList ¶ added in v0.10.2
type AllResourceInfoList struct {
ResourceType cres.RSType `json:"ResourceType"`
AllListInfo struct {
MappedInfoList []interface{} `json:"MappedInfoList"`
OnlySpiderList []*cres.IID `json:"OnlySpiderList"`
OnlyCSPInfoList []interface{} `json:"OnlyCSPInfoList"`
}
}
func ListAllResourceInfo ¶ added in v0.10.2
func ListAllResourceInfo(connectionName string, rsType cres.RSType) (AllResourceInfoList, error)
type AllResourceList ¶
type AllResourceList struct {
AllList struct {
MappedList []*cres.IID `json:"MappedList"`
OnlySpiderList []*cres.IID `json:"OnlySpiderList"`
OnlyCSPList []*cres.IID `json:"OnlyCSPList"`
}
}
func ListAllResource ¶
func ListAllResource(connectionName string, rsType string) (AllResourceList, error)
list all Resources for management (1) get IID:list (2) get CSP:list (3) filtering CSP-list by IID-list (4) make MappedList, OnlySpiderList, OnlyCSPList
type CapabilityType ¶ added in v0.10.3
type CapabilityType string
const ( PRICE_INFO CapabilityType = "PriceInfo" CLUSTER_HANDLER CapabilityType = "ClusterHandler" TAG_HANDLER CapabilityType = "TagHandler" ZONE_BASED_CONTROL CapabilityType = "Zone-based Control" )
type ClusterDependentIIDInfo ¶ added in v0.7.6
type ClusterIIDInfo ¶ added in v0.7.6
type ClusterIIDInfo VPCDependentIIDInfo
==================================================================== type for GORM
func (ClusterIIDInfo) TableName ¶ added in v0.7.6
func (ClusterIIDInfo) TableName() string
type CompletePart ¶ added in v0.11.0
type DeleteResult ¶ added in v0.11.0
func DeleteMultipleObjectVersions ¶ added in v0.11.0
func DeleteMultipleObjectVersions(connectionName, bucketName string, objects []ObjectVersionToDelete) ([]DeleteResult, error)
DeleteMultipleObjectVersions deletes multiple object versions
func DeleteMultipleObjects ¶ added in v0.11.0
func DeleteMultipleObjects(connectionName string, bucketName string, objectNames []string) ([]DeleteResult, error)
type DeletedResourceInfoList ¶ added in v0.8.20
type DeletedResourceInfoList struct {
ResourceType string `json:"ResourceType" validate:"required" example:"VPC"` // Resource type
IsAllDeleted bool `json:"IsAllDeleted" validate:"required" example:"true"` // true: all deleted, false: some remained
DeletedIIDList []*cres.IID `json:"DeletedIIDList" validate:"required"` // List of deleted resource IDs
RemainedErrorInfoList []*RemainedErrorInfo `json:"RemainedErrorInfoList" validate:"required"` // List of resources that failed to delete
}
DeletedResourceInfoList represents information about deleted resources by type
type DestroyedInfo ¶ added in v0.8.20
type DestroyedInfo struct {
IsAllDestroyed bool `json:"IsAllDestroyed" validate:"required" example:"true"` // true: all destroyed, false: some remained
DestroyedList []*DeletedResourceInfoList `json:"DeletedAllListByResourceType" validate:"required"` // List of resources deleted by type
}
DestroyedInfo represents the status of resource destruction in a connection
func Destroy ¶ added in v0.8.20
func Destroy(connectionName string) (DestroyedInfo, error)
Destroy all Resources in a Connection
type DiskIIDInfo ¶ added in v0.7.6
type DiskIIDInfo ZoneLevelIIDInfo
func (DiskIIDInfo) TableName ¶ added in v0.7.6
func (DiskIIDInfo) TableName() string
type DiskPartitionInfo ¶ added in v0.10.4
DiskPartitionInfo contains information about a disk partition
type FileSystemIIDInfo ¶ added in v0.10.8
type FileSystemIIDInfo struct {
ConnectionName string `gorm:"primaryKey"` // ex) "aws-seoul-config"
ZoneId string // ex) "ap-southeast-2a"
NameId string `gorm:"primaryKey"` // ex) "my_filesystem"
SystemId string // ID in CSP, ex) "fs-12345678"
OwnerVPCName string // ex) "my_vpc" - NOT primaryKey
}
func (FileSystemIIDInfo) TableName ¶ added in v0.10.8
func (FileSystemIIDInfo) TableName() string
type FirstIIDInfo ¶ added in v0.7.6
type KeyIIDInfo ¶ added in v0.7.6
type KeyIIDInfo FirstIIDInfo
func (KeyIIDInfo) TableName ¶ added in v0.7.6
func (KeyIIDInfo) TableName() string
type ListMultipartUploadsResult ¶ added in v0.11.6
type ListMultipartUploadsResult struct {
Bucket string `xml:"Bucket"`
KeyMarker string `xml:"KeyMarker"`
UploadIDMarker string `xml:"UploadIdMarker"`
NextKeyMarker string `xml:"NextKeyMarker"`
NextUploadIDMarker string `xml:"NextUploadIdMarker"`
MaxUploads int `xml:"MaxUploads"`
IsTruncated bool `xml:"IsTruncated"`
Uploads []MultipartUploadInfo `xml:"Upload"`
Prefix string `xml:"Prefix"`
Delimiter string `xml:"Delimiter"`
}
type ListPartsResult ¶ added in v0.11.6
type ListPartsResult struct {
Bucket string `xml:"Bucket"`
Key string `xml:"Key"`
UploadID string `xml:"UploadId"`
PartNumberMarker int `xml:"PartNumberMarker"`
NextPartNumberMarker int `xml:"NextPartNumberMarker"`
MaxParts int `xml:"MaxParts"`
IsTruncated bool `xml:"IsTruncated"`
Parts []PartInfo `xml:"Part"`
Initiator Initiator `xml:"Initiator"`
Owner Owner `xml:"Owner"`
StorageClass string `xml:"StorageClass"`
}
type MultipartUploadInfo ¶ added in v0.11.6
type MyImageIIDInfo ¶ added in v0.7.6
type MyImageIIDInfo FirstIIDInfo
func (MyImageIIDInfo) TableName ¶ added in v0.7.6
func (MyImageIIDInfo) TableName() string
type NLBIIDInfo ¶ added in v0.7.6
type NLBIIDInfo VPCDependentIIDInfo
func (NLBIIDInfo) TableName ¶ added in v0.7.6
func (NLBIIDInfo) TableName() string
type NodeGroupIIDInfo ¶ added in v0.7.6
type NodeGroupIIDInfo ClusterDependentIIDInfo
func (NodeGroupIIDInfo) TableName ¶ added in v0.7.6
func (NodeGroupIIDInfo) TableName() string
type ObjectVersionToDelete ¶ added in v0.11.0
Helper struct for versioned delete operations
type RemainedErrorInfo ¶ added in v0.8.20
type RemainedErrorInfo struct {
Name string `json:"Name" validate:"required" example:"vpc-01"` // Resource name that failed to delete
ErrorMsg string `json:"ErrorMsg" validate:"required" example:"delete error"` // Error message for the failed resource
}
RemainedErrorInfo provides details of resources that failed to delete
type ResourceUsage ¶ added in v0.10.4
type ResourceUsage struct {
// System information
SystemCPUPercent string // Total CPU usage with % format
SystemCPUCorePercent map[string]string // Per-core CPU usage percentages with core number as key
SystemMemoryUsed string // GiB format
SystemMemoryTotal string // GiB format
SystemMemoryPercent string // % format
SystemDiskRead string
SystemDiskWrite string
SystemNetSent string
SystemNetReceived string
// Process information
ProcessName string
ProcessCPUPercent string // Total process CPU usage with % format
ProcessCPUCorePercent map[string]string // Per-core process CPU usage percentages with core number as key
ProcessMemoryUsed string // GiB format
ProcessMemoryPercent string // % format
ProcessDiskRead string
ProcessDiskWrite string
ProcessNetSent string
ProcessNetReceived string
}
ResourceUsage contains system resource usage information
func FetchResourceUsage ¶ added in v0.10.4
func FetchResourceUsage() (ResourceUsage, error)
FetchResourceUsage collects and returns resource usage information
type ResultVMInfo ¶ added in v0.5.9
type ResultVMInfo struct {
// contains filtered or unexported fields
}
type ResultVPCInfo ¶ added in v0.5.9
type ResultVPCInfo struct {
// contains filtered or unexported fields
}
type S3BucketIIDInfo ¶ added in v0.10.8
type S3BucketIIDInfo struct {
ConnectionName string `gorm:"primaryKey"`
NameId string `gorm:"primaryKey"`
SystemId string
Region string
}
func (S3BucketIIDInfo) TableName ¶ added in v0.10.8
func (S3BucketIIDInfo) TableName() string
type S3ConnectionInfo ¶ added in v0.10.8
type S3ConnectionInfo struct {
Endpoint string
AccessKey string
SecretKey string
UseSSL bool
RegionRequired bool
Region string
ProviderName string
AppId string // Tencent COS AppId
}
func GetS3ConnectionInfo ¶ added in v0.10.8
func GetS3ConnectionInfo(connectionName string) (*S3ConnectionInfo, error)
type SGIIDInfo ¶ added in v0.7.6
type SGIIDInfo VPCDependentIIDInfo
type SubnetIIDInfo ¶ added in v0.7.6
type SubnetIIDInfo ZoneLevelVPCDependentIIDInfo
func (SubnetIIDInfo) TableName ¶ added in v0.7.6
func (SubnetIIDInfo) TableName() string
type SubnetReqZoneInfo ¶ added in v0.8.19
type SystemInfo ¶ added in v0.10.4
type SystemInfo struct {
Hostname string
Platform string
PlatformVersion string
KernelArch string
KernelVersion string
Uptime string
CPUModel string
PhysicalCores int
LogicalCores int
ClockSpeed string
TotalMemory string
SwapMemory string
DiskPartitions []DiskPartitionInfo
}
SystemInfo contains all system information
func FetchSystemInfo ¶ added in v0.10.4
func FetchSystemInfo() (SystemInfo, error)
FetchSystemInfo collects and returns system information
type VMFavoriteInfo ¶ added in v0.12.6
type VMFavoriteInfo struct {
CSP string `gorm:"primaryKey" json:"CSP"`
Region string `gorm:"primaryKey" json:"Region"`
Zone string `gorm:"primaryKey" json:"Zone"`
ImageName string `gorm:"primaryKey" json:"ImageName"`
SpecName string `gorm:"primaryKey" json:"SpecName"`
OSArch string `json:"OSArch"` // OS Architecture (e.g., x86_64, arm64)
OsPlatform string `json:"OsPlatform"` // OS Platform (e.g., Linux, Windows)
OsDistribution string `json:"OsDistribution"` // OS Distribution (e.g., Ubuntu, CentOS)
CPUInfo string `json:"CPUInfo"` // CPU info (e.g., "8/16 GiB")
GPUInfo string `json:"GPUInfo"` // GPU info (e.g., "2/16 GB" or GPU model)
PriceInfo string `json:"PriceInfo"` // Price info (e.g., "$0.0116")
CreatedAt string `json:"CreatedAt"` // Timestamp when added to favorites (RFC3339 format)
}
VMFavoriteInfo stores user's favorite VM image and spec combinations
func GetVMFavoriteList ¶ added in v0.12.6
func GetVMFavoriteList(csp, region, zone string, sortBy, sortOrder string) ([]VMFavoriteInfo, error)
GetVMFavoriteList retrieves favorite VM configurations
func (VMFavoriteInfo) TableName ¶ added in v0.12.6
func (VMFavoriteInfo) TableName() string
type VMIIDInfo ¶ added in v0.7.6
type VMIIDInfo ZoneLevelIIDInfo
type VMRecentInfo ¶ added in v0.12.6
type VMRecentInfo struct {
CSP string `gorm:"primaryKey"`
Region string `gorm:"primaryKey"`
Zone string `gorm:"primaryKey"`
ImageName string `gorm:"primaryKey"`
SpecName string `gorm:"primaryKey"`
OSArch string `gorm:"column:os_arch" json:"OSArch"` // OS Architecture (e.g., x86_64, arm64)
OsPlatform string `gorm:"column:os_platform" json:"OsPlatform"` // OS Platform (e.g., Linux, Windows)
OsDistribution string `gorm:"column:os_distribution" json:"OsDistribution"` // OS Distribution (e.g., Ubuntu, CentOS)
CPUInfo string `gorm:"column:cpu_info" json:"CPUInfo"` // CPU info (e.g., "8/16 GiB")
GPUInfo string `gorm:"column:gpu_info" json:"GPUInfo"` // GPU info (e.g., "2/16 GB" or GPU model)
PriceInfo string `gorm:"column:price_info" json:"PriceInfo"` // Price info (e.g., "$0.0116")
AvgCreationTime float64 // Average VM creation time in seconds
CreationCount int64 // Number of successful VM creations
LastCreatedAt string // Last creation timestamp (RFC3339 format)
}
VMRecentInfo stores VM creation history for recent successful deployments
func GetVMRecentList ¶ added in v0.12.6
func GetVMRecentList(csp, region, zone string, limit int, sortBy, sortOrder string) ([]VMRecentInfo, error)
GetVMRecentList retrieves recent VM creation records with optional sorting
func (VMRecentInfo) TableName ¶ added in v0.12.6
func (VMRecentInfo) TableName() string
type VMUsingResources ¶ added in v0.5.5
type VMUsingResources struct {
Resources struct {
VPC *cres.IID `json:"VPC"`
SGList []*cres.IID `json:"SGList"`
VMKey *cres.IID `json:"VMKey"`
}
}
func GetVMUsingRS ¶ added in v0.5.5
func GetVMUsingRS(connectionName string, cspID string) (VMUsingResources, error)
type VPCDependentIIDInfo ¶ added in v0.7.6
type VPCIIDInfo ¶ added in v0.7.6
type VPCIIDInfo FirstIIDInfo
==================================================================== type for GORM
func (VPCIIDInfo) TableName ¶ added in v0.7.6
func (VPCIIDInfo) TableName() string
type WAITER ¶ added in v0.5.11
type WAITER struct {
Sleep int // sec, default = 1
Timeout int // sec, default = 120
// contains filtered or unexported fields
}
============================================
type ZoneLevelIIDInfo ¶ added in v0.8.11
type ZoneLevelVPCDependentIIDInfo ¶ added in v0.8.19
type ZoneLevelVPCDependentIIDInfo struct {
ConnectionName string `gorm:"primaryKey"` // ex) "aws-seoul-config"
ZoneId string // ex) "ap-northeast-2a"
NameId string `gorm:"primaryKey"` // ex) "my_resource"
SystemId string // ID in CSP, ex) "i7baab81a4ez"
OwnerVPCName string `gorm:"primaryKey"` // ex) "my_vpc" for NLB
}
Source Files
¶
- AnyCallHandler.go
- ClusterManager.go
- CommonManager.go
- DiskManager.go
- DriverCapabilityInfoHandler.go
- FileSystemManager.go
- KeyPairManager.go
- MyImageManager.go
- NLBManager.go
- PriceInfoHandler.go
- PublicImageHandler.go
- RegionZoneHandler.go
- S3Manager.go
- SecurityGroupManager.go
- SystemStatsHandler.go
- TagManager.go
- VMManager.go
- VMSpecHandler.go
- VPC-SubnetManager.go
- Waiter.go
- common.go
- validator.go