gloo_validation.proto

Package: gloo.solo.io

Types:

Source File: github.com/solo-io/gloo/projects/gloo/api/grpc/validation/gloo_validation.proto

GlooValidationServiceRequest

"proxy": .gloo.solo.io.Proxy
"modifiedResources": .gloo.solo.io.ModifiedResources
"deletedResources": .gloo.solo.io.DeletedResources

Field Type Description
proxy .gloo.solo.io.Proxy Optional. If a proxy is provided in the request, the response will contain only the report for that proxy. If no proxy is provided, the response will contain a report for each proxy in the Gloo API snapshot.
modifiedResources .gloo.solo.io.ModifiedResources Resources to be created or modified. Only one of modifiedResources or deletedResources can be set.
deletedResources .gloo.solo.io.DeletedResources Resources to be deleted. Only one of deletedResources or modifiedResources can be set.

GlooValidationServiceResponse

"validationReports": []gloo.solo.io.ValidationReport

Field Type Description
validationReports []gloo.solo.io.ValidationReport This list contains a validation report for each proxy that was translated and validated with the proposed Gloo API snapshot.

ModifiedResources

"upstreams": []gloo.solo.io.Upstream

Field Type Description
upstreams []gloo.solo.io.Upstream Optional, a list of the upstreams to create or modify.

DeletedResources

"upstreamRefs": []core.solo.io.ResourceRef
"secretRefs": []core.solo.io.ResourceRef

Field Type Description
upstreamRefs []core.solo.io.ResourceRef Optional, a list of the upstreams to delete.
secretRefs []core.solo.io.ResourceRef Optional, a list of the secrets to delete.

ValidationReport

A validation report represents the warnings and errors that produced during a single translation loop of a proxy.

"proxyReport": .gloo.solo.io.ProxyReport
"upstreamReports": []gloo.solo.io.ResourceReport
"proxy": .gloo.solo.io.Proxy

Field Type Description
proxyReport .gloo.solo.io.ProxyReport The report for this proxy, including any warnings or errors in its sub-resources.
upstreamReports []gloo.solo.io.ResourceReport The reports for all upstreams that were translated with this proxy.
proxy .gloo.solo.io.Proxy The proxy for this translation loop.

ResourceReport

"resourceRef": .core.solo.io.ResourceRef
"warnings": []string
"errors": []string

Field Type Description
resourceRef .core.solo.io.ResourceRef A way to refer to resources in different namespaces by including the name and namespace of the resource in this resourceRef.
warnings []string The warnings that are returned for the resource. Warnings do not necessarily prevent an operation from happening, but might require action.
errors []string The errors that are returned for the resource. You cannot modify the resource until the errors are resolved. For help troubleshooting, see the Debug guide.

NotifyOnResyncRequest


Field Type Description

NotifyOnResyncResponse


Field Type Description

ProxyReport

The Proxy Report should contain one report for each sub-resource of the Proxy E.g., each listener will have a corresponding report. Within each listener report is a route report corresponding to each route on the listener.

If the report contains no errors, the (sub-)resource is valid.

"listenerReports": []gloo.solo.io.ListenerReport

Field Type Description
listenerReports []gloo.solo.io.ListenerReport

ListenerReport

"errors": []gloo.solo.io.ListenerReport.Error
"httpListenerReport": .gloo.solo.io.HttpListenerReport
"tcpListenerReport": .gloo.solo.io.TcpListenerReport
"hybridListenerReport": .gloo.solo.io.HybridListenerReport

Field Type Description
errors []gloo.solo.io.ListenerReport.Error errors on top-level config of the listener.
httpListenerReport .gloo.solo.io.HttpListenerReport report for the http listener. Only one of httpListenerReport, tcpListenerReport, or hybridListenerReport can be set.
tcpListenerReport .gloo.solo.io.TcpListenerReport report for the tcp listener. Only one of tcpListenerReport, httpListenerReport, or hybridListenerReport can be set.
hybridListenerReport .gloo.solo.io.HybridListenerReport report for the hybrid listener. Only one of hybridListenerReport, httpListenerReport, or tcpListenerReport can be set.

Error

error types for top-level listener config

"type": .gloo.solo.io.ListenerReport.Error.Type
"reason": string

Field Type Description
type .gloo.solo.io.ListenerReport.Error.Type the type of the error.
reason string any extra info as a string.

Type

Name Description
NameNotUniqueError
BindPortNotUniqueError
SSLConfigError
ProcessingError

HttpListenerReport

"errors": []gloo.solo.io.HttpListenerReport.Error
"virtualHostReports": []gloo.solo.io.VirtualHostReport

Field Type Description
errors []gloo.solo.io.HttpListenerReport.Error
virtualHostReports []gloo.solo.io.VirtualHostReport report for nested virtual hosts.

Error

error types for top-level http listener config

"type": .gloo.solo.io.HttpListenerReport.Error.Type
"reason": string

Field Type Description
type .gloo.solo.io.HttpListenerReport.Error.Type the type of the error.
reason string any extra info as a string.

Type

Name Description
ProcessingError

VirtualHostReport

"errors": []gloo.solo.io.VirtualHostReport.Error
"routeReports": []gloo.solo.io.RouteReport

Field Type Description
errors []gloo.solo.io.VirtualHostReport.Error errors on top-level config of the virtual host.
routeReports []gloo.solo.io.RouteReport

Error

error types for top-level virtual host config

"type": .gloo.solo.io.VirtualHostReport.Error.Type
"reason": string

Field Type Description
type .gloo.solo.io.VirtualHostReport.Error.Type the type of the error.
reason string any extra info as a string.

Type

Name Description
NameNotUniqueError
DomainsNotUniqueError
ProcessingError
EmptyDomainError

RouteReport

"errors": []gloo.solo.io.RouteReport.Error
"warnings": []gloo.solo.io.RouteReport.Warning

Field Type Description
errors []gloo.solo.io.RouteReport.Error errors on the config of the route.
warnings []gloo.solo.io.RouteReport.Warning warnings on the config of the route.

Error

error types for the given route config

"type": .gloo.solo.io.RouteReport.Error.Type
"reason": string

Field Type Description
type .gloo.solo.io.RouteReport.Error.Type the type of the error.
reason string any extra info as a string.

Type

Name Description
InvalidMatcherError
ProcessingError

Warning

warning types for the given route config

"type": .gloo.solo.io.RouteReport.Warning.Type
"reason": string

Field Type Description
type .gloo.solo.io.RouteReport.Warning.Type the type of the error.
reason string any extra info as a string.

Type

Name Description
InvalidDestinationWarning

TcpListenerReport

"errors": []gloo.solo.io.TcpListenerReport.Error
"tcpHostReports": []gloo.solo.io.TcpHostReport

Field Type Description
errors []gloo.solo.io.TcpListenerReport.Error errors on top-level config of the listener.
tcpHostReports []gloo.solo.io.TcpHostReport

Error

error types for top-level tcp listener config

"type": .gloo.solo.io.TcpListenerReport.Error.Type
"reason": string

Field Type Description
type .gloo.solo.io.TcpListenerReport.Error.Type the type of the error.
reason string any extra info as a string.

Type

Name Description
NameNotUniqueError
BindPortNotUniqueError
SSLConfigError
ProcessingError

TcpHostReport

"errors": []gloo.solo.io.TcpHostReport.Error

Field Type Description
errors []gloo.solo.io.TcpHostReport.Error errors on the tcp host.

Error

error types for tcp host config

"type": .gloo.solo.io.TcpHostReport.Error.Type
"reason": string

Field Type Description
type .gloo.solo.io.TcpHostReport.Error.Type the type of the error.
reason string any extra info as a string.

Type

Name Description
NameNotUniqueError
InvalidDestinationError
ProcessingError

HybridListenerReport

"matchedListenerReports": map<string, .gloo.solo.io.MatchedListenerReport>

Field Type Description
matchedListenerReports map<string, .gloo.solo.io.MatchedListenerReport> map key should uniquely identify MatchedListenerReport by matcher.

MatchedListenerReport

"httpListenerReport": .gloo.solo.io.HttpListenerReport
"tcpListenerReport": .gloo.solo.io.TcpListenerReport

Field Type Description
httpListenerReport .gloo.solo.io.HttpListenerReport Only one of httpListenerReport or tcpListenerReport can be set.
tcpListenerReport .gloo.solo.io.TcpListenerReport Only one of tcpListenerReport or httpListenerReport can be set.