Documentation ¶
Index ¶
- Constants
- func ConvertDiskStatus(diskStatus string) irs.DiskStatus
- func ConvertImageStatus(myImageStatus string) irs.MyImageStatus
- func ConvertJsonString(v interface{}) (string, error)
- func ConvertVMStatusString(vmStatus string) (irs.VMStatus, error)
- func GetCallLogScheme(zoneInfo string, resourceType call.RES_TYPE, resourceName string, ...) call.CLOUDLOGSCHEMA
- func InitLog()
- func LoggingError(hiscallInfo call.CLOUDLOGSCHEMA, err error)
- func LoggingInfo(hiscallInfo call.CLOUDLOGSCHEMA, start time.Time)
- func MappingImageInfo(serverImage vserver.Product) irs.ImageInfo
- func MappingKeyPairInfo(NcpKeyPairList *vserver.LoginKey) irs.KeyPairInfo
- func String(n int32) string
- type Code
- type ErrorResponse
- type NcpRegionZoneHandler
- func (regionZoneHandler NcpRegionZoneHandler) GetRegionZone(regionCode string) (irs.RegionZoneInfo, error)
- func (regionZoneHandler *NcpRegionZoneHandler) ListOrgRegion() (string, error)
- func (regionZoneHandler *NcpRegionZoneHandler) ListOrgZone() (string, error)
- func (regionZoneHandler *NcpRegionZoneHandler) ListRegionZone() ([]*irs.RegionZoneInfo, error)
- type NcpVpcDiskHandler
- func (diskHandler *NcpVpcDiskHandler) AttachDisk(diskIID irs.IID, vmIID irs.IID) (irs.DiskInfo, error)
- func (diskHandler *NcpVpcDiskHandler) ChangeDiskSize(diskIID irs.IID, size string) (bool, error)
- func (diskHandler *NcpVpcDiskHandler) CreateDisk(diskReqInfo irs.DiskInfo) (irs.DiskInfo, error)
- func (diskHandler *NcpVpcDiskHandler) DeleteDisk(diskIID irs.IID) (bool, error)
- func (diskHandler *NcpVpcDiskHandler) DetachDisk(diskIID irs.IID, ownerVM irs.IID) (bool, error)
- func (diskHandler *NcpVpcDiskHandler) GetDisk(diskIID irs.IID) (irs.DiskInfo, error)
- func (diskHandler *NcpVpcDiskHandler) GetDiskStatus(diskIID irs.IID) (irs.DiskStatus, error)
- func (diskHandler *NcpVpcDiskHandler) GetNcpDiskInfo(diskIID irs.IID) (*vserver.BlockStorageInstance, error)
- func (diskHandler *NcpVpcDiskHandler) GetNcpVMList() ([]*vserver.ServerInstance, error)
- func (diskHandler *NcpVpcDiskHandler) IsBasicBlockStorage(diskIID irs.IID) (bool, error)
- func (diskHandler *NcpVpcDiskHandler) ListDisk() ([]*irs.DiskInfo, error)
- func (DiskHandler *NcpVpcDiskHandler) ListIID() ([]*irs.IID, error)
- func (diskHandler *NcpVpcDiskHandler) MappingDiskInfo(storage vserver.BlockStorageInstance) (irs.DiskInfo, error)
- func (diskHandler *NcpVpcDiskHandler) WaitForDiskAttachment(diskIID irs.IID) (irs.DiskStatus, error)
- func (diskHandler *NcpVpcDiskHandler) WaitForDiskCreation(diskIID irs.IID) (irs.DiskStatus, error)
- func (diskHandler *NcpVpcDiskHandler) WaitForDiskDetachment(diskIID irs.IID) (irs.DiskStatus, error)
- type NcpVpcImageHandler
- func (imageHandler *NcpVpcImageHandler) CheckWindowsImage(imageIID irs.IID) (bool, error)
- func (imageHandler *NcpVpcImageHandler) CreateImage(imageReqInfo irs.ImageReqInfo) (irs.ImageInfo, error)
- func (imageHandler *NcpVpcImageHandler) DeleteImage(imageIID irs.IID) (bool, error)
- func (imageHandler *NcpVpcImageHandler) GetImage(imageIID irs.IID) (irs.ImageInfo, error)
- func (imageHandler *NcpVpcImageHandler) ListImage() ([]*irs.ImageInfo, error)
- type NcpVpcKeyPairHandler
- func (keyPairHandler *NcpVpcKeyPairHandler) CreateKey(keyPairReqInfo irs.KeyPairReqInfo) (irs.KeyPairInfo, error)
- func (keyPairHandler *NcpVpcKeyPairHandler) DeleteKey(keyIID irs.IID) (bool, error)
- func (keyPairHandler *NcpVpcKeyPairHandler) GetKey(keyIID irs.IID) (irs.KeyPairInfo, error)
- func (keyPairHandler *NcpVpcKeyPairHandler) ListIID() ([]*irs.IID, error)
- func (keyPairHandler *NcpVpcKeyPairHandler) ListKey() ([]*irs.KeyPairInfo, error)
- type NcpVpcMyImageHandler
- func (myImageHandler *NcpVpcMyImageHandler) CheckWindowsImage(myImageIID irs.IID) (bool, error)
- func (myImageHandler *NcpVpcMyImageHandler) DeleteMyImage(myImageIID irs.IID) (bool, error)
- func (myImageHandler *NcpVpcMyImageHandler) GetImageStatus(myImageIID irs.IID) (irs.MyImageStatus, error)
- func (myImageHandler *NcpVpcMyImageHandler) GetMyImage(myImageIID irs.IID) (irs.MyImageInfo, error)
- func (myImageHandler *NcpVpcMyImageHandler) GetOriginImageOSPlatform(myImageIID irs.IID) (string, error)
- func (ImageHandler *NcpVpcMyImageHandler) ListIID() ([]*irs.IID, error)
- func (myImageHandler *NcpVpcMyImageHandler) ListMyImage() ([]*irs.MyImageInfo, error)
- func (myImageHandler *NcpVpcMyImageHandler) MappingMyImageInfo(myImage *vserver.MemberServerImageInstance) (*irs.MyImageInfo, error)
- func (myImageHandler *NcpVpcMyImageHandler) SnapshotVM(snapshotReqInfo irs.MyImageInfo) (irs.MyImageInfo, error)
- func (myImageHandler *NcpVpcMyImageHandler) WaitForImageSnapshot(myImageIID irs.IID) (irs.MyImageStatus, error)
- type NcpVpcNLBHandler
- func (nlbHandler *NcpVpcNLBHandler) AddVMs(nlbIID irs.IID, vmIIDs *[]irs.IID) (irs.VMGroupInfo, error)
- func (nlbHandler *NcpVpcNLBHandler) ChangeHealthCheckerInfo(nlbIID irs.IID, healthChecker irs.HealthCheckerInfo) (irs.HealthCheckerInfo, error)
- func (nlbHandler *NcpVpcNLBHandler) ChangeListener(nlbIID irs.IID, listener irs.ListenerInfo) (irs.ListenerInfo, error)
- func (nlbHandler *NcpVpcNLBHandler) ChangeVMGroupInfo(nlbIID irs.IID, vmGroup irs.VMGroupInfo) (irs.VMGroupInfo, error)
- func (nlbHandler *NcpVpcNLBHandler) CleanUpNLB(vpcId *string) (bool, error)
- func (nlbHandler *NcpVpcNLBHandler) CreatNcpSubnetForNlbOnly(vpcIID irs.IID, subnetReqInfo irs.SubnetInfo) (*vpc.Subnet, error)
- func (nlbHandler *NcpVpcNLBHandler) CreateListener(nlbId string, nlbReqInfo irs.NLBInfo, vmGroupNo string) (*vlb.LoadBalancerListener, error)
- func (nlbHandler *NcpVpcNLBHandler) CreateNLB(nlbReqInfo irs.NLBInfo) (createNLB irs.NLBInfo, newErr error)
- func (nlbHandler *NcpVpcNLBHandler) CreateVMGroup(vpcId string, nlbReqInfo irs.NLBInfo) (*vlb.TargetGroup, error)
- func (nlbHandler *NcpVpcNLBHandler) DeleteNLB(nlbIID irs.IID) (bool, error)
- func (nlbHandler *NcpVpcNLBHandler) DeleteVMGroup(vmGroupId string) (bool, error)
- func (nlbHandler *NcpVpcNLBHandler) GetHealthCheckerInfo(nlb vlb.LoadBalancerInstance) (irs.HealthCheckerInfo, error)
- func (nlbHandler *NcpVpcNLBHandler) GetListenerInfo(listenerId string, loadBalancerId string) (*irs.ListenerInfo, error)
- func (nlbHandler *NcpVpcNLBHandler) GetNLB(nlbIID irs.IID) (irs.NLBInfo, error)
- func (nlbHandler *NcpVpcNLBHandler) GetNcpNlbInfo(nlbIID irs.IID) (*vlb.LoadBalancerInstance, error)
- func (nlbHandler *NcpVpcNLBHandler) GetNcpNlbListWithVpcId(vpcId *string) ([]*vlb.LoadBalancerInstance, error)
- func (nlbHandler *NcpVpcNLBHandler) GetNcpNlbStatus(nlbIID irs.IID) (string, error)
- func (nlbHandler *NcpVpcNLBHandler) GetNcpTargetGroupListWithVpcId(vpcId string) ([]*vlb.TargetGroup, error)
- func (nlbHandler *NcpVpcNLBHandler) GetNcpTargetVMList(targetGroupId string) ([]*vlb.Target, error)
- func (nlbHandler *NcpVpcNLBHandler) GetNcpVpcInfoWithName(vpcName string) (*vpc.Vpc, error)
- func (nlbHandler *NcpVpcNLBHandler) GetSubnetIdForNlbOnly(vpcId string) (string, error)
- func (nlbHandler *NcpVpcNLBHandler) GetVMGroupHealthInfo(nlbIID irs.IID) (irs.HealthInfo, error)
- func (nlbHandler *NcpVpcNLBHandler) GetVMGroupInfo(nlb vlb.LoadBalancerInstance) (irs.VMGroupInfo, error)
- func (NLBHandler *NcpVpcNLBHandler) ListIID() ([]*irs.IID, error)
- func (nlbHandler *NcpVpcNLBHandler) ListNLB() ([]*irs.NLBInfo, error)
- func (nlbHandler *NcpVpcNLBHandler) MappingListenerInfo(listener vlb.LoadBalancerListener) (irs.ListenerInfo, error)
- func (nlbHandler *NcpVpcNLBHandler) MappingNlbInfo(nlb vlb.LoadBalancerInstance) (irs.NLBInfo, error)
- func (nlbHandler *NcpVpcNLBHandler) RemoveVMs(nlbIID irs.IID, vmIIDs *[]irs.IID) (bool, error)
- func (nlbHandler *NcpVpcNLBHandler) WaitForDelNlb(nlbIID irs.IID) (bool, error)
- func (nlbHandler *NcpVpcNLBHandler) WaitToGetNlbInfo(nlbIID irs.IID) (bool, error)
- type NcpVpcPriceInfoHandler
- type NcpVpcSecurityHandler
- func (securityHandler *NcpVpcSecurityHandler) AddRules(sgIID irs.IID, securityRules *[]irs.SecurityRuleInfo) (irs.SecurityInfo, error)
- func (securityHandler *NcpVpcSecurityHandler) CreateSecurity(securityReqInfo irs.SecurityReqInfo) (irs.SecurityInfo, error)
- func (securityHandler *NcpVpcSecurityHandler) DeleteSecurity(securityIID irs.IID) (bool, error)
- func (securityHandler *NcpVpcSecurityHandler) ExtractSecurityRuleInfo(ncpVpcSGId string) ([]irs.SecurityRuleInfo, error)
- func (securityHandler *NcpVpcSecurityHandler) GetSecurity(securityIID irs.IID) (irs.SecurityInfo, error)
- func (securityHandler *NcpVpcSecurityHandler) ListIID() ([]*irs.IID, error)
- func (securityHandler *NcpVpcSecurityHandler) ListSecurity() ([]*irs.SecurityInfo, error)
- func (securityHandler *NcpVpcSecurityHandler) MappingSecurityInfo(ncpVpcSG vserver.AccessControlGroup) (irs.SecurityInfo, error)
- func (securityHandler *NcpVpcSecurityHandler) OpenOutboundAllProtocol(sgIID irs.IID) error
- func (securityHandler *NcpVpcSecurityHandler) RemoveRules(sgIID irs.IID, securityRules *[]irs.SecurityRuleInfo) (bool, error)
- type NcpVpcVMHandler
- func (vmHandler *NcpVpcVMHandler) CreateLinuxInitScript(imageIID irs.IID, keyPairId string) (*string, error)
- func (vmHandler *NcpVpcVMHandler) CreateWinInitScript(passWord string) (*string, error)
- func (vmHandler *NcpVpcVMHandler) DeleteInitScript(initScriptNum *string) (*string, error)
- func (vmHandler *NcpVpcVMHandler) DeletePublicIP(vmInfo irs.VMInfo) (irs.VMStatus, error)
- func (vmHandler *NcpVpcVMHandler) GetNcpVMInfo(instanceId string) (*vserver.ServerInstance, error)
- func (vmHandler *NcpVpcVMHandler) GetNetworkInterfaceName(netInterfaceNo *string) (*string, error)
- func (vmHandler *NcpVpcVMHandler) GetRootPassword(vmId *string, privateKey *string) (*string, error)
- func (vmHandler *NcpVpcVMHandler) GetVM(vmIID irs.IID) (irs.VMInfo, error)
- func (vmHandler *NcpVpcVMHandler) GetVMStatus(vmIID irs.IID) (irs.VMStatus, error)
- func (vmHandler *NcpVpcVMHandler) GetVmDataDiskList(vmId *string) ([]irs.IID, error)
- func (vmHandler *NcpVpcVMHandler) GetVmIdByName(vmNameId string) (string, error)
- func (vmHandler *NcpVpcVMHandler) GetVmRootDiskInfo(vmId *string) (*string, *string, error)
- func (vmHandler *NcpVpcVMHandler) ListIID() ([]*irs.IID, error)
- func (vmHandler *NcpVpcVMHandler) ListVM() ([]*irs.VMInfo, error)
- func (vmHandler *NcpVpcVMHandler) ListVMStatus() ([]*irs.VMStatusInfo, error)
- func (vmHandler *NcpVpcVMHandler) MappingServerInfo(NcpInstance *vserver.ServerInstance) (irs.VMInfo, error)
- func (vmHandler *NcpVpcVMHandler) RebootVM(vmIID irs.IID) (irs.VMStatus, error)
- func (vmHandler *NcpVpcVMHandler) ResumeVM(vmIID irs.IID) (irs.VMStatus, error)
- func (vmHandler *NcpVpcVMHandler) StartVM(vmReqInfo irs.VMReqInfo) (irs.VMInfo, error)
- func (vmHandler *NcpVpcVMHandler) SuspendVM(vmIID irs.IID) (irs.VMStatus, error)
- func (vmHandler *NcpVpcVMHandler) TerminateVM(vmIID irs.IID) (irs.VMStatus, error)
- func (vmHandler *NcpVpcVMHandler) WaitToDelPublicIp(vmIID irs.IID) (irs.VMStatus, error)
- func (vmHandler *NcpVpcVMHandler) WaitToGetInfo(vmIID irs.IID) (irs.VMStatus, error)
- type NcpVpcVMSpecHandler
- func (vmSpecHandler *NcpVpcVMSpecHandler) GetOrgVMSpec(specName string) (string, error)
- func (vmSpecHandler *NcpVpcVMSpecHandler) GetVMSpec(specName string) (irs.VMSpecInfo, error)
- func (vmSpecHandler *NcpVpcVMSpecHandler) ListOrgVMSpec() (string, error)
- func (vmSpecHandler *NcpVpcVMSpecHandler) ListVMSpec() ([]*irs.VMSpecInfo, error)
- func (vmSpecHandler *NcpVpcVMSpecHandler) MappingVMSpecInfo(ImageId string, NcpVMSpec *vserver.Product) irs.VMSpecInfo
- type NcpVpcVPCHandler
- func (vpcHandler *NcpVpcVPCHandler) AddSubnet(vpcIID irs.IID, subnetReqInfo irs.SubnetInfo) (irs.VPCInfo, error)
- func (vpcHandler *NcpVpcVPCHandler) CreateSubnet(vpcIID irs.IID, netAclNo *string, subnetUsageType *string, ...) (*vpc.Subnet, error)
- func (vpcHandler *NcpVpcVPCHandler) CreateVPC(vpcReqInfo irs.VPCReqInfo) (irs.VPCInfo, error)
- func (vpcHandler *NcpVpcVPCHandler) DeleteVPC(vpcIID irs.IID) (bool, error)
- func (vpcHandler *NcpVpcVPCHandler) GetDefaultNetworkAclNo(vpcIID irs.IID) (*string, error)
- func (vpcHandler *NcpVpcVPCHandler) GetNcpSubnetInfo(sunbnetId *string) (*vpc.Subnet, error)
- func (vpcHandler *NcpVpcVPCHandler) GetNcpVpcInfo(vpcId *string) (*vpc.Vpc, error)
- func (vpcHandler *NcpVpcVPCHandler) GetSubnet(sunbnetIID irs.IID) (irs.SubnetInfo, error)
- func (vpcHandler *NcpVpcVPCHandler) GetVPC(vpcIID irs.IID) (irs.VPCInfo, error)
- func (vpcHandler *NcpVpcVPCHandler) ListIID() ([]*irs.IID, error)
- func (vpcHandler *NcpVpcVPCHandler) ListSubnet(vpcNo *string) ([]*irs.SubnetInfo, error)
- func (vpcHandler *NcpVpcVPCHandler) ListVPC() ([]*irs.VPCInfo, error)
- func (vpcHandler *NcpVpcVPCHandler) MappingSubnetInfo(subnet *vpc.Subnet) *irs.SubnetInfo
- func (vpcHandler *NcpVpcVPCHandler) MappingVpcInfo(vpc *vpc.Vpc) (*irs.VPCInfo, error)
- func (vpcHandler *NcpVpcVPCHandler) RemoveSubnet(vpcIID irs.IID, subnetIID irs.IID) (bool, error)
- func (vpcHandler *NcpVpcVPCHandler) WaitForCreateSubnet(subnetId *string) (string, error)
- func (vpcHandler *NcpVpcVPCHandler) WaitForCreateVPC(vpcIID irs.IID) (string, error)
- func (vpcHandler *NcpVpcVPCHandler) WaitForDeleteSubnet(vpcNo string, subnetIID irs.IID) (string, error)
- type Price
- type PriceListAPIResponse
- type Product
- type ProductItemKind
- type ProductItemKindDetail
- type ProductListAPIResponse
- type ProductPrice
- type Region
Constants ¶
const ( // NCP VPC Cloud LB type code : 'APPLICATION' | 'NETWORK' | 'NETWORK_PROXY' NcpLbType string = "NETWORK" // NCP VPC Cloud NLB network type code : 'PUBLIC' | 'PRIVATE' (Default: 'PUBLIC') NcpPublicNlBType string = "PUBLIC" NcpInternalNlBType string = "PRIVATE" // NCP LB performance(throughput) type code : 'SMALL' | 'MEDIUM' | 'LARGE' (Default: 'SMALL') // You can only select 'SMALL' if the LB type is 'NETWORK' and the LB network type is 'PRIVATE'. DefaultThroughputType string = "SMALL" // NCP VPC Cloud default value for Listener and Health Monitor DefaultConnectionLimit int32 = 60 // Min : 1, Max : 3600 sec(Dedicated LB : 1 ~ 480000). Default : 60 sec DefaultHealthCheckerInterval int32 = 30 // Min: 5, Max: 300 (seconds). Default: 30 seconds DefaultHealthCheckerThreshold int32 = 2 // Min: 2, Max: 10. Default: 2 LbTypeSubnetDefaultCidr string = ".240/28" LbTypeSubnetDefaultName string = "ncpvpc-subnet-for-nlb" )
const ( BaseURL string = "https://billingapi.apigw.ntruss.com/billing/v1" ProductListURL string = "/product/getProductList" ProductPriceListURL string = "/product/getProductPriceList" )
const ( LnxTypeOs string = "LNX" // LNX (LINUX) WinTypeOS string = "WND" // WND (WINDOWS) )
const (
DefaultDiskSize string = "10"
)
const ( // NCP VPC Snapshop Options : FULL | INCREMENTAL, Default : FULL NcpDefaultSnapshotTypeCode string = "FULL" )
Variables ¶
This section is empty.
Functions ¶
func ConvertDiskStatus ¶
func ConvertDiskStatus(diskStatus string) irs.DiskStatus
func ConvertImageStatus ¶
func ConvertImageStatus(myImageStatus string) irs.MyImageStatus
func ConvertJsonString ¶
Convert Cloud Object to JSON String type
func GetCallLogScheme ¶
func LoggingError ¶
func LoggingError(hiscallInfo call.CLOUDLOGSCHEMA, err error)
func LoggingInfo ¶
func LoggingInfo(hiscallInfo call.CLOUDLOGSCHEMA, start time.Time)
func MappingKeyPairInfo ¶
func MappingKeyPairInfo(NcpKeyPairList *vserver.LoginKey) irs.KeyPairInfo
KeyPair 정보를 추출함
Types ¶
type ErrorResponse ¶ added in v0.8.2
type ErrorResponse struct { Code string `json:"errorCode,omitempty"` Message string `json:"message,omitempty"` Details string `json:"details,omitempty"` }
=========================== Common ============================
type NcpRegionZoneHandler ¶
type NcpRegionZoneHandler struct { RegionInfo idrv.RegionInfo VMClient *vserver.APIClient }
func (NcpRegionZoneHandler) GetRegionZone ¶
func (regionZoneHandler NcpRegionZoneHandler) GetRegionZone(regionCode string) (irs.RegionZoneInfo, error)
func (*NcpRegionZoneHandler) ListOrgRegion ¶
func (regionZoneHandler *NcpRegionZoneHandler) ListOrgRegion() (string, error)
func (*NcpRegionZoneHandler) ListOrgZone ¶
func (regionZoneHandler *NcpRegionZoneHandler) ListOrgZone() (string, error)
func (*NcpRegionZoneHandler) ListRegionZone ¶
func (regionZoneHandler *NcpRegionZoneHandler) ListRegionZone() ([]*irs.RegionZoneInfo, error)
type NcpVpcDiskHandler ¶
type NcpVpcDiskHandler struct { RegionInfo idrv.RegionInfo VMClient *vserver.APIClient }
func (*NcpVpcDiskHandler) AttachDisk ¶
func (*NcpVpcDiskHandler) ChangeDiskSize ¶
func (*NcpVpcDiskHandler) CreateDisk ¶
Caution : Incase of NCP VPC, there must be a created VM to create a new disk volume.
func (*NcpVpcDiskHandler) DeleteDisk ¶
func (diskHandler *NcpVpcDiskHandler) DeleteDisk(diskIID irs.IID) (bool, error)
func (*NcpVpcDiskHandler) DetachDisk ¶
func (*NcpVpcDiskHandler) GetDiskStatus ¶
func (diskHandler *NcpVpcDiskHandler) GetDiskStatus(diskIID irs.IID) (irs.DiskStatus, error)
func (*NcpVpcDiskHandler) GetNcpDiskInfo ¶
func (diskHandler *NcpVpcDiskHandler) GetNcpDiskInfo(diskIID irs.IID) (*vserver.BlockStorageInstance, error)
func (*NcpVpcDiskHandler) GetNcpVMList ¶
func (diskHandler *NcpVpcDiskHandler) GetNcpVMList() ([]*vserver.ServerInstance, error)
func (*NcpVpcDiskHandler) IsBasicBlockStorage ¶
func (diskHandler *NcpVpcDiskHandler) IsBasicBlockStorage(diskIID irs.IID) (bool, error)
func (*NcpVpcDiskHandler) ListDisk ¶
func (diskHandler *NcpVpcDiskHandler) ListDisk() ([]*irs.DiskInfo, error)
func (*NcpVpcDiskHandler) ListIID ¶ added in v0.9.6
func (DiskHandler *NcpVpcDiskHandler) ListIID() ([]*irs.IID, error)
func (*NcpVpcDiskHandler) MappingDiskInfo ¶
func (diskHandler *NcpVpcDiskHandler) MappingDiskInfo(storage vserver.BlockStorageInstance) (irs.DiskInfo, error)
func (*NcpVpcDiskHandler) WaitForDiskAttachment ¶
func (diskHandler *NcpVpcDiskHandler) WaitForDiskAttachment(diskIID irs.IID) (irs.DiskStatus, error)
Waiting for up to 500 seconds during Disk Attachment
func (*NcpVpcDiskHandler) WaitForDiskCreation ¶
func (diskHandler *NcpVpcDiskHandler) WaitForDiskCreation(diskIID irs.IID) (irs.DiskStatus, error)
Waiting for up to 500 seconds during Disk creation until Disk info. can be get
func (*NcpVpcDiskHandler) WaitForDiskDetachment ¶
func (diskHandler *NcpVpcDiskHandler) WaitForDiskDetachment(diskIID irs.IID) (irs.DiskStatus, error)
Waiting for up to 500 seconds during Disk Attachment
type NcpVpcImageHandler ¶
type NcpVpcImageHandler struct { CredentialInfo idrv.CredentialInfo RegionInfo idrv.RegionInfo VMClient *vserver.APIClient }
func (*NcpVpcImageHandler) CheckWindowsImage ¶
func (imageHandler *NcpVpcImageHandler) CheckWindowsImage(imageIID irs.IID) (bool, error)
func (*NcpVpcImageHandler) CreateImage ¶
func (imageHandler *NcpVpcImageHandler) CreateImage(imageReqInfo irs.ImageReqInfo) (irs.ImageInfo, error)
func (*NcpVpcImageHandler) DeleteImage ¶
func (imageHandler *NcpVpcImageHandler) DeleteImage(imageIID irs.IID) (bool, error)
type NcpVpcKeyPairHandler ¶
type NcpVpcKeyPairHandler struct { CredentialInfo idrv.CredentialInfo RegionInfo idrv.RegionInfo VMClient *vserver.APIClient }
func (*NcpVpcKeyPairHandler) CreateKey ¶
func (keyPairHandler *NcpVpcKeyPairHandler) CreateKey(keyPairReqInfo irs.KeyPairReqInfo) (irs.KeyPairInfo, error)
func (*NcpVpcKeyPairHandler) DeleteKey ¶
func (keyPairHandler *NcpVpcKeyPairHandler) DeleteKey(keyIID irs.IID) (bool, error)
func (*NcpVpcKeyPairHandler) GetKey ¶
func (keyPairHandler *NcpVpcKeyPairHandler) GetKey(keyIID irs.IID) (irs.KeyPairInfo, error)
func (*NcpVpcKeyPairHandler) ListIID ¶ added in v0.9.6
func (keyPairHandler *NcpVpcKeyPairHandler) ListIID() ([]*irs.IID, error)
func (*NcpVpcKeyPairHandler) ListKey ¶
func (keyPairHandler *NcpVpcKeyPairHandler) ListKey() ([]*irs.KeyPairInfo, error)
type NcpVpcMyImageHandler ¶
type NcpVpcMyImageHandler struct { RegionInfo idrv.RegionInfo VMClient *vserver.APIClient }
func (*NcpVpcMyImageHandler) CheckWindowsImage ¶
func (myImageHandler *NcpVpcMyImageHandler) CheckWindowsImage(myImageIID irs.IID) (bool, error)
func (*NcpVpcMyImageHandler) DeleteMyImage ¶
func (myImageHandler *NcpVpcMyImageHandler) DeleteMyImage(myImageIID irs.IID) (bool, error)
func (*NcpVpcMyImageHandler) GetImageStatus ¶
func (myImageHandler *NcpVpcMyImageHandler) GetImageStatus(myImageIID irs.IID) (irs.MyImageStatus, error)
func (*NcpVpcMyImageHandler) GetMyImage ¶
func (myImageHandler *NcpVpcMyImageHandler) GetMyImage(myImageIID irs.IID) (irs.MyImageInfo, error)
func (*NcpVpcMyImageHandler) GetOriginImageOSPlatform ¶
func (myImageHandler *NcpVpcMyImageHandler) GetOriginImageOSPlatform(myImageIID irs.IID) (string, error)
func (*NcpVpcMyImageHandler) ListIID ¶ added in v0.9.6
func (ImageHandler *NcpVpcMyImageHandler) ListIID() ([]*irs.IID, error)
func (*NcpVpcMyImageHandler) ListMyImage ¶
func (myImageHandler *NcpVpcMyImageHandler) ListMyImage() ([]*irs.MyImageInfo, error)
To Manage My Images
func (*NcpVpcMyImageHandler) MappingMyImageInfo ¶
func (myImageHandler *NcpVpcMyImageHandler) MappingMyImageInfo(myImage *vserver.MemberServerImageInstance) (*irs.MyImageInfo, error)
func (*NcpVpcMyImageHandler) SnapshotVM ¶
func (myImageHandler *NcpVpcMyImageHandler) SnapshotVM(snapshotReqInfo irs.MyImageInfo) (irs.MyImageInfo, error)
To Take a Snapshot with VM ID (To Create My Image)
func (*NcpVpcMyImageHandler) WaitForImageSnapshot ¶
func (myImageHandler *NcpVpcMyImageHandler) WaitForImageSnapshot(myImageIID irs.IID) (irs.MyImageStatus, error)
Waiting for up to 500 seconds during Taking a Snapshot from a VM
type NcpVpcNLBHandler ¶
type NcpVpcNLBHandler struct { CredentialInfo idrv.CredentialInfo RegionInfo idrv.RegionInfo VMClient *vserver.APIClient VPCClient *vpc.APIClient VLBClient *vlb.APIClient }
func (*NcpVpcNLBHandler) AddVMs ¶
func (nlbHandler *NcpVpcNLBHandler) AddVMs(nlbIID irs.IID, vmIIDs *[]irs.IID) (irs.VMGroupInfo, error)
func (*NcpVpcNLBHandler) ChangeHealthCheckerInfo ¶
func (nlbHandler *NcpVpcNLBHandler) ChangeHealthCheckerInfo(nlbIID irs.IID, healthChecker irs.HealthCheckerInfo) (irs.HealthCheckerInfo, error)
func (*NcpVpcNLBHandler) ChangeListener ¶
func (nlbHandler *NcpVpcNLBHandler) ChangeListener(nlbIID irs.IID, listener irs.ListenerInfo) (irs.ListenerInfo, error)
Note!! : Will be decided later if we would support bellow methoeds or not. ------ Frontend Control
func (*NcpVpcNLBHandler) ChangeVMGroupInfo ¶
func (nlbHandler *NcpVpcNLBHandler) ChangeVMGroupInfo(nlbIID irs.IID, vmGroup irs.VMGroupInfo) (irs.VMGroupInfo, error)
------ Backend Control
func (*NcpVpcNLBHandler) CleanUpNLB ¶
func (nlbHandler *NcpVpcNLBHandler) CleanUpNLB(vpcId *string) (bool, error)
Clean up the VMGroup and LB Type subnet
func (*NcpVpcNLBHandler) CreatNcpSubnetForNlbOnly ¶
func (nlbHandler *NcpVpcNLBHandler) CreatNcpSubnetForNlbOnly(vpcIID irs.IID, subnetReqInfo irs.SubnetInfo) (*vpc.Subnet, error)
Only When any Subnet exists already(because of NetworkACLNo) Creat a Subnet for 'LB Only'('LB Type' Subnet)
func (*NcpVpcNLBHandler) CreateListener ¶
func (nlbHandler *NcpVpcNLBHandler) CreateListener(nlbId string, nlbReqInfo irs.NLBInfo, vmGroupNo string) (*vlb.LoadBalancerListener, error)
func (*NcpVpcNLBHandler) CreateNLB ¶
func (nlbHandler *NcpVpcNLBHandler) CreateNLB(nlbReqInfo irs.NLBInfo) (createNLB irs.NLBInfo, newErr error)
Note : Cloud-Barista supports only this case => [ LB : Listener : VMGroup : Health Checker = 1 : 1 : 1 : 1 ] ------ NLB Management
func (*NcpVpcNLBHandler) CreateVMGroup ¶
func (nlbHandler *NcpVpcNLBHandler) CreateVMGroup(vpcId string, nlbReqInfo irs.NLBInfo) (*vlb.TargetGroup, error)
func (*NcpVpcNLBHandler) DeleteNLB ¶
func (nlbHandler *NcpVpcNLBHandler) DeleteNLB(nlbIID irs.IID) (bool, error)
func (*NcpVpcNLBHandler) DeleteVMGroup ¶
func (nlbHandler *NcpVpcNLBHandler) DeleteVMGroup(vmGroupId string) (bool, error)
func (*NcpVpcNLBHandler) GetHealthCheckerInfo ¶
func (nlbHandler *NcpVpcNLBHandler) GetHealthCheckerInfo(nlb vlb.LoadBalancerInstance) (irs.HealthCheckerInfo, error)
func (*NcpVpcNLBHandler) GetListenerInfo ¶
func (nlbHandler *NcpVpcNLBHandler) GetListenerInfo(listenerId string, loadBalancerId string) (*irs.ListenerInfo, error)
func (*NcpVpcNLBHandler) GetNcpNlbInfo ¶
func (nlbHandler *NcpVpcNLBHandler) GetNcpNlbInfo(nlbIID irs.IID) (*vlb.LoadBalancerInstance, error)
func (*NcpVpcNLBHandler) GetNcpNlbListWithVpcId ¶
func (nlbHandler *NcpVpcNLBHandler) GetNcpNlbListWithVpcId(vpcId *string) ([]*vlb.LoadBalancerInstance, error)
func (*NcpVpcNLBHandler) GetNcpNlbStatus ¶
func (nlbHandler *NcpVpcNLBHandler) GetNcpNlbStatus(nlbIID irs.IID) (string, error)
NCP VPC LoadBalancerInstanceStatusName : Creating, Running, Changing, Terminating, Terminated, Repairing
func (*NcpVpcNLBHandler) GetNcpTargetGroupListWithVpcId ¶
func (nlbHandler *NcpVpcNLBHandler) GetNcpTargetGroupListWithVpcId(vpcId string) ([]*vlb.TargetGroup, error)
func (*NcpVpcNLBHandler) GetNcpTargetVMList ¶
func (nlbHandler *NcpVpcNLBHandler) GetNcpTargetVMList(targetGroupId string) ([]*vlb.Target, error)
Get VM Members of the NLB with the targetGroupId
func (*NcpVpcNLBHandler) GetNcpVpcInfoWithName ¶
func (nlbHandler *NcpVpcNLBHandler) GetNcpVpcInfoWithName(vpcName string) (*vpc.Vpc, error)
func (*NcpVpcNLBHandler) GetSubnetIdForNlbOnly ¶
func (nlbHandler *NcpVpcNLBHandler) GetSubnetIdForNlbOnly(vpcId string) (string, error)
Get SubnetId for 'LB Only' subnet('LB Type' subnet)
func (*NcpVpcNLBHandler) GetVMGroupHealthInfo ¶
func (nlbHandler *NcpVpcNLBHandler) GetVMGroupHealthInfo(nlbIID irs.IID) (irs.HealthInfo, error)
func (*NcpVpcNLBHandler) GetVMGroupInfo ¶
func (nlbHandler *NcpVpcNLBHandler) GetVMGroupInfo(nlb vlb.LoadBalancerInstance) (irs.VMGroupInfo, error)
func (*NcpVpcNLBHandler) ListIID ¶ added in v0.9.6
func (NLBHandler *NcpVpcNLBHandler) ListIID() ([]*irs.IID, error)
func (*NcpVpcNLBHandler) ListNLB ¶
func (nlbHandler *NcpVpcNLBHandler) ListNLB() ([]*irs.NLBInfo, error)
func (*NcpVpcNLBHandler) MappingListenerInfo ¶
func (nlbHandler *NcpVpcNLBHandler) MappingListenerInfo(listener vlb.LoadBalancerListener) (irs.ListenerInfo, error)
func (*NcpVpcNLBHandler) MappingNlbInfo ¶
func (nlbHandler *NcpVpcNLBHandler) MappingNlbInfo(nlb vlb.LoadBalancerInstance) (irs.NLBInfo, error)
NCP LB resource Def. : https://api.ncloud-docs.com/docs/en/common-vapidatatype-loadbalancerinstance
func (*NcpVpcNLBHandler) WaitForDelNlb ¶
func (nlbHandler *NcpVpcNLBHandler) WaitForDelNlb(nlbIID irs.IID) (bool, error)
func (*NcpVpcNLBHandler) WaitToGetNlbInfo ¶
func (nlbHandler *NcpVpcNLBHandler) WaitToGetNlbInfo(nlbIID irs.IID) (bool, error)
type NcpVpcPriceInfoHandler ¶ added in v0.8.2
type NcpVpcPriceInfoHandler struct { CredentialInfo idrv.CredentialInfo RegionInfo idrv.RegionInfo VMClient *vserver.APIClient }
func (*NcpVpcPriceInfoHandler) GetPriceInfo ¶ added in v0.8.2
func (*NcpVpcPriceInfoHandler) ListProductFamily ¶ added in v0.8.2
func (priceInfoHandler *NcpVpcPriceInfoHandler) ListProductFamily(regionName string) ([]string, error)
Get Product 'Name' of all Products instead of Product 'Code' ¶
type NcpVpcSecurityHandler ¶
type NcpVpcSecurityHandler struct { CredentialInfo idrv.CredentialInfo RegionInfo idrv.RegionInfo VMClient *vserver.APIClient }
func (*NcpVpcSecurityHandler) AddRules ¶
func (securityHandler *NcpVpcSecurityHandler) AddRules(sgIID irs.IID, securityRules *[]irs.SecurityRuleInfo) (irs.SecurityInfo, error)
func (*NcpVpcSecurityHandler) CreateSecurity ¶
func (securityHandler *NcpVpcSecurityHandler) CreateSecurity(securityReqInfo irs.SecurityReqInfo) (irs.SecurityInfo, error)
func (*NcpVpcSecurityHandler) DeleteSecurity ¶
func (securityHandler *NcpVpcSecurityHandler) DeleteSecurity(securityIID irs.IID) (bool, error)
func (*NcpVpcSecurityHandler) ExtractSecurityRuleInfo ¶
func (securityHandler *NcpVpcSecurityHandler) ExtractSecurityRuleInfo(ncpVpcSGId string) ([]irs.SecurityRuleInfo, error)
Search NCP VPC SecurityGroup Rule List
func (*NcpVpcSecurityHandler) GetSecurity ¶
func (securityHandler *NcpVpcSecurityHandler) GetSecurity(securityIID irs.IID) (irs.SecurityInfo, error)
func (*NcpVpcSecurityHandler) ListIID ¶ added in v0.9.6
func (securityHandler *NcpVpcSecurityHandler) ListIID() ([]*irs.IID, error)
func (*NcpVpcSecurityHandler) ListSecurity ¶
func (securityHandler *NcpVpcSecurityHandler) ListSecurity() ([]*irs.SecurityInfo, error)
func (*NcpVpcSecurityHandler) MappingSecurityInfo ¶
func (securityHandler *NcpVpcSecurityHandler) MappingSecurityInfo(ncpVpcSG vserver.AccessControlGroup) (irs.SecurityInfo, error)
func (*NcpVpcSecurityHandler) OpenOutboundAllProtocol ¶
func (securityHandler *NcpVpcSecurityHandler) OpenOutboundAllProtocol(sgIID irs.IID) error
func (*NcpVpcSecurityHandler) RemoveRules ¶
func (securityHandler *NcpVpcSecurityHandler) RemoveRules(sgIID irs.IID, securityRules *[]irs.SecurityRuleInfo) (bool, error)
type NcpVpcVMHandler ¶
type NcpVpcVMHandler struct { CredentialInfo idrv.CredentialInfo RegionInfo idrv.RegionInfo VMClient *vserver.APIClient }
func (*NcpVpcVMHandler) CreateLinuxInitScript ¶
func (*NcpVpcVMHandler) CreateWinInitScript ¶
func (vmHandler *NcpVpcVMHandler) CreateWinInitScript(passWord string) (*string, error)
func (*NcpVpcVMHandler) DeleteInitScript ¶
func (vmHandler *NcpVpcVMHandler) DeleteInitScript(initScriptNum *string) (*string, error)
func (*NcpVpcVMHandler) DeletePublicIP ¶
Whenever a VM is terminated, Delete the public IP that the VM has
func (*NcpVpcVMHandler) GetNcpVMInfo ¶
func (vmHandler *NcpVpcVMHandler) GetNcpVMInfo(instanceId string) (*vserver.ServerInstance, error)
func (*NcpVpcVMHandler) GetNetworkInterfaceName ¶
func (vmHandler *NcpVpcVMHandler) GetNetworkInterfaceName(netInterfaceNo *string) (*string, error)
func (*NcpVpcVMHandler) GetRootPassword ¶
func (vmHandler *NcpVpcVMHandler) GetRootPassword(vmId *string, privateKey *string) (*string, error)
func (*NcpVpcVMHandler) GetVMStatus ¶
func (*NcpVpcVMHandler) GetVmDataDiskList ¶
func (vmHandler *NcpVpcVMHandler) GetVmDataDiskList(vmId *string) ([]irs.IID, error)
func (*NcpVpcVMHandler) GetVmIdByName ¶
func (vmHandler *NcpVpcVMHandler) GetVmIdByName(vmNameId string) (string, error)
func (*NcpVpcVMHandler) GetVmRootDiskInfo ¶
func (vmHandler *NcpVpcVMHandler) GetVmRootDiskInfo(vmId *string) (*string, *string, error)
func (*NcpVpcVMHandler) ListIID ¶ added in v0.9.6
func (vmHandler *NcpVpcVMHandler) ListIID() ([]*irs.IID, error)
func (*NcpVpcVMHandler) ListVMStatus ¶
func (vmHandler *NcpVpcVMHandler) ListVMStatus() ([]*irs.VMStatusInfo, error)
func (*NcpVpcVMHandler) MappingServerInfo ¶
func (vmHandler *NcpVpcVMHandler) MappingServerInfo(NcpInstance *vserver.ServerInstance) (irs.VMInfo, error)
func (*NcpVpcVMHandler) TerminateVM ¶
func (*NcpVpcVMHandler) WaitToDelPublicIp ¶
Waiting for up to 600 seconds until Public IP can be Deleted.
func (*NcpVpcVMHandler) WaitToGetInfo ¶
Waiting for up to 500 seconds until VM info. can be Get
type NcpVpcVMSpecHandler ¶
type NcpVpcVMSpecHandler struct { CredentialInfo idrv.CredentialInfo RegionInfo idrv.RegionInfo VMClient *vserver.APIClient }
func (*NcpVpcVMSpecHandler) GetOrgVMSpec ¶
func (vmSpecHandler *NcpVpcVMSpecHandler) GetOrgVMSpec(specName string) (string, error)
func (*NcpVpcVMSpecHandler) GetVMSpec ¶
func (vmSpecHandler *NcpVpcVMSpecHandler) GetVMSpec(specName string) (irs.VMSpecInfo, error)
func (*NcpVpcVMSpecHandler) ListOrgVMSpec ¶
func (vmSpecHandler *NcpVpcVMSpecHandler) ListOrgVMSpec() (string, error)
func (*NcpVpcVMSpecHandler) ListVMSpec ¶
func (vmSpecHandler *NcpVpcVMSpecHandler) ListVMSpec() ([]*irs.VMSpecInfo, error)
func (*NcpVpcVMSpecHandler) MappingVMSpecInfo ¶
func (vmSpecHandler *NcpVpcVMSpecHandler) MappingVMSpecInfo(ImageId string, NcpVMSpec *vserver.Product) irs.VMSpecInfo
type NcpVpcVPCHandler ¶
type NcpVpcVPCHandler struct { CredentialInfo idrv.CredentialInfo RegionInfo idrv.RegionInfo VPCClient *vpc.APIClient }
func (*NcpVpcVPCHandler) AddSubnet ¶
func (vpcHandler *NcpVpcVPCHandler) AddSubnet(vpcIID irs.IID, subnetReqInfo irs.SubnetInfo) (irs.VPCInfo, error)
Only When any Subnet exists already(because of NetworkACLNo)
func (*NcpVpcVPCHandler) CreateSubnet ¶
func (vpcHandler *NcpVpcVPCHandler) CreateSubnet(vpcIID irs.IID, netAclNo *string, subnetUsageType *string, subnetReqInfo irs.SubnetInfo) (*vpc.Subnet, error)
func (*NcpVpcVPCHandler) CreateVPC ¶
func (vpcHandler *NcpVpcVPCHandler) CreateVPC(vpcReqInfo irs.VPCReqInfo) (irs.VPCInfo, error)
func (*NcpVpcVPCHandler) DeleteVPC ¶
func (vpcHandler *NcpVpcVPCHandler) DeleteVPC(vpcIID irs.IID) (bool, error)
func (*NcpVpcVPCHandler) GetDefaultNetworkAclNo ¶
func (vpcHandler *NcpVpcVPCHandler) GetDefaultNetworkAclNo(vpcIID irs.IID) (*string, error)
func (*NcpVpcVPCHandler) GetNcpSubnetInfo ¶
func (vpcHandler *NcpVpcVPCHandler) GetNcpSubnetInfo(sunbnetId *string) (*vpc.Subnet, error)
func (*NcpVpcVPCHandler) GetNcpVpcInfo ¶
func (vpcHandler *NcpVpcVPCHandler) GetNcpVpcInfo(vpcId *string) (*vpc.Vpc, error)
func (*NcpVpcVPCHandler) GetSubnet ¶
func (vpcHandler *NcpVpcVPCHandler) GetSubnet(sunbnetIID irs.IID) (irs.SubnetInfo, error)
func (*NcpVpcVPCHandler) ListIID ¶ added in v0.9.6
func (vpcHandler *NcpVpcVPCHandler) ListIID() ([]*irs.IID, error)
func (*NcpVpcVPCHandler) ListSubnet ¶
func (vpcHandler *NcpVpcVPCHandler) ListSubnet(vpcNo *string) ([]*irs.SubnetInfo, error)
func (*NcpVpcVPCHandler) ListVPC ¶
func (vpcHandler *NcpVpcVPCHandler) ListVPC() ([]*irs.VPCInfo, error)
func (*NcpVpcVPCHandler) MappingSubnetInfo ¶
func (vpcHandler *NcpVpcVPCHandler) MappingSubnetInfo(subnet *vpc.Subnet) *irs.SubnetInfo
func (*NcpVpcVPCHandler) MappingVpcInfo ¶
func (*NcpVpcVPCHandler) RemoveSubnet ¶
func (*NcpVpcVPCHandler) WaitForCreateSubnet ¶
func (vpcHandler *NcpVpcVPCHandler) WaitForCreateSubnet(subnetId *string) (string, error)
Waiting for up to 600 seconds until Subnet Creation processes are Finished.
func (*NcpVpcVPCHandler) WaitForCreateVPC ¶
func (vpcHandler *NcpVpcVPCHandler) WaitForCreateVPC(vpcIID irs.IID) (string, error)
Waiting for up to 600 seconds until VPC and Network ACL Creation processes are Finished.
func (*NcpVpcVPCHandler) WaitForDeleteSubnet ¶
func (vpcHandler *NcpVpcVPCHandler) WaitForDeleteSubnet(vpcNo string, subnetIID irs.IID) (string, error)
Waiting for up to 600 seconds until VPC and Network ACL Creation processes are Finished.
type Price ¶ added in v0.8.2
type Price struct { PriceNo string `json:"priceNo"` // Not int PriceType Code `json:"priceType"` Region Region `json:"region"` ChargingUnitType Code `json:"chargingUnitType"` RatingUnitType Code `json:"ratingUnitType"` ChargingUnitBasicValue string `json:"chargingUnitBasicValue"` // Not int Unit Code `json:"unit"` PriceValue float32 `json:"price"` // Not float64 ConditionType Code `json:"conditionType"` ConditionPrice float32 `json:"conditionPrice"` // Not float64 PriceDescription string `json:"priceDescription"` MeteringUnit Code `json:"meteringUnit"` StartDate string `json:"startDate"` PayCurrency Code `json:"payCurrency"` }
type PriceListAPIResponse ¶ added in v0.8.2
type PriceListAPIResponse struct { GetProductPriceListResponse struct { RequestID string `json:"request_id"` ReturnCode int `json:"return_code"` ReturnMessage string `returnMessage` TotalRows int `json:"totalRows"` ProductPriceList []ProductPrice `json:"productPriceList"` } `json:"getProductPriceListResponse"` Error *ErrorResponse `json:"error,omitempty"` }
type Product ¶ added in v0.8.2
type Product struct { ItemKind ProductItemKind `json:"productItemKind"` ItemKindDetail ProductItemKindDetail `json:"productItemKindDetail"` ProductCode string `json:"productCode"` ProductName string `json:"productName"` Description string `json:"productDescription"` // contains filtered or unexported fields }
type ProductItemKind ¶ added in v0.8.2
=========================== For ProductList ============================
type ProductItemKindDetail ¶ added in v0.8.2
type ProductListAPIResponse ¶ added in v0.8.2
type ProductListAPIResponse struct { GetProductListResponse struct { RequestID string `json:"request_id"` ReturnCode int `json:"return_code"` ReturnMessage string `returnMessage` TotalRows int `json:"totalRows"` ProductList []Product `json:"productList"` } `json:"getProductListResponse"` Error *ErrorResponse `json:"error,omitempty"` }
type ProductPrice ¶ added in v0.8.2
type ProductPrice struct { ProductItemKind Code `json:"productItemKind"` ProductItemKindDetail Code `json:"productItemKindDetail"` ProductCode string `json:"productCode"` ProductName string `json:"productName"` ProductDescription string `json:"productDescription"` ProductType Code `json:"productType"` GpuCount int `json:"gpuCount"` CpuCount int `json:"cpuCount"` MemorySize int64 `json:"memorySize"` BaseBlockStorageSize int64 `json:"baseBlockStorageSize"` DiskType Code `json:"diskType"` DiskDetailType Code `json:"diskDetailType"` GenerationCode string `json:"generationCode"` PriceList []Price `json:"priceList"` // contains filtered or unexported fields }