Skip to content

Commit d7f9142

Browse files
author
Kate Osborn
committed
Watch UpstreamSettingsPolicies and translate into datplane config
1 parent fe8b4dc commit d7f9142

File tree

29 files changed

+1991
-197
lines changed

29 files changed

+1991
-197
lines changed

apis/v1alpha1/policy_methods.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,15 @@ func (p *ObservabilityPolicy) GetPolicyStatus() v1alpha2.PolicyStatus {
3131
func (p *ObservabilityPolicy) SetPolicyStatus(status v1alpha2.PolicyStatus) {
3232
p.Status = status
3333
}
34+
35+
func (p *UpstreamSettingsPolicy) GetTargetRefs() []v1alpha2.LocalPolicyTargetReference {
36+
return p.Spec.TargetRefs
37+
}
38+
39+
func (p *UpstreamSettingsPolicy) GetPolicyStatus() v1alpha2.PolicyStatus {
40+
return p.Status
41+
}
42+
43+
func (p *UpstreamSettingsPolicy) SetPolicyStatus(status v1alpha2.PolicyStatus) {
44+
p.Status = status
45+
}

charts/nginx-gateway-fabric/templates/clusterrole.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@ rules:
104104
- nginxproxies
105105
- clientsettingspolicies
106106
- observabilitypolicies
107+
- upstreamsettingspolicies
107108
{{- if .Values.nginxGateway.snippetsFilters.enable }}
108109
- snippetsfilters
109110
{{- end }}
@@ -116,6 +117,7 @@ rules:
116117
- nginxgateways/status
117118
- clientsettingspolicies/status
118119
- observabilitypolicies/status
120+
- upstreamsettingspolicies/status
119121
{{- if .Values.nginxGateway.snippetsFilters.enable }}
120122
- snippetsfilters/status
121123
{{- end }}

config/crd/bases/gateway.nginx.org_upstreamsettingspolicies.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
33
kind: CustomResourceDefinition
44
metadata:
55
annotations:
6-
controller-gen.kubebuilder.io/version: v0.16.2
6+
controller-gen.kubebuilder.io/version: v0.16.5
77
labels:
88
gateway.networking.k8s.io/policy: direct
99
name: upstreamsettingspolicies.gateway.nginx.org
@@ -76,13 +76,13 @@ spec:
7676
Time defines the maximum time during which requests can be processed through one keep-alive connection.
7777
After this time is reached, the connection is closed following the subsequent request processing.
7878
Directive: https://nginx.org/en/docs/http/ngx_http_upstream_module.html#keepalive_time
79-
pattern: ^\d{1,4}(ms|s)?$
79+
pattern: ^[0-9]{1,4}(ms|s|m|h)?$
8080
type: string
8181
timeout:
8282
description: |-
8383
Timeout defines the keep-alive timeout for upstreams.
8484
Directive: https://nginx.org/en/docs/http/ngx_http_upstream_module.html#keepalive_timeout
85-
pattern: ^\d{1,4}(ms|s)?$
85+
pattern: ^[0-9]{1,4}(ms|s|m|h)?$
8686
type: string
8787
type: object
8888
targetRefs:

config/crd/kustomization.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,5 @@ resources:
55
- bases/gateway.nginx.org_nginxgateways.yaml
66
- bases/gateway.nginx.org_nginxproxies.yaml
77
- bases/gateway.nginx.org_observabilitypolicies.yaml
8+
- bases/gateway.nginx.org_snippetsfilters.yaml
9+
- bases/gateway.nginx.org_upstreamsettingspolicies.yaml

0 commit comments

Comments
 (0)