Skip to content

Commit 3a23e4c

Browse files
committed
Local namespace and merging
1 parent 170315f commit 3a23e4c

File tree

6 files changed

+72
-21
lines changed

6 files changed

+72
-21
lines changed

apis/v1/gateway_types.go

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -661,10 +661,30 @@ type GatewayInfrastructure struct {
661661
//
662662
// This follows the same semantics as GatewayClass's `parametersRef`, but on a per-Gateway basis
663663
//
664+
// The Gateway's GatewayClass may provide its own `parametersRef`. When both are specified,
665+
// the merging behavior is implementation specific.
666+
// It is generally recommended that GatewayClass provides defaults that can be overridden by a Gateway.
667+
//
664668
// Support: Implementation-specific
665669
//
666670
// +optional
667-
ParametersRef *ParametersReference `json:"parametersRef,omitempty"`
671+
ParametersRef *LocalParametersReference `json:"parametersRef,omitempty"`
672+
}
673+
674+
// LocalParametersReference identifies an API object containing controller-specific
675+
// configuration resource within the namespace.
676+
type LocalParametersReference struct {
677+
// Group is the group of the referent.
678+
Group Group `json:"group"`
679+
680+
// Kind is kind of the referent.
681+
Kind Kind `json:"kind"`
682+
683+
// Name is the name of the referent.
684+
//
685+
// +kubebuilder:validation:MinLength=1
686+
// +kubebuilder:validation:MaxLength=253
687+
Name string `json:"name"`
668688
}
669689

670690
// GatewayConditionType is a type of condition associated with a

apis/v1/gatewayclass_types.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,10 @@ type GatewayClassSpec struct {
9595
// If the referent cannot be found, the GatewayClass's "InvalidParameters"
9696
// status condition will be true.
9797
//
98+
// A Gateway for this GatewayClass may provide its own `parametersRef`. When both are specified,
99+
// the merging behavior is implementation specific.
100+
// It is generally recommended that GatewayClass provides defaults that can be overridden by a Gateway.
101+
//
98102
// Support: Implementation-specific
99103
//
100104
// +optional

apis/v1/zz_generated.deepcopy.go

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

config/crd/experimental/gateway.networking.k8s.io_gatewayclasses.yaml

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

config/crd/experimental/gateway.networking.k8s.io_gateways.yaml

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

config/crd/standard/gateway.networking.k8s.io_gatewayclasses.yaml

Lines changed: 10 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)