You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: apis/v1beta1/gateway_types.go
+14-7Lines changed: 14 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -70,13 +70,20 @@ type GatewaySpec struct {
70
70
// At least one Listener MUST be specified.
71
71
//
72
72
// Each listener in a Gateway must have a unique combination of Hostname,
73
-
// Port, and Protocol. Below combinations are considered Core and MUST be
74
-
// supported:
73
+
// Port, and Protocol.
74
+
//
75
+
// Within the HTTP Conformance Profile, the below combinations of port and
76
+
// protocol are considered Core and MUST be supported:
75
77
//
76
78
// 1. Port: 80, Protocol: HTTP
77
79
// 2. Port: 443, Protocol: HTTPS
78
80
//
79
-
// Port and protocol combinations not in this list are considered Extended.
81
+
// Within the TLS Conformance Profile, the below combinations of port and
82
+
// protocol are considered Core and MUST be supported:
83
+
//
84
+
// 1. Port: 443, Protocol: TLS
85
+
//
86
+
// Port and protocol combinations not listed above are considered Extended.
80
87
//
81
88
// An implementation MAY group Listeners by Port and then collapse each
82
89
// group of Listeners into a single Listener if the implementation
@@ -117,9 +124,9 @@ type GatewaySpec struct {
117
124
// +listMapKey=name
118
125
// +kubebuilder:validation:MinItems=1
119
126
// +kubebuilder:validation:MaxItems=64
120
-
// +kubebuilder:validation:XValidation:message="tls must be set for protocols ['HTTPS', 'TLS']",rule="self.all(l, l.protocol in ['HTTPS', 'TLS'] ? has(l.tls) : true)"
121
-
// +kubebuilder:validation:XValidation:message="tls must be empty for protocols ['HTTP', 'TCP', 'UDP']",rule="self.all(l, l.protocol in ['HTTP', 'TCP', 'UDP'] ? !has(l.tls) : true)"
122
-
// +kubebuilder:validation:XValidation:message="hostname must be empty for protocols ['TCP', 'UDP']",rule="self.all(l, l.protocol in ['TCP', 'UDP'] ? (!has(l.hostname) || l.hostname == '') : true)"
127
+
// +kubebuilder:validation:XValidation:message="tls must be specified for protocols ['HTTPS', 'TLS']",rule="self.all(l, l.protocol in ['HTTPS', 'TLS'] ? has(l.tls) : true)"
128
+
// +kubebuilder:validation:XValidation:message="tls must not be specified for protocols ['HTTP', 'TCP', 'UDP']",rule="self.all(l, l.protocol in ['HTTP', 'TCP', 'UDP'] ? !has(l.tls) : true)"
129
+
// +kubebuilder:validation:XValidation:message="hostname must not be specified for protocols ['TCP', 'UDP']",rule="self.all(l, l.protocol in ['TCP', 'UDP'] ? (!has(l.hostname) || l.hostname == '') : true)"
123
130
// +kubebuilder:validation:XValidation:message="Listener name must be unique within the Gateway",rule="self.all(l1, self.exists_one(l2, l1.name == l2.name))"
124
131
// +kubebuilder:validation:XValidation:message="Combination of port, protocol and hostname must be unique for each listener",rule="self.all(l1, self.exists_one(l2, l1.port == l2.port && l1.protocol == l2.protocol && (has(l1.hostname) && has(l2.hostname) ? l1.hostname == l2.hostname : true)))"
125
132
Listeners []Listener`json:"listeners"`
@@ -301,7 +308,7 @@ const (
301
308
302
309
// GatewayTLSConfig describes a TLS configuration.
303
310
//
304
-
// +kubebuilder:validation:XValidation:message="certificateRefs must be set and not empty when TLSModeType is Terminate",rule="self.mode == 'Terminate' ? size(self.certificateRefs) > 0 : true"
311
+
// +kubebuilder:validation:XValidation:message="certificateRefs must be specified when TLSModeType is Terminate",rule="self.mode == 'Terminate' ? size(self.certificateRefs) > 0 : true"
305
312
typeGatewayTLSConfigstruct {
306
313
// Mode defines the TLS behavior for the TLS session initiated by the client.
Copy file name to clipboardExpand all lines: apis/v1beta1/httproute_types.go
+3-3Lines changed: 3 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -56,7 +56,7 @@ type HTTPRouteList struct {
56
56
typeHTTPRouteSpecstruct {
57
57
CommonRouteSpec`json:",inline"`
58
58
59
-
// Hostnames defines a set of hostname that should match against the HTTP Host
59
+
// Hostnames defines a set of hostnames that should match against the HTTP Host
60
60
// header to select a HTTPRoute used to process the request. Implementations
61
61
// MUST ignore any port value specified in the HTTP Host header while
62
62
// performing a match and (absent of any applicable header modification
@@ -866,9 +866,9 @@ const (
866
866
867
867
// HTTPPathModifier defines configuration for path modifiers.
868
868
//
869
-
// +kubebuilder:validation:XValidation:message="replaceFullPath must be set when type is set to 'ReplaceFullPath'",rule="self.type == 'ReplaceFullPath' ? has(self.replaceFullPath) : true"
869
+
// +kubebuilder:validation:XValidation:message="replaceFullPath must be specified when type is set to 'ReplaceFullPath'",rule="self.type == 'ReplaceFullPath' ? has(self.replaceFullPath) : true"
870
870
// +kubebuilder:validation:XValidation:message="type must be 'ReplaceFullPath' when replaceFullPath is set",rule="has(self.replaceFullPath) ? self.type == 'ReplaceFullPath' : true"
871
-
// +kubebuilder:validation:XValidation:message="replacePrefixMatch must be set when type is set to 'ReplacePrefixMatch'",rule="self.type == 'ReplacePrefixMatch' ? has(self.replacePrefixMatch) : true"
871
+
// +kubebuilder:validation:XValidation:message="replacePrefixMatch must be specified when type is set to 'ReplacePrefixMatch'",rule="self.type == 'ReplacePrefixMatch' ? has(self.replacePrefixMatch) : true"
872
872
// +kubebuilder:validation:XValidation:message="type must be 'ReplacePrefixMatch' when replacePrefixMatch is set",rule="has(self.replacePrefixMatch) ? self.type == 'ReplacePrefixMatch' : true"
873
873
typeHTTPPathModifierstruct {
874
874
// Type defines the type of path modifier. Additional types may be
0 commit comments