Documentation
¶
Index ¶
- Constants
- func InstanceTypes(total int) []*cloudprovider.InstanceType
- func InstanceTypesAssorted() []*cloudprovider.InstanceType
- func NewInstanceType(options InstanceTypeOptions) *cloudprovider.InstanceType
- func NewInstanceTypeWithCustomRequirement(options InstanceTypeOptions, customReq *scheduling.Requirement) *cloudprovider.InstanceType
- func PriceFromResources(resources corev1.ResourceList) float64
- type CloudProvider
- func (c *CloudProvider) Create(ctx context.Context, nodeClaim *v1.NodeClaim) (*v1.NodeClaim, error)
- func (c *CloudProvider) Delete(_ context.Context, nc *v1.NodeClaim) error
- func (c *CloudProvider) Get(_ context.Context, id string) (*v1.NodeClaim, error)
- func (c *CloudProvider) GetInstanceTypes(_ context.Context, np *v1.NodePool) ([]*cloudprovider.InstanceType, error)
- func (c *CloudProvider) GetSupportedNodeClasses() []status.Object
- func (c *CloudProvider) IsDrifted(context.Context, *v1.NodeClaim) (cloudprovider.DriftReason, error)
- func (c *CloudProvider) List(_ context.Context) ([]*v1.NodeClaim, error)
- func (c *CloudProvider) Name() string
- func (c *CloudProvider) RepairPolicies() []cloudprovider.RepairPolicy
- func (c *CloudProvider) Reset()
- type InstanceTypeOptions
Constants ¶
View Source
const ( LabelInstanceSize = "size" ExoticInstanceLabelKey = "special" IntegerInstanceLabelKey = "integer" ResourceGPUVendorA corev1.ResourceName = "fake.com/vendor-a" ResourceGPUVendorB corev1.ResourceName = "fake.com/vendor-b" )
Variables ¶
This section is empty.
Functions ¶
func InstanceTypes ¶
func InstanceTypes(total int) []*cloudprovider.InstanceType
InstanceTypes creates instance types with incrementing resources 2Gi of RAM and 10 pods for every 1vcpu i.e. 1vcpu, 2Gi mem, 10 pods
2vcpu, 4Gi mem, 20 pods 3vcpu, 6Gi mem, 30 pods
func InstanceTypesAssorted ¶
func InstanceTypesAssorted() []*cloudprovider.InstanceType
InstanceTypesAssorted create many unique instance types with varying CPU/memory/architecture/OS/zone/capacity type.
func NewInstanceType ¶
func NewInstanceType(options InstanceTypeOptions) *cloudprovider.InstanceType
func NewInstanceTypeWithCustomRequirement ¶ added in v0.35.0
func NewInstanceTypeWithCustomRequirement(options InstanceTypeOptions, customReq *scheduling.Requirement) *cloudprovider.InstanceType
func PriceFromResources ¶ added in v0.34.0
func PriceFromResources(resources corev1.ResourceList) float64
Types ¶
type CloudProvider ¶
type CloudProvider struct { InstanceTypes []*cloudprovider.InstanceType InstanceTypesForNodePool map[string][]*cloudprovider.InstanceType ErrorsForNodePool map[string]error // CreateCalls contains the arguments for every create call that was made since it was cleared CreateCalls []*v1.NodeClaim AllowedCreateCalls int NextCreateErr error NextGetErr error NextDeleteErr error DeleteCalls []*v1.NodeClaim GetCalls []string CreatedNodeClaims map[string]*v1.NodeClaim Drifted cloudprovider.DriftReason NodeClassGroupVersionKind []schema.GroupVersionKind RepairPolicy []cloudprovider.RepairPolicy // contains filtered or unexported fields }
func NewCloudProvider ¶
func NewCloudProvider() *CloudProvider
func (*CloudProvider) GetInstanceTypes ¶
func (c *CloudProvider) GetInstanceTypes(_ context.Context, np *v1.NodePool) ([]*cloudprovider.InstanceType, error)
func (*CloudProvider) GetSupportedNodeClasses ¶ added in v0.33.6
func (c *CloudProvider) GetSupportedNodeClasses() []status.Object
func (*CloudProvider) IsDrifted ¶
func (c *CloudProvider) IsDrifted(context.Context, *v1.NodeClaim) (cloudprovider.DriftReason, error)
func (*CloudProvider) Name ¶
func (c *CloudProvider) Name() string
Name returns the CloudProvider implementation name.
func (*CloudProvider) RepairPolicies ¶ added in v1.1.0
func (c *CloudProvider) RepairPolicies() []cloudprovider.RepairPolicy
func (*CloudProvider) Reset ¶
func (c *CloudProvider) Reset()
Reset is for BeforeEach calls in testing to reset the tracking of CreateCalls
type InstanceTypeOptions ¶
type InstanceTypeOptions struct { Name string Offerings cloudprovider.Offerings Architecture string OperatingSystems sets.Set[string] Resources corev1.ResourceList }
Click to show internal directories.
Click to hide internal directories.