func NewInstanceType()

in pkg/cloudprovider/fake/instancetype.go [27:66]


func NewInstanceType(options InstanceTypeOptions) *InstanceType {
	if len(options.Offerings) == 0 {
		options.Offerings = []cloudprovider.Offering{
			{CapacityType: "spot", Zone: "test-zone-1"},
			{CapacityType: "spot", Zone: "test-zone-2"},
			{CapacityType: "on-demand", Zone: "test-zone-1"},
			{CapacityType: "on-demand", Zone: "test-zone-2"},
			{CapacityType: "on-demand", Zone: "test-zone-3"}}
	}
	if len(options.Architecture) == 0 {
		options.Architecture = "amd64"
	}
	if len(options.OperatingSystems) == 0 {
		options.OperatingSystems = sets.NewString("linux", "windows", "darwin")
	}
	if options.CPU.IsZero() {
		options.CPU = resource.MustParse("4")
	}
	if options.Memory.IsZero() {
		options.Memory = resource.MustParse("4Gi")
	}
	if options.Pods.IsZero() {
		options.Pods = resource.MustParse("5")
	}
	return &InstanceType{
		options: InstanceTypeOptions{
			Name:             options.Name,
			Offerings:        options.Offerings,
			Architecture:     options.Architecture,
			OperatingSystems: options.OperatingSystems,
			CPU:              options.CPU,
			Memory:           options.Memory,
			Pods:             options.Pods,
			NvidiaGPUs:       options.NvidiaGPUs,
			AMDGPUs:          options.AMDGPUs,
			AWSNeurons:       options.AWSNeurons,
			AWSPodENI:        options.AWSPodENI,
		},
	}
}