HttpGateway
Package: gateway.solo.io
Types:
Source File: github.com/solo-io/gloo/projects/gateway/api/v1/http_gateway.proto
HttpGateway
"virtualServices": []core.solo.io.ResourceRef
"virtualServiceSelector": map<string, string>
"virtualServiceExpressions": .gateway.solo.io.VirtualServiceSelectorExpressions
"virtualServiceNamespaces": []string
"options": .gloo.solo.io.HttpListenerOptions
Field | Type | Description |
---|---|---|
virtualServices |
[]core.solo.io.ResourceRef | Names & namespace refs of the virtual services which contain the actual routes for the gateway. If the list is empty, all virtual services in all namespaces that Gloo watches will apply, with accordance to ssl flag on Gateway above. The default namespace matching behavior can be overridden via virtual_service_namespaces flag below. Only one of virtualServices , virtualServiceExpressions or virtualServiceSelector should be provided. If more than one is provided only one will be checked with priority virtualServiceExpressions, virtualServiceSelector, virtualServices. |
virtualServiceSelector |
map<string, string> |
Select virtual services by their label. If virtual_service_namespaces is provided below, this will apply only to virtual services in the namespaces specified. Only one of virtualServices , virtualServiceExpressions or virtualServiceSelector should be provided. If more than one is provided only one will be checked with priority virtualServiceExpressions, virtualServiceSelector, virtualServices. |
virtualServiceExpressions |
.gateway.solo.io.VirtualServiceSelectorExpressions | Select virtual services using expressions. If virtual_service_namespaces is provided below, this will apply only to virtual services in the namespaces specified. Only one of virtualServices , virtualServiceExpressions or virtualServiceSelector should be provided. If more than one is provided only one will be checked with priority virtualServiceExpressions, virtualServiceSelector, virtualServices. |
virtualServiceNamespaces |
[]string |
Restrict the search by providing a list of valid search namespaces here. Setting ‘*’ will search all namespaces, equivalent to omitting this value. |
options |
.gloo.solo.io.HttpListenerOptions | HTTP Gateway configuration. |
VirtualServiceSelectorExpressions
Expressions to define which virtual services to select Example: expressions:
- key: domain operator: in values: example.com
"expressions": []gateway.solo.io.VirtualServiceSelectorExpressions.Expression
Field | Type | Description |
---|---|---|
expressions |
[]gateway.solo.io.VirtualServiceSelectorExpressions.Expression | Expressions allow for more flexible virtual service label matching, such as equality-based requirements, set-based requirements, or a combination of both. https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#equality-based-requirement. |
Expression
"key": string
"operator": .gateway.solo.io.VirtualServiceSelectorExpressions.Expression.Operator
"values": []string
Field | Type | Description |
---|---|---|
key |
string |
Kubernetes label key, must conform to Kubernetes syntax requirements https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#syntax-and-character-set. |
operator |
.gateway.solo.io.VirtualServiceSelectorExpressions.Expression.Operator | The operator can only be in, notin, =, ==, !=, exists, ! (DoesNotExist), gt (GreaterThan), lt (LessThan). |
values |
[]string |
Operator
Virtual Service Selector expression operator, while the set-based syntax differs from Kubernetes (kubernetes: key: !mylabel
, gloo: key: mylabel, operator: "!"
| kubernetes: key: mylabel
, gloo: key: mylabel, operator: exists
), the functionality remains the same.
Name | Description |
---|---|
Equals |
= |
DoubleEquals |
== |
NotEquals |
!= |
In |
in |
NotIn |
notin |
Exists |
exists |
DoesNotExist |
! |
GreaterThan |
gt |
LessThan |
lt |