Skip to content

Commit c88e329

Browse files
committed
Implement GRPCRoute
1 parent 9537337 commit c88e329

20 files changed

+2628
-28
lines changed

apis/v1alpha2/grpcroute_types.go

Lines changed: 494 additions & 0 deletions
Large diffs are not rendered by default.

apis/v1alpha2/httproute_types.go

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,19 @@ type HTTPRouteSpec struct {
9393
// implementation must raise an 'Accepted' Condition with a status of
9494
// `False` in the corresponding RouteParentStatus.
9595
//
96+
// If a Route (A) of type HTTPRoute or GRPCRoute is attached to a
97+
// Listener and that listener already has another Route (B) of the other
98+
// type attached and the intersection of the hostnames of A and B is
99+
// non-empty, then the implementation MUST accept exactly one of these two
100+
// routes, determined by the following criteria, in order:
101+
//
102+
// * The oldest Route based on creation timestamp.
103+
// * The Route appearing first in alphabetical order by
104+
// "{namespace}/{name}".
105+
//
106+
// The rejected Route MUST raise an 'Accepted' condition with a status of
107+
// 'False' in the corresponding RouteParentStatus.
108+
//
96109
// Support: Core
97110
//
98111
// +optional
@@ -326,14 +339,14 @@ const (
326339
// HTTPHeaderName is the name of an HTTP header.
327340
//
328341
// Valid values include:
329-
//
330342
// * "Authorization"
331343
// * "Set-Cookie"
332344
//
333345
// Invalid values include:
334346
//
335347
// * ":method" - ":" is an invalid character. This means that HTTP/2 pseudo
336348
// headers are not currently supported by this type.
349+
//
337350
// * "/invalid" - "/" is an invalid character
338351
//
339352
// +kubebuilder:validation:MinLength=1

apis/v1alpha2/shared_types.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -333,7 +333,8 @@ type RouteStatus struct {
333333
//
334334
// 1. IPs are not allowed.
335335
// 2. A hostname may be prefixed with a wildcard label (`*.`). The wildcard
336-
// label must appear by itself as the first label.
336+
//
337+
// label must appear by itself as the first label.
337338
//
338339
// Hostname can be "precise" which is a domain name without the terminating
339340
// dot of a network host (e.g. "foo.example.com") or "wildcard", which is a

apis/v1alpha2/zz_generated.deepcopy.go

Lines changed: 269 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

apis/v1alpha2/zz_generated.register.go

Lines changed: 2 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)