Skip to content

Commit

Permalink
Merge pull request #645 from laurafitzgerald/gh-630
Browse files Browse the repository at this point in the history
Gh 630 gateway-api v1.0.0
  • Loading branch information
openshift-merge-bot[bot] committed Nov 16, 2023
2 parents 45bbc78 + 1e039c7 commit f93bb55
Show file tree
Hide file tree
Showing 89 changed files with 4,174 additions and 1,681 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/ci-e2e.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ jobs:
ref: ${{ github.event.pull_request.head.sha || github.ref }}
- uses: actions/setup-go@v4
with:
go-version: "1.20.x"
go-version: "1.21.x"
- name: Create controller-config.env
run: |
echo "AWS_DNS_PUBLIC_ZONE_ID=${{ secrets.E2E_AWS_DNS_PUBLIC_ZONE_ID }}" >> controller-config.env
Expand Down
22 changes: 11 additions & 11 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
- uses: actions/checkout@v2
- uses: actions/setup-go@v4
with:
go-version: v1.20.x
go-version: v1.21.x
- uses: golangci/golangci-lint-action@v2
with:
version: v1.53.3
Expand All @@ -41,10 +41,10 @@ jobs:
name: Verify code
runs-on: ubuntu-latest
steps:
- name: Set up Go 1.20.x
- name: Set up Go 1.21.x
uses: actions/setup-go@v4
with:
go-version: 1.20.x
go-version: 1.21.x
id: go
- name: Check out code
uses: actions/checkout@v2
Expand All @@ -55,10 +55,10 @@ jobs:
name: Verify manifests
runs-on: ubuntu-latest
steps:
- name: Set up Go 1.20.x
- name: Set up Go 1.21.x
uses: actions/setup-go@v4
with:
go-version: 1.20.x
go-version: 1.21.x
id: go
- name: Check out code
uses: actions/checkout@v2
Expand All @@ -69,10 +69,10 @@ jobs:
name: Verify bundle
runs-on: ubuntu-latest
steps:
- name: Set up Go 1.20.x
- name: Set up Go 1.21.x
uses: actions/setup-go@v2
with:
go-version: 1.20.x
go-version: 1.21.x
id: go
- name: Check out code
uses: actions/checkout@v2
Expand All @@ -83,10 +83,10 @@ jobs:
name: Verify imports
runs-on: ubuntu-latest
steps:
- name: Set up Go 1.20.x
- name: Set up Go 1.21.x
uses: actions/setup-go@v4
with:
go-version: 1.20.x
go-version: 1.21.x
id: go
- name: Check out code
uses: actions/checkout@v2
Expand All @@ -100,7 +100,7 @@ jobs:
- uses: actions/checkout@v2
- uses: actions/setup-go@v4
with:
go-version: v1.20
go-version: v1.21
- name: Run suite
run: |
make test-integration
Expand All @@ -111,7 +111,7 @@ jobs:
- uses: actions/checkout@v2
- uses: actions/setup-go@v4
with:
go-version: v1.20
go-version: v1.21
- name: Run suite
run: |
make test-unit
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Build the manager binary
FROM golang:1.20 as builder
FROM golang:1.21 as builder
ARG TARGETOS
ARG TARGETARCH

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ When deploying the multicluster gateway controller using the make targets, the f
* openssl>=3
* On macOS a later version is available with `brew install openssl`. You'll need to update your PATH as macOS provides an older version via libressl as well
* On Fedora use `dnf install openssl`
* go >= 1.20
* go >= 1.21

### 1. Running the controller in the cluster:
1. Set up your DNS Provider by following these [steps](providers/providers.md)
Expand Down
11 changes: 6 additions & 5 deletions bundle/manifests/kuadrant.io_dnspolicies.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ spec:
properties:
healthCheck:
description: HealthCheckSpec configures health checks in the DNS provider.
By default this health check will be applied to each unique DNS
By default, this health check will be applied to each unique DNS
A Record for the listeners assigned to the target gateway
properties:
additionalHeadersRef:
Expand Down Expand Up @@ -164,10 +164,11 @@ spec:
type: string
targetRef:
description: PolicyTargetReference identifies an API object to apply
policy to. This should be used as part of Policy resources that
can target Gateway API resources. For more information on how this
policy attachment model works, and a sample Policy resource, refer
to the policy attachment documentation for Gateway API.
a direct or inherited policy to. This should be used as part of
Policy resources that can target Gateway API resources. For more
information on how this policy attachment model works, and a sample
Policy resource, refer to the policy attachment documentation for
Gateway API.
properties:
group:
description: Group is the group of the target resource.
Expand Down
9 changes: 5 additions & 4 deletions bundle/manifests/kuadrant.io_tlspolicies.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -140,10 +140,11 @@ spec:
type: integer
targetRef:
description: PolicyTargetReference identifies an API object to apply
policy to. This should be used as part of Policy resources that
can target Gateway API resources. For more information on how this
policy attachment model works, and a sample Policy resource, refer
to the policy attachment documentation for Gateway API.
a direct or inherited policy to. This should be used as part of
Policy resources that can target Gateway API resources. For more
information on how this policy attachment model works, and a sample
Policy resource, refer to the policy attachment documentation for
Gateway API.
properties:
group:
description: Group is the group of the target resource.
Expand Down
4 changes: 2 additions & 2 deletions cmd/gateway_controller/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ import (
"sigs.k8s.io/controller-runtime/pkg/log/zap"
metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
"sigs.k8s.io/controller-runtime/pkg/webhook"
gatewayapi "sigs.k8s.io/gateway-api/apis/v1beta1"
gatewayapiv1 "sigs.k8s.io/gateway-api/apis/v1"

"github.com/Kuadrant/multicluster-gateway-controller/pkg/apis/v1alpha1"
"github.com/Kuadrant/multicluster-gateway-controller/pkg/controllers/gateway"
Expand All @@ -57,7 +57,7 @@ func init() {

utilruntime.Must(v1alpha1.AddToScheme(scheme.Scheme))
utilruntime.Must(certmanv1.AddToScheme(scheme.Scheme))
utilruntime.Must(gatewayapi.AddToScheme(scheme.Scheme))
utilruntime.Must(gatewayapiv1.AddToScheme(scheme.Scheme))
utilruntime.Must(clusterv1beta2.AddToScheme(scheme.Scheme))
utilruntime.Must(workv1.AddToScheme(scheme.Scheme))
utilruntime.Must(clusterv1.AddToScheme(scheme.Scheme))
Expand Down
4 changes: 2 additions & 2 deletions cmd/policy_controller/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ import (
"sigs.k8s.io/controller-runtime/pkg/log/zap"
metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
"sigs.k8s.io/controller-runtime/pkg/webhook"
gatewayapi "sigs.k8s.io/gateway-api/apis/v1beta1"
gatewayapiv1 "sigs.k8s.io/gateway-api/apis/v1"

"github.com/kuadrant/kuadrant-operator/pkg/reconcilers"

Expand All @@ -50,7 +50,7 @@ var (

func init() {
utilruntime.Must(clientgoscheme.AddToScheme(scheme.Scheme))
utilruntime.Must(gatewayapi.AddToScheme(scheme.Scheme))
utilruntime.Must(gatewayapiv1.AddToScheme(scheme.Scheme))
utilruntime.Must(v1alpha1.AddToScheme(scheme.Scheme))
utilruntime.Must(certmanv1.AddToScheme(scheme.Scheme))
//this is need for now but will be removed soon
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,10 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
api-approved.kubernetes.io: https://github.com/kubernetes-sigs/gateway-api/pull/1538
gateway.networking.k8s.io/bundle-version: v0.6.2
api-approved.kubernetes.io: https://github.com/kubernetes-sigs/gateway-api/pull/2466
gateway.networking.k8s.io/bundle-version: v1.0.0
gateway.networking.k8s.io/channel: standard
creationTimestamp: null
name: gatewayclasses.gateway.networking.k8s.io
spec:
group: gateway.networking.k8s.io
Expand Down Expand Up @@ -33,10 +34,7 @@ spec:
name: Description
priority: 1
type: string
deprecated: true
deprecationWarning: The v1alpha2 version of GatewayClass has been deprecated and
will be removed in a future release of the API. Please upgrade to v1beta1.
name: v1alpha2
name: v1
schema:
openAPIV3Schema:
description: "GatewayClass describes a class of Gateways available to the
Expand All @@ -48,7 +46,7 @@ spec:
to GatewayClass or associated parameters. If implementations choose to propagate
GatewayClass changes to existing Gateways, that MUST be clearly documented
by the implementation. \n Whenever one or more Gateways are using a GatewayClass,
implementations MUST add the `gateway-exists-finalizer.gateway.networking.k8s.io`
implementations SHOULD add the `gateway-exists-finalizer.gateway.networking.k8s.io`
finalizer on the associated GatewayClass. This ensures that a GatewayClass
associated with a Gateway is not deleted while in use. \n GatewayClass is
a Cluster level resource."
Expand Down Expand Up @@ -77,6 +75,9 @@ spec:
minLength: 1
pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*\/[A-Za-z0-9\/\-._~%!$&'()*+,;=:]+$
type: string
x-kubernetes-validations:
- message: Value is immutable
rule: self == oldSelf
description:
description: Description helps describe a GatewayClass with more details.
maxLength: 64
Expand Down Expand Up @@ -131,7 +132,9 @@ spec:
reason: Waiting
status: Unknown
type: Accepted
description: Status defines the current state of GatewayClass.
description: "Status defines the current state of GatewayClass. \n Implementations
MUST populate status on all GatewayClass resources which specify their
controller name."
properties:
conditions:
default:
Expand All @@ -147,14 +150,12 @@ spec:
description: "Condition contains details for one aspect of the current
state of this API Resource. --- This struct is intended for direct
use as an array at the field path .status.conditions. For example,
\n \ttype FooStatus struct{ \t // Represents the observations
of a foo's current state. \t // Known .status.conditions.type
are: \"Available\", \"Progressing\", and \"Degraded\" \t //
+patchMergeKey=type \t // +patchStrategy=merge \t // +listType=map
\t // +listMapKey=type \t Conditions []metav1.Condition
\n type FooStatus struct{ // Represents the observations of a
foo's current state. // Known .status.conditions.type are: \"Available\",
\"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
// +listType=map // +listMapKey=type Conditions []metav1.Condition
`json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
protobuf:\"bytes,1,rep,name=conditions\"` \n \t // other fields
\t}"
protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
properties:
lastTransitionTime:
description: lastTransitionTime is the last time the condition
Expand Down Expand Up @@ -250,7 +251,7 @@ spec:
to GatewayClass or associated parameters. If implementations choose to propagate
GatewayClass changes to existing Gateways, that MUST be clearly documented
by the implementation. \n Whenever one or more Gateways are using a GatewayClass,
implementations MUST add the `gateway-exists-finalizer.gateway.networking.k8s.io`
implementations SHOULD add the `gateway-exists-finalizer.gateway.networking.k8s.io`
finalizer on the associated GatewayClass. This ensures that a GatewayClass
associated with a Gateway is not deleted while in use. \n GatewayClass is
a Cluster level resource."
Expand Down Expand Up @@ -279,6 +280,9 @@ spec:
minLength: 1
pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*\/[A-Za-z0-9\/\-._~%!$&'()*+,;=:]+$
type: string
x-kubernetes-validations:
- message: Value is immutable
rule: self == oldSelf
description:
description: Description helps describe a GatewayClass with more details.
maxLength: 64
Expand Down Expand Up @@ -333,7 +337,9 @@ spec:
reason: Waiting
status: Unknown
type: Accepted
description: Status defines the current state of GatewayClass.
description: "Status defines the current state of GatewayClass. \n Implementations
MUST populate status on all GatewayClass resources which specify their
controller name."
properties:
conditions:
default:
Expand All @@ -349,14 +355,12 @@ spec:
description: "Condition contains details for one aspect of the current
state of this API Resource. --- This struct is intended for direct
use as an array at the field path .status.conditions. For example,
\n \ttype FooStatus struct{ \t // Represents the observations
of a foo's current state. \t // Known .status.conditions.type
are: \"Available\", \"Progressing\", and \"Degraded\" \t //
+patchMergeKey=type \t // +patchStrategy=merge \t // +listType=map
\t // +listMapKey=type \t Conditions []metav1.Condition
\n type FooStatus struct{ // Represents the observations of a
foo's current state. // Known .status.conditions.type are: \"Available\",
\"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
// +listType=map // +listMapKey=type Conditions []metav1.Condition
`json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
protobuf:\"bytes,1,rep,name=conditions\"` \n \t // other fields
\t}"
protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
properties:
lastTransitionTime:
description: lastTransitionTime is the last time the condition
Expand Down Expand Up @@ -430,5 +434,5 @@ status:
acceptedNames:
kind: ""
plural: ""
conditions: []
storedVersions: []
conditions: null
storedVersions: null
Loading

0 comments on commit f93bb55

Please sign in to comment.