diff --git a/pkg/apis/servicecatalog/validation/instance_test.go b/pkg/apis/servicecatalog/validation/instance_test.go index 7dd80571c6b..cb691314686 100644 --- a/pkg/apis/servicecatalog/validation/instance_test.go +++ b/pkg/apis/servicecatalog/validation/instance_test.go @@ -114,6 +114,15 @@ func TestValidateServiceInstance(t *testing.T) { instance: validServiceInstance(), valid: true, }, + { + name: "valid planName", + instance: func() *servicecatalog.ServiceInstance { + i := validServiceInstance() + i.Spec.ClusterServicePlanExternalName = "9651.JVHbebe" + return i + }(), + valid: true, + }, { name: "missing namespace", instance: func() *servicecatalog.ServiceInstance { @@ -154,7 +163,7 @@ func TestValidateServiceInstance(t *testing.T) { name: "invalid planName", instance: func() *servicecatalog.ServiceInstance { i := validServiceInstance() - i.Spec.ClusterServicePlanExternalName = "9651.JVHbebe" + i.Spec.ClusterServicePlanExternalName = "9651_JVHbebe" return i }(), valid: false, diff --git a/pkg/apis/servicecatalog/validation/serviceclass.go b/pkg/apis/servicecatalog/validation/serviceclass.go index 21185c73935..50311f0dff1 100644 --- a/pkg/apis/servicecatalog/validation/serviceclass.go +++ b/pkg/apis/servicecatalog/validation/serviceclass.go @@ -26,7 +26,7 @@ import ( sc "github.com/kubernetes-incubator/service-catalog/pkg/apis/servicecatalog" ) -const serviceClassNameFmt string = `[-a-zA-Z0-9]+` +const serviceClassNameFmt string = `[-.a-zA-Z0-9]+` const serviceClassNameMaxLength int = 63 var serviceClassNameRegexp = regexp.MustCompile("^" + serviceClassNameFmt + "$") diff --git a/pkg/apis/servicecatalog/validation/serviceclass_test.go b/pkg/apis/servicecatalog/validation/serviceclass_test.go index 17dacf5aa9f..6d96bf6bdf5 100644 --- a/pkg/apis/servicecatalog/validation/serviceclass_test.go +++ b/pkg/apis/servicecatalog/validation/serviceclass_test.go @@ -68,6 +68,15 @@ func TestValidateClusterServiceClass(t *testing.T) { }(), valid: true, }, + { + name: "valid serviceClass - period in externalName", + serviceClass: func() *servicecatalog.ClusterServiceClass { + s := validClusterServiceClass() + s.Spec.ExternalName = "abc.com" + return s + }(), + valid: true, + }, { name: "invalid serviceClass - has namespace", serviceClass: func() *servicecatalog.ClusterServiceClass { @@ -114,10 +123,10 @@ func TestValidateClusterServiceClass(t *testing.T) { valid: false, }, { - name: "invalid serviceClass - period in externalName", + name: "invalid serviceClass - underscore in externalName", serviceClass: func() *servicecatalog.ClusterServiceClass { s := validClusterServiceClass() - s.Spec.ExternalName = "abc.com" + s.Spec.ExternalName = "test_serviceclass" return s }(), valid: false, diff --git a/pkg/apis/servicecatalog/validation/serviceplan.go b/pkg/apis/servicecatalog/validation/serviceplan.go index 7acdb267b2c..06079299bad 100644 --- a/pkg/apis/servicecatalog/validation/serviceplan.go +++ b/pkg/apis/servicecatalog/validation/serviceplan.go @@ -26,7 +26,7 @@ import ( sc "github.com/kubernetes-incubator/service-catalog/pkg/apis/servicecatalog" ) -const servicePlanNameFmt string = `[-a-zA-Z0-9]+` +const servicePlanNameFmt string = `[-.a-zA-Z0-9]+` const servicePlanNameMaxLength int = 63 var servicePlanNameRegexp = regexp.MustCompile("^" + servicePlanNameFmt + "$") diff --git a/pkg/apis/servicecatalog/validation/serviceplan_test.go b/pkg/apis/servicecatalog/validation/serviceplan_test.go index 5cdd89f8186..5b38a1efe92 100644 --- a/pkg/apis/servicecatalog/validation/serviceplan_test.go +++ b/pkg/apis/servicecatalog/validation/serviceplan_test.go @@ -54,6 +54,15 @@ func TestValidateClusterServicePlan(t *testing.T) { servicePlan: validClusterServicePlan(), valid: true, }, + { + name: "valid servicePlan - period in externalName", + servicePlan: func() *servicecatalog.ClusterServicePlan { + s := validClusterServicePlan() + s.Spec.ExternalName = "test.plan" + return s + }(), + valid: true, + }, { name: "missing name", servicePlan: func() *servicecatalog.ClusterServicePlan {