mirror of
https://github.com/projectcapsule/capsule.git
synced 2026-02-14 18:09:58 +00:00
refactor: renaming struct field names for allowed hostnames and classes
This commit is contained in:
@@ -23,8 +23,8 @@ func (IngressHostnames) Field() string {
|
||||
func (IngressHostnames) Func() client.IndexerFunc {
|
||||
return func(object client.Object) (out []string) {
|
||||
tenant := object.(*capsulev1beta1.Tenant)
|
||||
if tenant.Spec.IngressOptions != nil && tenant.Spec.IngressOptions.IngressHostnames != nil {
|
||||
out = append(out, tenant.Spec.IngressOptions.IngressHostnames.Exact...)
|
||||
if tenant.Spec.IngressOptions != nil && tenant.Spec.IngressOptions.AllowedHostnames != nil {
|
||||
out = append(out, tenant.Spec.IngressOptions.AllowedHostnames.Exact...)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
@@ -111,23 +111,23 @@ func (r *class) OnDelete(client.Client, *admission.Decoder, record.EventRecorder
|
||||
}
|
||||
|
||||
func (r *class) validateClass(tenant capsulev1beta1.Tenant, ingressClass *string) error {
|
||||
if tenant.Spec.IngressOptions.IngressClasses == nil {
|
||||
if tenant.Spec.IngressOptions.AllowedClasses == nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
if ingressClass == nil {
|
||||
return NewIngressClassNotValid(*tenant.Spec.IngressOptions.IngressClasses)
|
||||
return NewIngressClassNotValid(*tenant.Spec.IngressOptions.AllowedClasses)
|
||||
}
|
||||
|
||||
var valid, matched bool
|
||||
|
||||
if len(tenant.Spec.IngressOptions.IngressClasses.Exact) > 0 {
|
||||
valid = tenant.Spec.IngressOptions.IngressClasses.ExactMatch(*ingressClass)
|
||||
if len(tenant.Spec.IngressOptions.AllowedClasses.Exact) > 0 {
|
||||
valid = tenant.Spec.IngressOptions.AllowedClasses.ExactMatch(*ingressClass)
|
||||
}
|
||||
matched = tenant.Spec.IngressOptions.IngressClasses.RegexMatch(*ingressClass)
|
||||
matched = tenant.Spec.IngressOptions.AllowedClasses.RegexMatch(*ingressClass)
|
||||
|
||||
if !valid && !matched {
|
||||
return NewIngressClassForbidden(*ingressClass, *tenant.Spec.IngressOptions.IngressClasses)
|
||||
return NewIngressClassForbidden(*ingressClass, *tenant.Spec.IngressOptions.AllowedClasses)
|
||||
}
|
||||
|
||||
return nil
|
||||
|
||||
@@ -104,7 +104,7 @@ func (r *hostnames) OnDelete(client.Client, *admission.Decoder, record.EventReco
|
||||
}
|
||||
|
||||
func (r *hostnames) validateHostnames(tenant capsulev1beta1.Tenant, hostnames []string) error {
|
||||
if tenant.Spec.IngressOptions == nil || tenant.Spec.IngressOptions.IngressHostnames == nil {
|
||||
if tenant.Spec.IngressOptions == nil || tenant.Spec.IngressOptions.AllowedHostnames == nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -113,7 +113,7 @@ func (r *hostnames) validateHostnames(tenant capsulev1beta1.Tenant, hostnames []
|
||||
var invalidHostnames []string
|
||||
if len(hostnames) > 0 {
|
||||
for _, currentHostname := range hostnames {
|
||||
isPresent := HostnamesList(tenant.Spec.IngressOptions.IngressHostnames.Exact).IsStringInList(currentHostname)
|
||||
isPresent := HostnamesList(tenant.Spec.IngressOptions.AllowedHostnames.Exact).IsStringInList(currentHostname)
|
||||
if !isPresent {
|
||||
invalidHostnames = append(invalidHostnames, currentHostname)
|
||||
}
|
||||
@@ -124,7 +124,7 @@ func (r *hostnames) validateHostnames(tenant capsulev1beta1.Tenant, hostnames []
|
||||
}
|
||||
|
||||
var notMatchingHostnames []string
|
||||
allowedRegex := tenant.Spec.IngressOptions.IngressHostnames.Regex
|
||||
allowedRegex := tenant.Spec.IngressOptions.AllowedHostnames.Regex
|
||||
if len(allowedRegex) > 0 {
|
||||
for _, currentHostname := range hostnames {
|
||||
matched, _ = regexp.MatchString(allowedRegex, currentHostname)
|
||||
@@ -138,7 +138,7 @@ func (r *hostnames) validateHostnames(tenant capsulev1beta1.Tenant, hostnames []
|
||||
}
|
||||
|
||||
if !valid && !matched {
|
||||
return NewIngressHostnamesNotValid(invalidHostnames, notMatchingHostnames, *tenant.Spec.IngressOptions.IngressHostnames)
|
||||
return NewIngressHostnamesNotValid(invalidHostnames, notMatchingHostnames, *tenant.Spec.IngressOptions.AllowedHostnames)
|
||||
}
|
||||
|
||||
return nil
|
||||
|
||||
@@ -30,8 +30,8 @@ func (h *hostnameRegexHandler) validate(decoder *admission.Decoder, req admissio
|
||||
return utils.ErroredResponse(err)
|
||||
}
|
||||
|
||||
if tenant.Spec.IngressOptions.IngressHostnames != nil && len(tenant.Spec.IngressOptions.IngressHostnames.Regex) > 0 {
|
||||
if _, err := regexp.Compile(tenant.Spec.IngressOptions.IngressHostnames.Regex); err != nil {
|
||||
if tenant.Spec.IngressOptions.AllowedHostnames != nil && len(tenant.Spec.IngressOptions.AllowedHostnames.Regex) > 0 {
|
||||
if _, err := regexp.Compile(tenant.Spec.IngressOptions.AllowedHostnames.Regex); err != nil {
|
||||
response := admission.Denied("unable to compile allowedHostnames allowedRegex")
|
||||
|
||||
return &response
|
||||
|
||||
@@ -33,8 +33,8 @@ func (h *hostnamesCollisionHandler) validateTenant(ctx context.Context, req admi
|
||||
return utils.ErroredResponse(err)
|
||||
}
|
||||
|
||||
if !h.configuration.AllowTenantIngressHostnamesCollision() && tenant.Spec.IngressOptions != nil && tenant.Spec.IngressOptions.IngressHostnames != nil && len(tenant.Spec.IngressOptions.IngressHostnames.Exact) > 0 {
|
||||
for _, h := range tenant.Spec.IngressOptions.IngressHostnames.Exact {
|
||||
if !h.configuration.AllowTenantIngressHostnamesCollision() && tenant.Spec.IngressOptions != nil && tenant.Spec.IngressOptions.AllowedHostnames != nil && len(tenant.Spec.IngressOptions.AllowedHostnames.Exact) > 0 {
|
||||
for _, h := range tenant.Spec.IngressOptions.AllowedHostnames.Exact {
|
||||
tntList := &capsulev1beta1.TenantList{}
|
||||
if err := clt.List(ctx, tntList, client.MatchingFieldsSelector{
|
||||
Selector: fields.OneTermEqualSelector(".spec.ingressHostnames", h),
|
||||
|
||||
@@ -30,8 +30,8 @@ func (h *ingressClassRegexHandler) validate(decoder *admission.Decoder, req admi
|
||||
return utils.ErroredResponse(err)
|
||||
}
|
||||
|
||||
if tenant.Spec.IngressOptions != nil && tenant.Spec.IngressOptions.IngressClasses != nil && len(tenant.Spec.IngressOptions.IngressClasses.Regex) > 0 {
|
||||
if _, err := regexp.Compile(tenant.Spec.IngressOptions.IngressClasses.Regex); err != nil {
|
||||
if tenant.Spec.IngressOptions != nil && tenant.Spec.IngressOptions.AllowedClasses != nil && len(tenant.Spec.IngressOptions.AllowedClasses.Regex) > 0 {
|
||||
if _, err := regexp.Compile(tenant.Spec.IngressOptions.AllowedClasses.Regex); err != nil {
|
||||
response := admission.Denied("unable to compile ingressClasses allowedRegex")
|
||||
|
||||
return &response
|
||||
|
||||
Reference in New Issue
Block a user