mirror of
				https://github.com/optim-enterprises-bv/kubernetes.git
				synced 2025-11-04 04:08:16 +00:00 
			
		
		
		
	experimental. -> extensions.
This commit is contained in:
		@@ -29,19 +29,19 @@ import (
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func TestValidateHorizontalPodAutoscaler(t *testing.T) {
 | 
			
		||||
	successCases := []experimental.HorizontalPodAutoscaler{
 | 
			
		||||
	successCases := []extensions.HorizontalPodAutoscaler{
 | 
			
		||||
		{
 | 
			
		||||
			ObjectMeta: api.ObjectMeta{
 | 
			
		||||
				Name:      "myautoscaler",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.HorizontalPodAutoscalerSpec{
 | 
			
		||||
				ScaleRef: &experimental.SubresourceReference{
 | 
			
		||||
			Spec: extensions.HorizontalPodAutoscalerSpec{
 | 
			
		||||
				ScaleRef: &extensions.SubresourceReference{
 | 
			
		||||
					Subresource: "scale",
 | 
			
		||||
				},
 | 
			
		||||
				MinReplicas: 1,
 | 
			
		||||
				MaxReplicas: 5,
 | 
			
		||||
				Target:      experimental.ResourceConsumption{Resource: api.ResourceCPU, Quantity: resource.MustParse("0.8")},
 | 
			
		||||
				Target:      extensions.ResourceConsumption{Resource: api.ResourceCPU, Quantity: resource.MustParse("0.8")},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
@@ -51,19 +51,19 @@ func TestValidateHorizontalPodAutoscaler(t *testing.T) {
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	errorCases := map[string]experimental.HorizontalPodAutoscaler{
 | 
			
		||||
	errorCases := map[string]extensions.HorizontalPodAutoscaler{
 | 
			
		||||
		"must be non-negative": {
 | 
			
		||||
			ObjectMeta: api.ObjectMeta{
 | 
			
		||||
				Name:      "myautoscaler",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.HorizontalPodAutoscalerSpec{
 | 
			
		||||
				ScaleRef: &experimental.SubresourceReference{
 | 
			
		||||
			Spec: extensions.HorizontalPodAutoscalerSpec{
 | 
			
		||||
				ScaleRef: &extensions.SubresourceReference{
 | 
			
		||||
					Subresource: "scale",
 | 
			
		||||
				},
 | 
			
		||||
				MinReplicas: -1,
 | 
			
		||||
				MaxReplicas: 5,
 | 
			
		||||
				Target:      experimental.ResourceConsumption{Resource: api.ResourceCPU, Quantity: resource.MustParse("0.8")},
 | 
			
		||||
				Target:      extensions.ResourceConsumption{Resource: api.ResourceCPU, Quantity: resource.MustParse("0.8")},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		"must be bigger or equal to minReplicas": {
 | 
			
		||||
@@ -71,13 +71,13 @@ func TestValidateHorizontalPodAutoscaler(t *testing.T) {
 | 
			
		||||
				Name:      "myautoscaler",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.HorizontalPodAutoscalerSpec{
 | 
			
		||||
				ScaleRef: &experimental.SubresourceReference{
 | 
			
		||||
			Spec: extensions.HorizontalPodAutoscalerSpec{
 | 
			
		||||
				ScaleRef: &extensions.SubresourceReference{
 | 
			
		||||
					Subresource: "scale",
 | 
			
		||||
				},
 | 
			
		||||
				MinReplicas: 7,
 | 
			
		||||
				MaxReplicas: 5,
 | 
			
		||||
				Target:      experimental.ResourceConsumption{Resource: api.ResourceCPU, Quantity: resource.MustParse("0.8")},
 | 
			
		||||
				Target:      extensions.ResourceConsumption{Resource: api.ResourceCPU, Quantity: resource.MustParse("0.8")},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		"invalid value": {
 | 
			
		||||
@@ -85,13 +85,13 @@ func TestValidateHorizontalPodAutoscaler(t *testing.T) {
 | 
			
		||||
				Name:      "myautoscaler",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.HorizontalPodAutoscalerSpec{
 | 
			
		||||
				ScaleRef: &experimental.SubresourceReference{
 | 
			
		||||
			Spec: extensions.HorizontalPodAutoscalerSpec{
 | 
			
		||||
				ScaleRef: &extensions.SubresourceReference{
 | 
			
		||||
					Subresource: "scale",
 | 
			
		||||
				},
 | 
			
		||||
				MinReplicas: 1,
 | 
			
		||||
				MaxReplicas: 5,
 | 
			
		||||
				Target:      experimental.ResourceConsumption{Resource: api.ResourceCPU, Quantity: resource.MustParse("-0.8")},
 | 
			
		||||
				Target:      extensions.ResourceConsumption{Resource: api.ResourceCPU, Quantity: resource.MustParse("-0.8")},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		"resource not supported": {
 | 
			
		||||
@@ -99,13 +99,13 @@ func TestValidateHorizontalPodAutoscaler(t *testing.T) {
 | 
			
		||||
				Name:      "myautoscaler",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.HorizontalPodAutoscalerSpec{
 | 
			
		||||
				ScaleRef: &experimental.SubresourceReference{
 | 
			
		||||
			Spec: extensions.HorizontalPodAutoscalerSpec{
 | 
			
		||||
				ScaleRef: &extensions.SubresourceReference{
 | 
			
		||||
					Subresource: "scale",
 | 
			
		||||
				},
 | 
			
		||||
				MinReplicas: 1,
 | 
			
		||||
				MaxReplicas: 5,
 | 
			
		||||
				Target:      experimental.ResourceConsumption{Resource: api.ResourceName("NotSupportedResource"), Quantity: resource.MustParse("0.8")},
 | 
			
		||||
				Target:      extensions.ResourceConsumption{Resource: api.ResourceName("NotSupportedResource"), Quantity: resource.MustParse("0.8")},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		"required value": {
 | 
			
		||||
@@ -113,10 +113,10 @@ func TestValidateHorizontalPodAutoscaler(t *testing.T) {
 | 
			
		||||
				Name:      "myautoscaler",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.HorizontalPodAutoscalerSpec{
 | 
			
		||||
			Spec: extensions.HorizontalPodAutoscalerSpec{
 | 
			
		||||
				MinReplicas: 1,
 | 
			
		||||
				MaxReplicas: 5,
 | 
			
		||||
				Target:      experimental.ResourceConsumption{Resource: api.ResourceCPU, Quantity: resource.MustParse("0.8")},
 | 
			
		||||
				Target:      extensions.ResourceConsumption{Resource: api.ResourceCPU, Quantity: resource.MustParse("0.8")},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
@@ -133,23 +133,23 @@ func TestValidateHorizontalPodAutoscaler(t *testing.T) {
 | 
			
		||||
 | 
			
		||||
func TestValidateDaemonSetStatusUpdate(t *testing.T) {
 | 
			
		||||
	type dsUpdateTest struct {
 | 
			
		||||
		old    experimental.DaemonSet
 | 
			
		||||
		update experimental.DaemonSet
 | 
			
		||||
		old    extensions.DaemonSet
 | 
			
		||||
		update extensions.DaemonSet
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	successCases := []dsUpdateTest{
 | 
			
		||||
		{
 | 
			
		||||
			old: experimental.DaemonSet{
 | 
			
		||||
			old: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Status: experimental.DaemonSetStatus{
 | 
			
		||||
				Status: extensions.DaemonSetStatus{
 | 
			
		||||
					CurrentNumberScheduled: 1,
 | 
			
		||||
					NumberMisscheduled:     2,
 | 
			
		||||
					DesiredNumberScheduled: 3,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			update: experimental.DaemonSet{
 | 
			
		||||
			update: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Status: experimental.DaemonSetStatus{
 | 
			
		||||
				Status: extensions.DaemonSetStatus{
 | 
			
		||||
					CurrentNumberScheduled: 1,
 | 
			
		||||
					NumberMisscheduled:     1,
 | 
			
		||||
					DesiredNumberScheduled: 3,
 | 
			
		||||
@@ -168,17 +168,17 @@ func TestValidateDaemonSetStatusUpdate(t *testing.T) {
 | 
			
		||||
 | 
			
		||||
	errorCases := map[string]dsUpdateTest{
 | 
			
		||||
		"negative values": {
 | 
			
		||||
			old: experimental.DaemonSet{
 | 
			
		||||
			old: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Status: experimental.DaemonSetStatus{
 | 
			
		||||
				Status: extensions.DaemonSetStatus{
 | 
			
		||||
					CurrentNumberScheduled: 1,
 | 
			
		||||
					NumberMisscheduled:     2,
 | 
			
		||||
					DesiredNumberScheduled: 3,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			update: experimental.DaemonSet{
 | 
			
		||||
			update: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Status: experimental.DaemonSetStatus{
 | 
			
		||||
				Status: extensions.DaemonSetStatus{
 | 
			
		||||
					CurrentNumberScheduled: -1,
 | 
			
		||||
					NumberMisscheduled:     -1,
 | 
			
		||||
					DesiredNumberScheduled: -3,
 | 
			
		||||
@@ -277,53 +277,53 @@ func TestValidateDaemonSetUpdate(t *testing.T) {
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	type dsUpdateTest struct {
 | 
			
		||||
		old    experimental.DaemonSet
 | 
			
		||||
		update experimental.DaemonSet
 | 
			
		||||
		old    extensions.DaemonSet
 | 
			
		||||
		update extensions.DaemonSet
 | 
			
		||||
	}
 | 
			
		||||
	successCases := []dsUpdateTest{
 | 
			
		||||
		{
 | 
			
		||||
			old: experimental.DaemonSet{
 | 
			
		||||
			old: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Spec: experimental.DaemonSetSpec{
 | 
			
		||||
				Spec: extensions.DaemonSetSpec{
 | 
			
		||||
					Selector: validSelector,
 | 
			
		||||
					Template: &validPodTemplateAbc.Template,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			update: experimental.DaemonSet{
 | 
			
		||||
			update: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Spec: experimental.DaemonSetSpec{
 | 
			
		||||
				Spec: extensions.DaemonSetSpec{
 | 
			
		||||
					Selector: validSelector,
 | 
			
		||||
					Template: &validPodTemplateAbc.Template,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			old: experimental.DaemonSet{
 | 
			
		||||
			old: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Spec: experimental.DaemonSetSpec{
 | 
			
		||||
				Spec: extensions.DaemonSetSpec{
 | 
			
		||||
					Selector: validSelector,
 | 
			
		||||
					Template: &validPodTemplateAbc.Template,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			update: experimental.DaemonSet{
 | 
			
		||||
			update: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Spec: experimental.DaemonSetSpec{
 | 
			
		||||
				Spec: extensions.DaemonSetSpec{
 | 
			
		||||
					Selector: validSelector2,
 | 
			
		||||
					Template: &validPodTemplateAbc2.Template,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			old: experimental.DaemonSet{
 | 
			
		||||
			old: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Spec: experimental.DaemonSetSpec{
 | 
			
		||||
				Spec: extensions.DaemonSetSpec{
 | 
			
		||||
					Selector: validSelector,
 | 
			
		||||
					Template: &validPodTemplateAbc.Template,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			update: experimental.DaemonSet{
 | 
			
		||||
			update: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Spec: experimental.DaemonSetSpec{
 | 
			
		||||
				Spec: extensions.DaemonSetSpec{
 | 
			
		||||
					Selector: validSelector,
 | 
			
		||||
					Template: &validPodTemplateNodeSelector.Template,
 | 
			
		||||
				},
 | 
			
		||||
@@ -339,80 +339,80 @@ func TestValidateDaemonSetUpdate(t *testing.T) {
 | 
			
		||||
	}
 | 
			
		||||
	errorCases := map[string]dsUpdateTest{
 | 
			
		||||
		"change daemon name": {
 | 
			
		||||
			old: experimental.DaemonSet{
 | 
			
		||||
			old: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Spec: experimental.DaemonSetSpec{
 | 
			
		||||
				Spec: extensions.DaemonSetSpec{
 | 
			
		||||
					Selector: validSelector,
 | 
			
		||||
					Template: &validPodTemplateAbc.Template,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			update: experimental.DaemonSet{
 | 
			
		||||
			update: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Spec: experimental.DaemonSetSpec{
 | 
			
		||||
				Spec: extensions.DaemonSetSpec{
 | 
			
		||||
					Selector: validSelector,
 | 
			
		||||
					Template: &validPodTemplateAbc.Template,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		"invalid selector": {
 | 
			
		||||
			old: experimental.DaemonSet{
 | 
			
		||||
			old: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Spec: experimental.DaemonSetSpec{
 | 
			
		||||
				Spec: extensions.DaemonSetSpec{
 | 
			
		||||
					Selector: validSelector,
 | 
			
		||||
					Template: &validPodTemplateAbc.Template,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			update: experimental.DaemonSet{
 | 
			
		||||
			update: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Spec: experimental.DaemonSetSpec{
 | 
			
		||||
				Spec: extensions.DaemonSetSpec{
 | 
			
		||||
					Selector: invalidSelector,
 | 
			
		||||
					Template: &validPodTemplateAbc.Template,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		"invalid pod": {
 | 
			
		||||
			old: experimental.DaemonSet{
 | 
			
		||||
			old: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Spec: experimental.DaemonSetSpec{
 | 
			
		||||
				Spec: extensions.DaemonSetSpec{
 | 
			
		||||
					Selector: validSelector,
 | 
			
		||||
					Template: &validPodTemplateAbc.Template,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			update: experimental.DaemonSet{
 | 
			
		||||
			update: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Spec: experimental.DaemonSetSpec{
 | 
			
		||||
				Spec: extensions.DaemonSetSpec{
 | 
			
		||||
					Selector: validSelector,
 | 
			
		||||
					Template: &invalidPodTemplate.Template,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		"change container image": {
 | 
			
		||||
			old: experimental.DaemonSet{
 | 
			
		||||
			old: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Spec: experimental.DaemonSetSpec{
 | 
			
		||||
				Spec: extensions.DaemonSetSpec{
 | 
			
		||||
					Selector: validSelector,
 | 
			
		||||
					Template: &validPodTemplateAbc.Template,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			update: experimental.DaemonSet{
 | 
			
		||||
			update: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Spec: experimental.DaemonSetSpec{
 | 
			
		||||
				Spec: extensions.DaemonSetSpec{
 | 
			
		||||
					Selector: validSelector,
 | 
			
		||||
					Template: &validPodTemplateDef.Template,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		"read-write volume": {
 | 
			
		||||
			old: experimental.DaemonSet{
 | 
			
		||||
			old: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Spec: experimental.DaemonSetSpec{
 | 
			
		||||
				Spec: extensions.DaemonSetSpec{
 | 
			
		||||
					Selector: validSelector,
 | 
			
		||||
					Template: &validPodTemplateAbc.Template,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			update: experimental.DaemonSet{
 | 
			
		||||
			update: extensions.DaemonSet{
 | 
			
		||||
				ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
				Spec: experimental.DaemonSetSpec{
 | 
			
		||||
				Spec: extensions.DaemonSetSpec{
 | 
			
		||||
					Selector: validSelector,
 | 
			
		||||
					Template: &readWriteVolumePodTemplate.Template,
 | 
			
		||||
				},
 | 
			
		||||
@@ -452,17 +452,17 @@ func TestValidateDaemonSet(t *testing.T) {
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
	successCases := []experimental.DaemonSet{
 | 
			
		||||
	successCases := []extensions.DaemonSet{
 | 
			
		||||
		{
 | 
			
		||||
			ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
			Spec: experimental.DaemonSetSpec{
 | 
			
		||||
			Spec: extensions.DaemonSetSpec{
 | 
			
		||||
				Selector: validSelector,
 | 
			
		||||
				Template: &validPodTemplate.Template,
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			ObjectMeta: api.ObjectMeta{Name: "abc-123", Namespace: api.NamespaceDefault},
 | 
			
		||||
			Spec: experimental.DaemonSetSpec{
 | 
			
		||||
			Spec: extensions.DaemonSetSpec{
 | 
			
		||||
				Selector: validSelector,
 | 
			
		||||
				Template: &validPodTemplate.Template,
 | 
			
		||||
			},
 | 
			
		||||
@@ -474,37 +474,37 @@ func TestValidateDaemonSet(t *testing.T) {
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	errorCases := map[string]experimental.DaemonSet{
 | 
			
		||||
	errorCases := map[string]extensions.DaemonSet{
 | 
			
		||||
		"zero-length ID": {
 | 
			
		||||
			ObjectMeta: api.ObjectMeta{Name: "", Namespace: api.NamespaceDefault},
 | 
			
		||||
			Spec: experimental.DaemonSetSpec{
 | 
			
		||||
			Spec: extensions.DaemonSetSpec{
 | 
			
		||||
				Selector: validSelector,
 | 
			
		||||
				Template: &validPodTemplate.Template,
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		"missing-namespace": {
 | 
			
		||||
			ObjectMeta: api.ObjectMeta{Name: "abc-123"},
 | 
			
		||||
			Spec: experimental.DaemonSetSpec{
 | 
			
		||||
			Spec: extensions.DaemonSetSpec{
 | 
			
		||||
				Selector: validSelector,
 | 
			
		||||
				Template: &validPodTemplate.Template,
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		"empty selector": {
 | 
			
		||||
			ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
			Spec: experimental.DaemonSetSpec{
 | 
			
		||||
			Spec: extensions.DaemonSetSpec{
 | 
			
		||||
				Template: &validPodTemplate.Template,
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		"selector_doesnt_match": {
 | 
			
		||||
			ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
			Spec: experimental.DaemonSetSpec{
 | 
			
		||||
			Spec: extensions.DaemonSetSpec{
 | 
			
		||||
				Selector: map[string]string{"foo": "bar"},
 | 
			
		||||
				Template: &validPodTemplate.Template,
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		"invalid manifest": {
 | 
			
		||||
			ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault},
 | 
			
		||||
			Spec: experimental.DaemonSetSpec{
 | 
			
		||||
			Spec: extensions.DaemonSetSpec{
 | 
			
		||||
				Selector: validSelector,
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
@@ -516,7 +516,7 @@ func TestValidateDaemonSet(t *testing.T) {
 | 
			
		||||
					"NoUppercaseOrSpecialCharsLike=Equals": "bar",
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.DaemonSetSpec{
 | 
			
		||||
			Spec: extensions.DaemonSetSpec{
 | 
			
		||||
				Selector: validSelector,
 | 
			
		||||
				Template: &validPodTemplate.Template,
 | 
			
		||||
			},
 | 
			
		||||
@@ -529,7 +529,7 @@ func TestValidateDaemonSet(t *testing.T) {
 | 
			
		||||
					"NoUppercaseOrSpecialCharsLike=Equals": "bar",
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.DaemonSetSpec{
 | 
			
		||||
			Spec: extensions.DaemonSetSpec{
 | 
			
		||||
				Template: &invalidPodTemplate.Template,
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
@@ -541,7 +541,7 @@ func TestValidateDaemonSet(t *testing.T) {
 | 
			
		||||
					"NoUppercaseOrSpecialCharsLike=Equals": "bar",
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.DaemonSetSpec{
 | 
			
		||||
			Spec: extensions.DaemonSetSpec{
 | 
			
		||||
				Selector: validSelector,
 | 
			
		||||
				Template: &validPodTemplate.Template,
 | 
			
		||||
			},
 | 
			
		||||
@@ -551,7 +551,7 @@ func TestValidateDaemonSet(t *testing.T) {
 | 
			
		||||
				Name:      "abc-123",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.DaemonSetSpec{
 | 
			
		||||
			Spec: extensions.DaemonSetSpec{
 | 
			
		||||
				Selector: validSelector,
 | 
			
		||||
				Template: &api.PodTemplateSpec{
 | 
			
		||||
					Spec: api.PodSpec{
 | 
			
		||||
@@ -570,7 +570,7 @@ func TestValidateDaemonSet(t *testing.T) {
 | 
			
		||||
				Name:      "abc-123",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.DaemonSetSpec{
 | 
			
		||||
			Spec: extensions.DaemonSetSpec{
 | 
			
		||||
				Selector: validSelector,
 | 
			
		||||
				Template: &api.PodTemplateSpec{
 | 
			
		||||
					Spec: api.PodSpec{
 | 
			
		||||
@@ -607,13 +607,13 @@ func TestValidateDaemonSet(t *testing.T) {
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func validDeployment() *experimental.Deployment {
 | 
			
		||||
	return &experimental.Deployment{
 | 
			
		||||
func validDeployment() *extensions.Deployment {
 | 
			
		||||
	return &extensions.Deployment{
 | 
			
		||||
		ObjectMeta: api.ObjectMeta{
 | 
			
		||||
			Name:      "abc",
 | 
			
		||||
			Namespace: api.NamespaceDefault,
 | 
			
		||||
		},
 | 
			
		||||
		Spec: experimental.DeploymentSpec{
 | 
			
		||||
		Spec: extensions.DeploymentSpec{
 | 
			
		||||
			Selector: map[string]string{
 | 
			
		||||
				"name": "abc",
 | 
			
		||||
			},
 | 
			
		||||
@@ -643,7 +643,7 @@ func validDeployment() *experimental.Deployment {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func TestValidateDeployment(t *testing.T) {
 | 
			
		||||
	successCases := []*experimental.Deployment{
 | 
			
		||||
	successCases := []*extensions.Deployment{
 | 
			
		||||
		validDeployment(),
 | 
			
		||||
	}
 | 
			
		||||
	for _, successCase := range successCases {
 | 
			
		||||
@@ -652,8 +652,8 @@ func TestValidateDeployment(t *testing.T) {
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	errorCases := map[string]*experimental.Deployment{}
 | 
			
		||||
	errorCases["metadata.name: required value"] = &experimental.Deployment{
 | 
			
		||||
	errorCases := map[string]*extensions.Deployment{}
 | 
			
		||||
	errorCases["metadata.name: required value"] = &extensions.Deployment{
 | 
			
		||||
		ObjectMeta: api.ObjectMeta{
 | 
			
		||||
			Namespace: api.NamespaceDefault,
 | 
			
		||||
		},
 | 
			
		||||
@@ -677,17 +677,17 @@ func TestValidateDeployment(t *testing.T) {
 | 
			
		||||
 | 
			
		||||
	// rollingUpdate should be nil for recreate.
 | 
			
		||||
	invalidRecreateDeployment := validDeployment()
 | 
			
		||||
	invalidRecreateDeployment.Spec.Strategy = experimental.DeploymentStrategy{
 | 
			
		||||
		Type:          experimental.RecreateDeploymentStrategyType,
 | 
			
		||||
		RollingUpdate: &experimental.RollingUpdateDeployment{},
 | 
			
		||||
	invalidRecreateDeployment.Spec.Strategy = extensions.DeploymentStrategy{
 | 
			
		||||
		Type:          extensions.RecreateDeploymentStrategyType,
 | 
			
		||||
		RollingUpdate: &extensions.RollingUpdateDeployment{},
 | 
			
		||||
	}
 | 
			
		||||
	errorCases["rollingUpdate should be nil when strategy type is Recreate"] = invalidRecreateDeployment
 | 
			
		||||
 | 
			
		||||
	// MaxSurge should be in the form of 20%.
 | 
			
		||||
	invalidMaxSurgeDeployment := validDeployment()
 | 
			
		||||
	invalidMaxSurgeDeployment.Spec.Strategy = experimental.DeploymentStrategy{
 | 
			
		||||
		Type: experimental.RollingUpdateDeploymentStrategyType,
 | 
			
		||||
		RollingUpdate: &experimental.RollingUpdateDeployment{
 | 
			
		||||
	invalidMaxSurgeDeployment.Spec.Strategy = extensions.DeploymentStrategy{
 | 
			
		||||
		Type: extensions.RollingUpdateDeploymentStrategyType,
 | 
			
		||||
		RollingUpdate: &extensions.RollingUpdateDeployment{
 | 
			
		||||
			MaxSurge: util.NewIntOrStringFromString("20Percent"),
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
@@ -695,9 +695,9 @@ func TestValidateDeployment(t *testing.T) {
 | 
			
		||||
 | 
			
		||||
	// MaxSurge and MaxUnavailable cannot both be zero.
 | 
			
		||||
	invalidRollingUpdateDeployment := validDeployment()
 | 
			
		||||
	invalidRollingUpdateDeployment.Spec.Strategy = experimental.DeploymentStrategy{
 | 
			
		||||
		Type: experimental.RollingUpdateDeploymentStrategyType,
 | 
			
		||||
		RollingUpdate: &experimental.RollingUpdateDeployment{
 | 
			
		||||
	invalidRollingUpdateDeployment.Spec.Strategy = extensions.DeploymentStrategy{
 | 
			
		||||
		Type: extensions.RollingUpdateDeploymentStrategyType,
 | 
			
		||||
		RollingUpdate: &extensions.RollingUpdateDeployment{
 | 
			
		||||
			MaxSurge:       util.NewIntOrStringFromString("0%"),
 | 
			
		||||
			MaxUnavailable: util.NewIntOrStringFromInt(0),
 | 
			
		||||
		},
 | 
			
		||||
@@ -706,9 +706,9 @@ func TestValidateDeployment(t *testing.T) {
 | 
			
		||||
 | 
			
		||||
	// MaxUnavailable should not be more than 100%.
 | 
			
		||||
	invalidMaxUnavailableDeployment := validDeployment()
 | 
			
		||||
	invalidMaxUnavailableDeployment.Spec.Strategy = experimental.DeploymentStrategy{
 | 
			
		||||
		Type: experimental.RollingUpdateDeploymentStrategyType,
 | 
			
		||||
		RollingUpdate: &experimental.RollingUpdateDeployment{
 | 
			
		||||
	invalidMaxUnavailableDeployment.Spec.Strategy = extensions.DeploymentStrategy{
 | 
			
		||||
		Type: extensions.RollingUpdateDeploymentStrategyType,
 | 
			
		||||
		RollingUpdate: &extensions.RollingUpdateDeployment{
 | 
			
		||||
			MaxUnavailable: util.NewIntOrStringFromString("110%"),
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
@@ -736,13 +736,13 @@ func TestValidateJob(t *testing.T) {
 | 
			
		||||
			Containers:    []api.Container{{Name: "abc", Image: "image", ImagePullPolicy: "IfNotPresent"}},
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
	successCases := []experimental.Job{
 | 
			
		||||
	successCases := []extensions.Job{
 | 
			
		||||
		{
 | 
			
		||||
			ObjectMeta: api.ObjectMeta{
 | 
			
		||||
				Name:      "myjob",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.JobSpec{
 | 
			
		||||
			Spec: extensions.JobSpec{
 | 
			
		||||
				Selector: validSelector,
 | 
			
		||||
				Template: &validPodTemplateSpec,
 | 
			
		||||
			},
 | 
			
		||||
@@ -754,13 +754,13 @@ func TestValidateJob(t *testing.T) {
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	negative := -1
 | 
			
		||||
	errorCases := map[string]experimental.Job{
 | 
			
		||||
	errorCases := map[string]extensions.Job{
 | 
			
		||||
		"spec.parallelism:must be non-negative": {
 | 
			
		||||
			ObjectMeta: api.ObjectMeta{
 | 
			
		||||
				Name:      "myjob",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.JobSpec{
 | 
			
		||||
			Spec: extensions.JobSpec{
 | 
			
		||||
				Parallelism: &negative,
 | 
			
		||||
				Selector:    validSelector,
 | 
			
		||||
				Template:    &validPodTemplateSpec,
 | 
			
		||||
@@ -771,7 +771,7 @@ func TestValidateJob(t *testing.T) {
 | 
			
		||||
				Name:      "myjob",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.JobSpec{
 | 
			
		||||
			Spec: extensions.JobSpec{
 | 
			
		||||
				Completions: &negative,
 | 
			
		||||
				Selector:    validSelector,
 | 
			
		||||
				Template:    &validPodTemplateSpec,
 | 
			
		||||
@@ -782,7 +782,7 @@ func TestValidateJob(t *testing.T) {
 | 
			
		||||
				Name:      "myjob",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.JobSpec{
 | 
			
		||||
			Spec: extensions.JobSpec{
 | 
			
		||||
				Selector: map[string]string{},
 | 
			
		||||
				Template: &validPodTemplateSpec,
 | 
			
		||||
			},
 | 
			
		||||
@@ -792,7 +792,7 @@ func TestValidateJob(t *testing.T) {
 | 
			
		||||
				Name:      "myjob",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.JobSpec{
 | 
			
		||||
			Spec: extensions.JobSpec{
 | 
			
		||||
				Selector: validSelector,
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
@@ -801,7 +801,7 @@ func TestValidateJob(t *testing.T) {
 | 
			
		||||
				Name:      "myjob",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.JobSpec{
 | 
			
		||||
			Spec: extensions.JobSpec{
 | 
			
		||||
				Selector: validSelector,
 | 
			
		||||
				Template: &api.PodTemplateSpec{
 | 
			
		||||
					ObjectMeta: api.ObjectMeta{
 | 
			
		||||
@@ -820,7 +820,7 @@ func TestValidateJob(t *testing.T) {
 | 
			
		||||
				Name:      "myjob",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.JobSpec{
 | 
			
		||||
			Spec: extensions.JobSpec{
 | 
			
		||||
				Selector: validSelector,
 | 
			
		||||
				Template: &api.PodTemplateSpec{
 | 
			
		||||
					ObjectMeta: api.ObjectMeta{
 | 
			
		||||
@@ -853,28 +853,28 @@ func TestValidateJob(t *testing.T) {
 | 
			
		||||
type ingressRules map[string]string
 | 
			
		||||
 | 
			
		||||
func TestValidateIngress(t *testing.T) {
 | 
			
		||||
	defaultBackend := experimental.IngressBackend{
 | 
			
		||||
	defaultBackend := extensions.IngressBackend{
 | 
			
		||||
		ServiceName: "default-backend",
 | 
			
		||||
		ServicePort: util.IntOrString{Kind: util.IntstrInt, IntVal: 80},
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	newValid := func() experimental.Ingress {
 | 
			
		||||
		return experimental.Ingress{
 | 
			
		||||
	newValid := func() extensions.Ingress {
 | 
			
		||||
		return extensions.Ingress{
 | 
			
		||||
			ObjectMeta: api.ObjectMeta{
 | 
			
		||||
				Name:      "foo",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.IngressSpec{
 | 
			
		||||
				Backend: &experimental.IngressBackend{
 | 
			
		||||
			Spec: extensions.IngressSpec{
 | 
			
		||||
				Backend: &extensions.IngressBackend{
 | 
			
		||||
					ServiceName: "default-backend",
 | 
			
		||||
					ServicePort: util.IntOrString{Kind: util.IntstrInt, IntVal: 80},
 | 
			
		||||
				},
 | 
			
		||||
				Rules: []experimental.IngressRule{
 | 
			
		||||
				Rules: []extensions.IngressRule{
 | 
			
		||||
					{
 | 
			
		||||
						Host: "foo.bar.com",
 | 
			
		||||
						IngressRuleValue: experimental.IngressRuleValue{
 | 
			
		||||
							HTTP: &experimental.HTTPIngressRuleValue{
 | 
			
		||||
								Paths: []experimental.HTTPIngressPath{
 | 
			
		||||
						IngressRuleValue: extensions.IngressRuleValue{
 | 
			
		||||
							HTTP: &extensions.HTTPIngressRuleValue{
 | 
			
		||||
								Paths: []extensions.HTTPIngressPath{
 | 
			
		||||
									{
 | 
			
		||||
										Path:    "/foo",
 | 
			
		||||
										Backend: defaultBackend,
 | 
			
		||||
@@ -885,7 +885,7 @@ func TestValidateIngress(t *testing.T) {
 | 
			
		||||
					},
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			Status: experimental.IngressStatus{
 | 
			
		||||
			Status: extensions.IngressStatus{
 | 
			
		||||
				LoadBalancer: api.LoadBalancerStatus{
 | 
			
		||||
					Ingress: []api.LoadBalancerIngress{
 | 
			
		||||
						{IP: "127.0.0.1"},
 | 
			
		||||
@@ -899,21 +899,21 @@ func TestValidateIngress(t *testing.T) {
 | 
			
		||||
	invalidNameBackend := newValid()
 | 
			
		||||
	invalidNameBackend.Spec.Backend.ServiceName = "defaultBackend"
 | 
			
		||||
	noPortBackend := newValid()
 | 
			
		||||
	noPortBackend.Spec.Backend = &experimental.IngressBackend{ServiceName: defaultBackend.ServiceName}
 | 
			
		||||
	noPortBackend.Spec.Backend = &extensions.IngressBackend{ServiceName: defaultBackend.ServiceName}
 | 
			
		||||
	noForwardSlashPath := newValid()
 | 
			
		||||
	noForwardSlashPath.Spec.Rules[0].IngressRuleValue.HTTP.Paths = []experimental.HTTPIngressPath{
 | 
			
		||||
	noForwardSlashPath.Spec.Rules[0].IngressRuleValue.HTTP.Paths = []extensions.HTTPIngressPath{
 | 
			
		||||
		{
 | 
			
		||||
			Path:    "invalid",
 | 
			
		||||
			Backend: defaultBackend,
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
	noPaths := newValid()
 | 
			
		||||
	noPaths.Spec.Rules[0].IngressRuleValue.HTTP.Paths = []experimental.HTTPIngressPath{}
 | 
			
		||||
	noPaths.Spec.Rules[0].IngressRuleValue.HTTP.Paths = []extensions.HTTPIngressPath{}
 | 
			
		||||
	badHost := newValid()
 | 
			
		||||
	badHost.Spec.Rules[0].Host = "foobar:80"
 | 
			
		||||
	badRegexPath := newValid()
 | 
			
		||||
	badPathExpr := "/invalid["
 | 
			
		||||
	badRegexPath.Spec.Rules[0].IngressRuleValue.HTTP.Paths = []experimental.HTTPIngressPath{
 | 
			
		||||
	badRegexPath.Spec.Rules[0].IngressRuleValue.HTTP.Paths = []extensions.HTTPIngressPath{
 | 
			
		||||
		{
 | 
			
		||||
			Path:    badPathExpr,
 | 
			
		||||
			Backend: defaultBackend,
 | 
			
		||||
@@ -926,7 +926,7 @@ func TestValidateIngress(t *testing.T) {
 | 
			
		||||
	badHostIP.Spec.Rules[0].Host = hostIP
 | 
			
		||||
	badHostIPErr := fmt.Sprintf("spec.rules.host: invalid value '%v'", hostIP)
 | 
			
		||||
 | 
			
		||||
	errorCases := map[string]experimental.Ingress{
 | 
			
		||||
	errorCases := map[string]extensions.Ingress{
 | 
			
		||||
		"spec.backend.serviceName: required value":          servicelessBackend,
 | 
			
		||||
		"spec.backend.serviceName: invalid value":           invalidNameBackend,
 | 
			
		||||
		"spec.backend.servicePort: invalid value":           noPortBackend,
 | 
			
		||||
@@ -952,18 +952,18 @@ func TestValidateIngress(t *testing.T) {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func TestValidateClusterAutoscaler(t *testing.T) {
 | 
			
		||||
	successCases := []experimental.ClusterAutoscaler{
 | 
			
		||||
	successCases := []extensions.ClusterAutoscaler{
 | 
			
		||||
		{
 | 
			
		||||
			ObjectMeta: api.ObjectMeta{
 | 
			
		||||
				Name:      "ClusterAutoscaler",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.ClusterAutoscalerSpec{
 | 
			
		||||
			Spec: extensions.ClusterAutoscalerSpec{
 | 
			
		||||
				MinNodes: 1,
 | 
			
		||||
				MaxNodes: 5,
 | 
			
		||||
				TargetUtilization: []experimental.NodeUtilization{
 | 
			
		||||
				TargetUtilization: []extensions.NodeUtilization{
 | 
			
		||||
					{
 | 
			
		||||
						Resource: experimental.CpuRequest,
 | 
			
		||||
						Resource: extensions.CpuRequest,
 | 
			
		||||
						Value:    0.7,
 | 
			
		||||
					},
 | 
			
		||||
				},
 | 
			
		||||
@@ -976,18 +976,18 @@ func TestValidateClusterAutoscaler(t *testing.T) {
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	errorCases := map[string]experimental.ClusterAutoscaler{
 | 
			
		||||
	errorCases := map[string]extensions.ClusterAutoscaler{
 | 
			
		||||
		"name must be ClusterAutoscaler": {
 | 
			
		||||
			ObjectMeta: api.ObjectMeta{
 | 
			
		||||
				Name:      "TestClusterAutoscaler",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.ClusterAutoscalerSpec{
 | 
			
		||||
			Spec: extensions.ClusterAutoscalerSpec{
 | 
			
		||||
				MinNodes: 1,
 | 
			
		||||
				MaxNodes: 5,
 | 
			
		||||
				TargetUtilization: []experimental.NodeUtilization{
 | 
			
		||||
				TargetUtilization: []extensions.NodeUtilization{
 | 
			
		||||
					{
 | 
			
		||||
						Resource: experimental.CpuRequest,
 | 
			
		||||
						Resource: extensions.CpuRequest,
 | 
			
		||||
						Value:    0.7,
 | 
			
		||||
					},
 | 
			
		||||
				},
 | 
			
		||||
@@ -998,12 +998,12 @@ func TestValidateClusterAutoscaler(t *testing.T) {
 | 
			
		||||
				Name:      "ClusterAutoscaler",
 | 
			
		||||
				Namespace: "test",
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.ClusterAutoscalerSpec{
 | 
			
		||||
			Spec: extensions.ClusterAutoscalerSpec{
 | 
			
		||||
				MinNodes: 1,
 | 
			
		||||
				MaxNodes: 5,
 | 
			
		||||
				TargetUtilization: []experimental.NodeUtilization{
 | 
			
		||||
				TargetUtilization: []extensions.NodeUtilization{
 | 
			
		||||
					{
 | 
			
		||||
						Resource: experimental.CpuRequest,
 | 
			
		||||
						Resource: extensions.CpuRequest,
 | 
			
		||||
						Value:    0.7,
 | 
			
		||||
					},
 | 
			
		||||
				},
 | 
			
		||||
@@ -1015,12 +1015,12 @@ func TestValidateClusterAutoscaler(t *testing.T) {
 | 
			
		||||
				Name:      "ClusterAutoscaler",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.ClusterAutoscalerSpec{
 | 
			
		||||
			Spec: extensions.ClusterAutoscalerSpec{
 | 
			
		||||
				MinNodes: -1,
 | 
			
		||||
				MaxNodes: 5,
 | 
			
		||||
				TargetUtilization: []experimental.NodeUtilization{
 | 
			
		||||
				TargetUtilization: []extensions.NodeUtilization{
 | 
			
		||||
					{
 | 
			
		||||
						Resource: experimental.CpuRequest,
 | 
			
		||||
						Resource: extensions.CpuRequest,
 | 
			
		||||
						Value:    0.7,
 | 
			
		||||
					},
 | 
			
		||||
				},
 | 
			
		||||
@@ -1031,12 +1031,12 @@ func TestValidateClusterAutoscaler(t *testing.T) {
 | 
			
		||||
				Name:      "ClusterAutoscaler",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.ClusterAutoscalerSpec{
 | 
			
		||||
			Spec: extensions.ClusterAutoscalerSpec{
 | 
			
		||||
				MinNodes: 10,
 | 
			
		||||
				MaxNodes: 5,
 | 
			
		||||
				TargetUtilization: []experimental.NodeUtilization{
 | 
			
		||||
				TargetUtilization: []extensions.NodeUtilization{
 | 
			
		||||
					{
 | 
			
		||||
						Resource: experimental.CpuRequest,
 | 
			
		||||
						Resource: extensions.CpuRequest,
 | 
			
		||||
						Value:    0.7,
 | 
			
		||||
					},
 | 
			
		||||
				},
 | 
			
		||||
@@ -1047,10 +1047,10 @@ func TestValidateClusterAutoscaler(t *testing.T) {
 | 
			
		||||
				Name:      "ClusterAutoscaler",
 | 
			
		||||
				Namespace: api.NamespaceDefault,
 | 
			
		||||
			},
 | 
			
		||||
			Spec: experimental.ClusterAutoscalerSpec{
 | 
			
		||||
			Spec: extensions.ClusterAutoscalerSpec{
 | 
			
		||||
				MinNodes:          1,
 | 
			
		||||
				MaxNodes:          5,
 | 
			
		||||
				TargetUtilization: []experimental.NodeUtilization{},
 | 
			
		||||
				TargetUtilization: []extensions.NodeUtilization{},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user