Skip to content

Commit

Permalink
upgrade to Gateway API v1alpha2 (#4047)
Browse files Browse the repository at this point in the history
Updates Contour to support Gateway API
v1alpha2 exclusively. Support for v1alpha1
is removed. Note that some new v1alpha2
functionality still remains to be implemented,
including ReferencePolicy.

Closes #3954.

Signed-off-by: Steve Kriss <krisss@vmware.com>
  • Loading branch information
skriss authored Oct 15, 2021
1 parent ff4d044 commit bbbef2c
Show file tree
Hide file tree
Showing 52 changed files with 7,600 additions and 8,067 deletions.
10 changes: 10 additions & 0 deletions changelogs/unreleased/4047-skriss-major.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
## Gateway API v1alpha2 support

Contour now exclusively supports Gateway API v1alpha2, the latest available version.
This version of Gateway API has a number of breaking changes, which are detailed in [the Gateway API changelog](https://github.com/kubernetes-sigs/gateway-api/blob/master/CHANGELOG.md).
Contour currently supports a single `GatewayClass` and associated `Gateway`, and `HTTPRoutes` and `TLSRoutes` that attach to the `Gateway`. `TCPRoute` and `UDPRoute` are **not** supported.
As of this writing, `ReferencePolicy`, a new v1alpha2 resource, has not yet been implemented in Contour, but we will look to add support for it shortly.
For a list of other functionality that remains to be implemented, see Contour's [area/gateway-api](https://github.com/projectcontour/contour/labels/area%2Fgateway-api) label.

As part of this change, support for Gateway API v1alpha1 has been dropped, and any v1alpha1 resources **will not** be automatically converted to v1alpha2 resources because the API has moved to a different API group (from `networking.x-k8s.io` to `gateway.networking.k8s.io`).

10 changes: 5 additions & 5 deletions examples/contour/01-crds.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.6.0
controller-gen.kubebuilder.io/version: v0.6.2
creationTimestamp: null
name: contourconfigurations.projectcontour.io
spec:
Expand Down Expand Up @@ -910,7 +910,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.6.0
controller-gen.kubebuilder.io/version: v0.6.2
creationTimestamp: null
name: contourdeployments.projectcontour.io
spec:
Expand Down Expand Up @@ -1835,7 +1835,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.6.0
controller-gen.kubebuilder.io/version: v0.6.2
creationTimestamp: null
name: extensionservices.projectcontour.io
spec:
Expand Down Expand Up @@ -2236,7 +2236,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.6.0
controller-gen.kubebuilder.io/version: v0.6.2
creationTimestamp: null
name: httpproxies.projectcontour.io
spec:
Expand Down Expand Up @@ -4197,7 +4197,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.6.0
controller-gen.kubebuilder.io/version: v0.6.2
creationTimestamp: null
name: tlscertificatedelegations.projectcontour.io
spec:
Expand Down
48 changes: 24 additions & 24 deletions examples/contour/02-role-contour.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -50,52 +50,52 @@ rules:
- list
- watch
- apiGroups:
- networking.k8s.io
- gateway.networking.k8s.io
resources:
- ingressclasses
- gatewayclasses
- gateways
- httproutes
- tcproutes
- tlsroutes
- udproutes
verbs:
- get
- list
- watch
- apiGroups:
- networking.k8s.io
- gateway.networking.k8s.io
resources:
- ingresses
- gatewayclasses/status
- gateways/status
- httproutes/status
- tcproutes/status
- tlsroutes/status
- udproutes/status
verbs:
- get
- list
- watch
- update
- apiGroups:
- networking.k8s.io
resources:
- ingresses/status
- ingressclasses
verbs:
- create
- get
- update
- list
- watch
- apiGroups:
- networking.x-k8s.io
- networking.k8s.io
resources:
- gatewayclasses
- gateways
- httproutes
- tcproutes
- tlsroutes
- udproutes
- ingresses
verbs:
- get
- list
- watch
- apiGroups:
- networking.x-k8s.io
- networking.k8s.io
resources:
- gatewayclasses/status
- gateways/status
- httproutes/status
- tcproutes/status
- tlsroutes/status
- udproutes/status
- ingresses/status
verbs:
- create
- get
- update
- apiGroups:
- projectcontour.io
Expand Down
Loading

0 comments on commit bbbef2c

Please sign in to comment.