resources

package
v0.8.18 Latest Latest
Warning

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

Go to latest
Published: May 24, 2024 License: Apache-2.0 Imports: 33 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// Resource Names
	DefaultResourceGroup              = "Default"
	AutoscalerAddon                   = "cluster-autoscaler"
	ConfigMapNamespace                = "kube-system"
	AutoscalerConfigMap               = "iks-ca-configmap"
	AutoscalerConfigMapOptionProperty = "workerPoolsConfig.json"

	// Error Codes
	RetrieveUnableErr      = "Not visible in IBMCloud-VPC"
	GetKubeConfigErr       = "Get Kube Config Error"
	GetAutoScalerConfigErr = "Get Autoscaler Config Map Error"

	// Retry Counts
	EnableAutoScalerRetry  = 120 // minutes
	DisableAutoScalerRetry = 120 // minutes
	InitSecurityGroupRetry = 120 // minutes
	RestoreDefaultSGRetry  = 120 // minutes
	UpgradeMasterRetry     = 120 // minutes

	// Status tags
	AutoScalerStatus    = "CB-SPIDER-PMKS-AUTOSCALER-STATUS:"
	SecurityGroupStatus = "CB-SPIDER-PMKS-SECURITYGROUP-STATUS:"
	MasterUpgradeStatus = "CB-SPIDER-PMKS-MASTERUPGRADE-STATUS:"

	// State Codes
	WAITING           = "WAITING"
	DEPLOYING         = "DEPLOYING"
	UPGRADE_DEPLOYING = "UPGRADE-DEPLOYING"
	ACTIVE            = "ACTIVE"
	UNINSTALLING      = "UNINSTALLING"
	FAILED            = "FAILED"
	INITIALIZING      = "INITIALIZING"
	INITIALIZED       = "INITIALIZED"
	UPGRADING         = "UPGRADING"
)
View Source
const (
	CBDefaultVmUserName string = "cb-user"
	CBCloudInitFilePath string = "/cloud-driver-libs/.cloud-init-ibm/cloud-init"
)
View Source
const (
	NLBPublicType      NLBType     = "PUBLIC"
	NLBInternalType    NLBType     = "INTERNAL"
	NLBGlobalType      NLBScope    = "GLOBAL"
	NLBRegionType      NLBScope    = "REGION"
	NLBVMStatusFault   NLBVMStatus = "faulted"
	NLBVMStatusOK      NLBVMStatus = "ok"
	NLBVMStatusUnknown NLBVMStatus = "unknown"
)
View Source
const DEV = "-dev-"
View Source
const IbmGlobalCatalogApiEndpoint = "https://globalcatalog.cloud.ibm.com/api/v1"

Variables

This section is empty.

Functions

func ConvertIbmRuleToCBRuleInfo added in v0.5.5

func ConvertIbmRuleToCBRuleInfo(rule vpcv1.SecurityGroupRuleIntf) (*irs.SecurityRuleInfo, error)

func GetCallLogScheme

func GetCallLogScheme(region idrv.RegionInfo, resourceType call.RES_TYPE, resourceName string, apiName string) call.CLOUDLOGSCHEMA

func GetRawVPC added in v0.7.3

func GetRawVPC(vpcIID irs.IID, vpcService *vpcv1.VpcV1, ctx context.Context) (vpcv1.VPC, error)

func InitLog

func InitLog()

func LoggingError

func LoggingError(hiscallInfo call.CLOUDLOGSCHEMA, err error)

func LoggingInfo

func LoggingInfo(hiscallInfo call.CLOUDLOGSCHEMA, start time.Time)

func ModifyVPCDefaultRule added in v0.5.5

func ModifyVPCDefaultRule(rules []vpcv1.SecurityGroupRuleIntf, sgIId irs.IID, vpcService *vpcv1.VpcV1, ctx context.Context) error

Types

type Deployment added in v0.8.1

type Deployment struct {
	Location string `json:"location"`
}

type IBMIPBindReqInfo

type IBMIPBindReqInfo struct {
	NetworkInterfaceID string
	// contains filtered or unexported fields
}

type IbmClusterHandler added in v0.7.3

type IbmClusterHandler struct {
	CredentialInfo idrv.CredentialInfo
	Region         idrv.RegionInfo
	Ctx            context.Context
	VpcService     *vpcv1.VpcV1
	ClusterService *kubernetesserviceapiv1.KubernetesServiceApiV1
	TaggingService *globaltaggingv1.GlobalTaggingV1
}

func (*IbmClusterHandler) AddNodeGroup added in v0.7.3

func (ic *IbmClusterHandler) AddNodeGroup(clusterIID irs.IID, nodeGroupReqInfo irs.NodeGroupInfo) (irs.NodeGroupInfo, error)

func (*IbmClusterHandler) ChangeNodeGroupScaling added in v0.7.3

func (ic *IbmClusterHandler) ChangeNodeGroupScaling(clusterIID irs.IID, nodeGroupIID irs.IID, DesiredNodeSize int, MinNodeSize int, MaxNodeSize int) (irs.NodeGroupInfo, error)

func (*IbmClusterHandler) CreateCluster added in v0.7.3

func (ic *IbmClusterHandler) CreateCluster(clusterReqInfo irs.ClusterInfo) (irs.ClusterInfo, error)

func (*IbmClusterHandler) DeleteCluster added in v0.7.3

func (ic *IbmClusterHandler) DeleteCluster(clusterIID irs.IID) (bool, error)

func (*IbmClusterHandler) GetCluster added in v0.7.3

func (ic *IbmClusterHandler) GetCluster(clusterIID irs.IID) (irs.ClusterInfo, error)

func (*IbmClusterHandler) ListCluster added in v0.7.3

func (ic *IbmClusterHandler) ListCluster() ([]*irs.ClusterInfo, error)

func (*IbmClusterHandler) RemoveNodeGroup added in v0.7.3

func (ic *IbmClusterHandler) RemoveNodeGroup(clusterIID irs.IID, nodeGroupIID irs.IID) (bool, error)

func (*IbmClusterHandler) SetNodeGroupAutoScaling added in v0.7.3

func (ic *IbmClusterHandler) SetNodeGroupAutoScaling(clusterIID irs.IID, nodeGroupIID irs.IID, on bool) (bool, error)

func (*IbmClusterHandler) UpgradeCluster added in v0.7.3

func (ic *IbmClusterHandler) UpgradeCluster(clusterIID irs.IID, newVersion string) (irs.ClusterInfo, error)

type IbmDiskHandler added in v0.6.9

type IbmDiskHandler struct {
	CredentialInfo idrv.CredentialInfo
	Region         idrv.RegionInfo
	VpcService     *vpcv1.VpcV1
	Ctx            context.Context
}

func (*IbmDiskHandler) AttachDisk added in v0.6.9

func (diskHandler *IbmDiskHandler) AttachDisk(diskIID irs.IID, ownerVM irs.IID) (irs.DiskInfo, error)

func (*IbmDiskHandler) ChangeDiskSize added in v0.6.9

func (diskHandler *IbmDiskHandler) ChangeDiskSize(diskIID irs.IID, size string) (bool, error)

func (*IbmDiskHandler) CreateDisk added in v0.6.9

func (diskHandler *IbmDiskHandler) CreateDisk(diskReqInfo irs.DiskInfo) (irs.DiskInfo, error)

func (*IbmDiskHandler) DeleteDisk added in v0.6.9

func (diskHandler *IbmDiskHandler) DeleteDisk(diskIID irs.IID) (bool, error)

func (*IbmDiskHandler) DetachDisk added in v0.6.9

func (diskHandler *IbmDiskHandler) DetachDisk(diskIID irs.IID, ownerVM irs.IID) (bool, error)

func (*IbmDiskHandler) GetDisk added in v0.6.9

func (diskHandler *IbmDiskHandler) GetDisk(diskIID irs.IID) (irs.DiskInfo, error)

func (*IbmDiskHandler) ListDisk added in v0.6.9

func (diskHandler *IbmDiskHandler) ListDisk() ([]*irs.DiskInfo, error)

func (*IbmDiskHandler) ToIRSDisk added in v0.6.9

func (diskHandler *IbmDiskHandler) ToIRSDisk(disk *vpcv1.Volume) *irs.DiskInfo

type IbmImageHandler

type IbmImageHandler struct {
	CredentialInfo idrv.CredentialInfo
	Region         idrv.RegionInfo
	VpcService     *vpcv1.VpcV1
	Ctx            context.Context
}

func (*IbmImageHandler) CheckWindowsImage added in v0.6.15

func (imageHandler *IbmImageHandler) CheckWindowsImage(imageIID irs.IID) (bool, error)

func (*IbmImageHandler) CreateImage

func (imageHandler *IbmImageHandler) CreateImage(imageReqInfo irs.ImageReqInfo) (irs.ImageInfo, error)

func (*IbmImageHandler) DeleteImage

func (imageHandler *IbmImageHandler) DeleteImage(imageIID irs.IID) (bool, error)

func (*IbmImageHandler) GetImage

func (imageHandler *IbmImageHandler) GetImage(imageIID irs.IID) (irs.ImageInfo, error)

func (*IbmImageHandler) ListImage

func (imageHandler *IbmImageHandler) ListImage() ([]*irs.ImageInfo, error)

type IbmKeyPairHandler

type IbmKeyPairHandler struct {
	CredentialInfo idrv.CredentialInfo
	Region         idrv.RegionInfo
	VpcService     *vpcv1.VpcV1
	Ctx            context.Context
}

func (*IbmKeyPairHandler) CreateKey

func (keyPairHandler *IbmKeyPairHandler) CreateKey(keyPairReqInfo irs.KeyPairReqInfo) (irs.KeyPairInfo, error)

func (*IbmKeyPairHandler) DeleteKey

func (keyPairHandler *IbmKeyPairHandler) DeleteKey(keyIID irs.IID) (bool, error)

func (*IbmKeyPairHandler) GetKey

func (keyPairHandler *IbmKeyPairHandler) GetKey(keyIID irs.IID) (irs.KeyPairInfo, error)

func (*IbmKeyPairHandler) ListKey

func (keyPairHandler *IbmKeyPairHandler) ListKey() ([]*irs.KeyPairInfo, error)

type IbmMyImageHandler added in v0.6.9

type IbmMyImageHandler struct {
	CredentialInfo idrv.CredentialInfo
	Region         idrv.RegionInfo
	VpcService     *vpcv1.VpcV1
	Ctx            context.Context
}

func (*IbmMyImageHandler) CheckWindowsImage added in v0.6.15

func (myImageHandler *IbmMyImageHandler) CheckWindowsImage(myImageIID irs.IID) (bool, error)

func (*IbmMyImageHandler) DeleteMyImage added in v0.6.9

func (myImageHandler *IbmMyImageHandler) DeleteMyImage(myImageIID irs.IID) (bool, error)

func (*IbmMyImageHandler) GetMyImage added in v0.6.9

func (myImageHandler *IbmMyImageHandler) GetMyImage(myImageIID irs.IID) (irs.MyImageInfo, error)

func (*IbmMyImageHandler) ListMyImage added in v0.6.9

func (myImageHandler *IbmMyImageHandler) ListMyImage() ([]*irs.MyImageInfo, error)

func (*IbmMyImageHandler) SnapshotVM added in v0.6.9

func (myImageHandler *IbmMyImageHandler) SnapshotVM(snapshotReqInfo irs.MyImageInfo) (irs.MyImageInfo, error)

func (*IbmMyImageHandler) ToISRMyImage added in v0.6.9

func (myImageHandler *IbmMyImageHandler) ToISRMyImage(snapshotList []vpcv1.Snapshot) (irs.MyImageInfo, error)

type IbmNLBHandler added in v0.5.9

type IbmNLBHandler struct {
	CredentialInfo idrv.CredentialInfo
	Region         idrv.RegionInfo
	VpcService     *vpcv1.VpcV1
	Ctx            context.Context
}

func (*IbmNLBHandler) AddVMs added in v0.5.9

func (nlbHandler *IbmNLBHandler) AddVMs(nlbIID irs.IID, vmIIDs *[]irs.IID) (irs.VMGroupInfo, error)

func (*IbmNLBHandler) ChangeHealthCheckerInfo added in v0.5.9

func (nlbHandler *IbmNLBHandler) ChangeHealthCheckerInfo(nlbIID irs.IID, healthChecker irs.HealthCheckerInfo) (irs.HealthCheckerInfo, error)

func (*IbmNLBHandler) ChangeListener added in v0.5.9

func (nlbHandler *IbmNLBHandler) ChangeListener(nlbIID irs.IID, listener irs.ListenerInfo) (irs.ListenerInfo, error)

------ Frontend Control

func (*IbmNLBHandler) ChangeVMGroupInfo added in v0.5.9

func (nlbHandler *IbmNLBHandler) ChangeVMGroupInfo(nlbIID irs.IID, vmGroup irs.VMGroupInfo) (irs.VMGroupInfo, error)

------ Backend Control

func (*IbmNLBHandler) CreateNLB added in v0.5.9

func (nlbHandler *IbmNLBHandler) CreateNLB(nlbReqInfo irs.NLBInfo) (irs.NLBInfo, error)

------ NLB Management

func (*IbmNLBHandler) DeleteNLB added in v0.5.9

func (nlbHandler *IbmNLBHandler) DeleteNLB(nlbIID irs.IID) (bool, error)

func (*IbmNLBHandler) GetNLB added in v0.5.9

func (nlbHandler *IbmNLBHandler) GetNLB(nlbIID irs.IID) (irs.NLBInfo, error)

func (*IbmNLBHandler) GetVMGroupHealthInfo added in v0.5.9

func (nlbHandler *IbmNLBHandler) GetVMGroupHealthInfo(nlbIID irs.IID) (irs.HealthInfo, error)

func (*IbmNLBHandler) ListNLB added in v0.5.9

func (nlbHandler *IbmNLBHandler) ListNLB() ([]*irs.NLBInfo, error)

func (*IbmNLBHandler) RemoveVMs added in v0.5.9

func (nlbHandler *IbmNLBHandler) RemoveVMs(nlbIID irs.IID, vmIIDs *[]irs.IID) (bool, error)

type IbmPriceInfoHandler added in v0.8.1

type IbmPriceInfoHandler struct {
	Region idrv.RegionInfo
	Ctx    context.Context
}

func (*IbmPriceInfoHandler) GetPriceInfo added in v0.8.1

func (priceInfoHandler *IbmPriceInfoHandler) GetPriceInfo(productFamily string, regionName string, filterList []irs.KeyValue) (string, error)

func (*IbmPriceInfoHandler) ListProductFamily added in v0.8.1

func (priceInfoHandler *IbmPriceInfoHandler) ListProductFamily(regionName string) ([]string, error)

type IbmRegionZoneHandler added in v0.7.6

type IbmRegionZoneHandler struct {
	Region     idrv.RegionInfo
	VpcService *vpcv1.VpcV1
	Ctx        context.Context
}

func (*IbmRegionZoneHandler) GetRegionZone added in v0.7.6

func (regionZoneHandler *IbmRegionZoneHandler) GetRegionZone(Name string) (irs.RegionZoneInfo, error)

func (*IbmRegionZoneHandler) ListOrgRegion added in v0.7.6

func (regionZoneHandler *IbmRegionZoneHandler) ListOrgRegion() (string, error)

func (*IbmRegionZoneHandler) ListOrgZone added in v0.7.6

func (regionZoneHandler *IbmRegionZoneHandler) ListOrgZone() (string, error)

func (*IbmRegionZoneHandler) ListRegionZone added in v0.7.6

func (regionZoneHandler *IbmRegionZoneHandler) ListRegionZone() ([]*irs.RegionZoneInfo, error)

type IbmSecurityHandler

type IbmSecurityHandler struct {
	CredentialInfo idrv.CredentialInfo
	Region         idrv.RegionInfo
	VpcService     *vpcv1.VpcV1
	Ctx            context.Context
}

func (*IbmSecurityHandler) AddRules added in v0.5.4

func (securityHandler *IbmSecurityHandler) AddRules(sgIID irs.IID, securityRules *[]irs.SecurityRuleInfo) (irs.SecurityInfo, error)

func (*IbmSecurityHandler) CreateSecurity

func (securityHandler *IbmSecurityHandler) CreateSecurity(securityReqInfo irs.SecurityReqInfo) (irs.SecurityInfo, error)

func (*IbmSecurityHandler) DeleteSecurity

func (securityHandler *IbmSecurityHandler) DeleteSecurity(securityIID irs.IID) (bool, error)

func (*IbmSecurityHandler) GetSecurity

func (securityHandler *IbmSecurityHandler) GetSecurity(securityIID irs.IID) (irs.SecurityInfo, error)

func (*IbmSecurityHandler) ListSecurity

func (securityHandler *IbmSecurityHandler) ListSecurity() ([]*irs.SecurityInfo, error)

func (*IbmSecurityHandler) RemoveRules added in v0.5.4

func (securityHandler *IbmSecurityHandler) RemoveRules(sgIID irs.IID, securityRules *[]irs.SecurityRuleInfo) (bool, error)

type IbmVMHandler

type IbmVMHandler struct {
	CredentialInfo idrv.CredentialInfo
	Region         idrv.RegionInfo
	VpcService     *vpcv1.VpcV1
	VpcService0230 *vpcv0230.VpcV1
	Ctx            context.Context
}

func (*IbmVMHandler) GetVM

func (vmHandler *IbmVMHandler) GetVM(vmIID irs.IID) (irs.VMInfo, error)

func (*IbmVMHandler) GetVMStatus

func (vmHandler *IbmVMHandler) GetVMStatus(vmIID irs.IID) (irs.VMStatus, error)

func (*IbmVMHandler) ListVM

func (vmHandler *IbmVMHandler) ListVM() ([]*irs.VMInfo, error)

func (*IbmVMHandler) ListVMStatus

func (vmHandler *IbmVMHandler) ListVMStatus() ([]*irs.VMStatusInfo, error)

func (*IbmVMHandler) RebootVM

func (vmHandler *IbmVMHandler) RebootVM(vmIID irs.IID) (irs.VMStatus, error)

func (*IbmVMHandler) ResumeVM

func (vmHandler *IbmVMHandler) ResumeVM(vmIID irs.IID) (irs.VMStatus, error)

func (*IbmVMHandler) StartVM

func (vmHandler *IbmVMHandler) StartVM(vmReqInfo irs.VMReqInfo) (irs.VMInfo, error)

func (*IbmVMHandler) SuspendVM

func (vmHandler *IbmVMHandler) SuspendVM(vmIID irs.IID) (irs.VMStatus, error)

func (*IbmVMHandler) TerminateVM

func (vmHandler *IbmVMHandler) TerminateVM(vmIID irs.IID) (irs.VMStatus, error)

type IbmVPCHandler

type IbmVPCHandler struct {
	CredentialInfo idrv.CredentialInfo
	Region         idrv.RegionInfo
	VpcService     *vpcv1.VpcV1
	Ctx            context.Context
}

func (*IbmVPCHandler) AddSubnet

func (vpcHandler *IbmVPCHandler) AddSubnet(vpcIID irs.IID, subnetInfo irs.SubnetInfo) (irs.VPCInfo, error)

func (*IbmVPCHandler) CreateVPC

func (vpcHandler *IbmVPCHandler) CreateVPC(vpcReqInfo irs.VPCReqInfo) (irs.VPCInfo, error)

func (*IbmVPCHandler) DeleteVPC

func (vpcHandler *IbmVPCHandler) DeleteVPC(vpcIID irs.IID) (bool, error)

func (*IbmVPCHandler) GetVPC

func (vpcHandler *IbmVPCHandler) GetVPC(vpcIID irs.IID) (irs.VPCInfo, error)

func (*IbmVPCHandler) ListVPC

func (vpcHandler *IbmVPCHandler) ListVPC() ([]*irs.VPCInfo, error)

func (*IbmVPCHandler) RemoveSubnet

func (vpcHandler *IbmVPCHandler) RemoveSubnet(vpcIID irs.IID, subnetIID irs.IID) (bool, error)

type IbmVmSpecHandler

type IbmVmSpecHandler struct {
	CredentialInfo idrv.CredentialInfo
	Region         idrv.RegionInfo
	VpcService     *vpcv1.VpcV1
	Ctx            context.Context
}

func (*IbmVmSpecHandler) GetOrgVMSpec

func (vmSpecHandler *IbmVmSpecHandler) GetOrgVMSpec(Name string) (string, error)

func (*IbmVmSpecHandler) GetVMSpec

func (vmSpecHandler *IbmVmSpecHandler) GetVMSpec(Name string) (irs.VMSpecInfo, error)

func (*IbmVmSpecHandler) ListOrgVMSpec

func (vmSpecHandler *IbmVmSpecHandler) ListOrgVMSpec() (string, error)

func (*IbmVmSpecHandler) ListVMSpec

func (vmSpecHandler *IbmVmSpecHandler) ListVMSpec() ([]*irs.VMSpecInfo, error)

type Metadata added in v0.8.1

type Metadata struct {
	Deployment Deployment `json:"deployment"`
	Pricing    Pricing    `json:"pricing"`
}

type NLBScope added in v0.5.9

type NLBScope string

type NLBType added in v0.5.9

type NLBType string

type NLBVMStatus added in v0.5.9

type NLBVMStatus string

type OverviewUI added in v0.8.1

type OverviewUI struct {
	EN struct {
		Description     string `json:"description"`
		DisplayName     string `json:"display_name"`
		LongDescription string `json:"long_description"`
	} `json:"en"`
}

type PriceInfo added in v0.8.1

type PriceInfo struct {
	DeploymentID       string `json:"deployment_id"`
	DeploymentLocation string `json:"deployment_location"`
	DeploymentRegion   string `json:"deployment_region"`
	Origin             string `json:"origin"`
	Type               string `json:"type"`
	I18N               struct {
	} `json:"i18n"`
	StartingPrice struct {
	} `json:"starting_price"`
	EffectiveFrom  time.Time     `json:"effective_from"`
	EffectiveUntil time.Time     `json:"effective_until"`
	Metrics        []PriceMetric `json:"metrics"`
}

type PriceMetric added in v0.8.1

type PriceMetric struct {
	PartRef               string `json:"part_ref"`
	MetricID              string `json:"metric_id"`
	TierModel             string `json:"tier_model"`
	ResourceDisplayName   string `json:"resource_display_name"`
	ChargeUnitDisplayName string `json:"charge_unit_display_name"`
	ChargeUnitName        string `json:"charge_unit_name"`
	ChargeUnit            string `json:"charge_unit"`
	ChargeUnitQuantity    int    `json:"charge_unit_quantity"`
	Amounts               []struct {
		Country  string `json:"country"`
		Currency string `json:"currency"`
		Prices   []struct {
			QuantityTier int     `json:"quantity_tier"`
			Price        float64 `json:"price"`
		} `json:"prices"`
	} `json:"amounts"`
	UsageCapQty    int       `json:"usage_cap_qty"`
	DisplayCap     int       `json:"display_cap"`
	EffectiveFrom  time.Time `json:"effective_from"`
	EffectiveUntil time.Time `json:"effective_until"`
}

type Pricing added in v0.8.1

type Pricing struct {
	URL string `json:"url"`
}

type Resource added in v0.8.1

type Resource struct {
	Id          string     `json:"id"`
	Name        string     `json:"name"`
	ChildrenURL string     `json:"children_url"`
	GeoTags     []string   `json:"geo_tags"`
	Metadata    Metadata   `json:"metadata"`
	OverviewUI  OverviewUI `json:"overview_ui"`
}

type ResourceInfo added in v0.8.1

type ResourceInfo struct {
	Offset        int        `json:"offset"`
	Limit         int        `json:"limit"`
	Count         int        `json:"count"`
	ResourceCount int        `json:"resource_count"`
	First         string     `json:"first"`
	Next          string     `json:"next"`
	Resources     []Resource `json:"resources"`
}

Jump to

Keyboard shortcuts

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