Skip to content

Commit aa5e297

Browse files
committed
Merge branch 'main' of github.com:oracle/oci-native-ingress-controller into dependabot/go_modules/golang.org/x/net-0.17.0
2 parents c5ce8ee + 1eded64 commit aa5e297

File tree

17 files changed

+288
-56
lines changed

17 files changed

+288
-56
lines changed

GettingStarted.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,9 @@ This section describes steps to deploy and test OCI-Native-Ingress-Controller.
4646
### Prerequisites
4747
Kubernetes Cluster with Native Pod Networking setup.
4848
Currently supported kubernetes versions are:
49-
- 1.26
5049
- 1.27
5150
- 1.28
51+
- 1.29
5252

5353
We set up the cluster with native pod networking and update the security rules.
5454
The documentation for NPN : [Doc Ref](https://docs.oracle.com/en-us/iaas/Content/ContEng/Concepts/contengpodnetworking_topic-OCI_CNI_plugin.htm).
@@ -135,8 +135,8 @@ Allow <subject> to manage certificate-associations in compartment <compartment-i
135135
Allow <subject> to read certificate-authorities in compartment <compartment-id>
136136
Allow <subject> to manage certificate-authority-associations in compartment <compartment-id>
137137
Allow <subject> to read certificate-authority-bundles in compartment <compartment-id>
138-
ALLOW <subject> native-ingress-controller to read public-ips in tenancy
139-
ALLOW <subject> native-ingress-controller to manage floating-ips in tenancy
138+
ALLOW <subject> to read public-ips in tenancy
139+
ALLOW <subject> to manage floating-ips in tenancy
140140
Allow <subject> to manage waf-family in compartment <compartment-id>
141141
Allow <subject> to read cluster-family in compartment <compartment-id>
142142

deploy/manifests/oci-native-ingress-controller/templates/deployment.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,10 @@ metadata:
1818
name: oci-native-ingress-controller
1919
namespace: native-ingress-controller-system
2020
labels:
21-
helm.sh/chart: oci-native-ingress-controller-1.3.0
21+
helm.sh/chart: oci-native-ingress-controller-1.3.3
2222
app.kubernetes.io/name: oci-native-ingress-controller
2323
app.kubernetes.io/instance: oci-native-ingress-controller
24-
app.kubernetes.io/version: "1.3.0"
24+
app.kubernetes.io/version: "1.3.3"
2525
app.kubernetes.io/managed-by: Helm
2626
spec:
2727
replicas: 1
@@ -51,7 +51,7 @@ spec:
5151
readOnlyRootFilesystem: true
5252
runAsNonRoot: true
5353
runAsUser: 1000
54-
image: "ghcr.io/oracle/oci-native-ingress-controller:v1.3.0"
54+
image: "ghcr.io/oracle/oci-native-ingress-controller:v1.3.3"
5555
imagePullPolicy: Always
5656
args:
5757
- --lease-lock-name=oci-native-ingress-controller

deploy/manifests/oci-native-ingress-controller/templates/rbac.yaml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ kind: ClusterRole
1111
metadata:
1212
name: oci-native-ingress-controller-role
1313
labels:
14-
helm.sh/chart: oci-native-ingress-controller-1.3.0
14+
helm.sh/chart: oci-native-ingress-controller-1.3.3
1515
app.kubernetes.io/name: oci-native-ingress-controller
1616
app.kubernetes.io/instance: oci-native-ingress-controller
17-
app.kubernetes.io/version: "1.3.0"
17+
app.kubernetes.io/version: "1.3.3"
1818
app.kubernetes.io/managed-by: Helm
1919
rules:
2020
- apiGroups: [""]
@@ -48,10 +48,10 @@ kind: ClusterRoleBinding
4848
metadata:
4949
name: oci-native-ingress-controller-rolebinding
5050
labels:
51-
helm.sh/chart: oci-native-ingress-controller-1.3.0
51+
helm.sh/chart: oci-native-ingress-controller-1.3.3
5252
app.kubernetes.io/name: oci-native-ingress-controller
5353
app.kubernetes.io/instance: oci-native-ingress-controller
54-
app.kubernetes.io/version: "1.3.0"
54+
app.kubernetes.io/version: "1.3.3"
5555
app.kubernetes.io/managed-by: Helm
5656
roleRef:
5757
apiGroup: rbac.authorization.k8s.io
@@ -69,10 +69,10 @@ metadata:
6969
name: oci-native-ingress-controller-leader-election-role
7070
namespace: native-ingress-controller-system
7171
labels:
72-
helm.sh/chart: oci-native-ingress-controller-1.3.0
72+
helm.sh/chart: oci-native-ingress-controller-1.3.3
7373
app.kubernetes.io/name: oci-native-ingress-controller
7474
app.kubernetes.io/instance: oci-native-ingress-controller
75-
app.kubernetes.io/version: "1.3.0"
75+
app.kubernetes.io/version: "1.3.3"
7676
app.kubernetes.io/managed-by: Helm
7777
rules:
7878
- apiGroups: ["coordination.k8s.io"]
@@ -90,10 +90,10 @@ metadata:
9090
name: oci-native-ingress-controller-leader-election-rolebinding
9191
namespace: native-ingress-controller-system
9292
labels:
93-
helm.sh/chart: oci-native-ingress-controller-1.3.0
93+
helm.sh/chart: oci-native-ingress-controller-1.3.3
9494
app.kubernetes.io/name: oci-native-ingress-controller
9595
app.kubernetes.io/instance: oci-native-ingress-controller
96-
app.kubernetes.io/version: "1.3.0"
96+
app.kubernetes.io/version: "1.3.3"
9797
app.kubernetes.io/managed-by: Helm
9898
roleRef:
9999
apiGroup: rbac.authorization.k8s.io

deploy/manifests/oci-native-ingress-controller/templates/service.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ metadata:
1212
name: oci-native-ingress-controller
1313
namespace: native-ingress-controller-system
1414
labels:
15-
helm.sh/chart: oci-native-ingress-controller-1.3.0
15+
helm.sh/chart: oci-native-ingress-controller-1.3.3
1616
app.kubernetes.io/name: oci-native-ingress-controller
1717
app.kubernetes.io/instance: oci-native-ingress-controller
18-
app.kubernetes.io/version: "1.3.0"
18+
app.kubernetes.io/version: "1.3.3"
1919
app.kubernetes.io/managed-by: Helm
2020
spec:
2121
type: ClusterIP

deploy/manifests/oci-native-ingress-controller/templates/serviceaccount.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ metadata:
1212
name: oci-native-ingress-controller
1313
namespace: native-ingress-controller-system
1414
labels:
15-
helm.sh/chart: oci-native-ingress-controller-1.3.0
15+
helm.sh/chart: oci-native-ingress-controller-1.3.3
1616
app.kubernetes.io/name: oci-native-ingress-controller
1717
app.kubernetes.io/instance: oci-native-ingress-controller
18-
app.kubernetes.io/version: "1.3.0"
18+
app.kubernetes.io/version: "1.3.3"
1919
app.kubernetes.io/managed-by: Helm

deploy/manifests/oci-native-ingress-controller/templates/webhook.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,10 @@ kind: MutatingWebhookConfiguration
3636
metadata:
3737
name: oci-native-ingress-controller-webhook
3838
labels:
39-
helm.sh/chart: oci-native-ingress-controller-1.3.0
39+
helm.sh/chart: oci-native-ingress-controller-1.3.3
4040
app.kubernetes.io/name: oci-native-ingress-controller
4141
app.kubernetes.io/instance: oci-native-ingress-controller
42-
app.kubernetes.io/version: "1.3.0"
42+
app.kubernetes.io/version: "1.3.3"
4343
app.kubernetes.io/managed-by: Helm
4444
annotations:
4545
cert-manager.io/inject-ca-from: native-ingress-controller-system/oci-native-ingress-controller-webhook-serving-cert

helm/oci-native-ingress-controller/Chart.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ apiVersion: v2
88
name: oci-native-ingress-controller
99
description: OCI Native Ingress Controller
1010
type: application
11-
version: 1.3.0
12-
appVersion: "1.3.0"
11+
version: 1.3.3
12+
appVersion: "1.3.3"
1313

1414
maintainers:
1515
- name: OKE Foundations team

helm/oci-native-ingress-controller/templates/deployment.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,12 @@
44
# Copyright (c) 2023 Oracle America, Inc. and its affiliates.
55
# Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl/
66
#
7+
{{- if not (lookup "v1" "Namespace" "" .Values.deploymentNamespace)}}
78
apiVersion: v1
89
kind: Namespace
910
metadata:
1011
name: {{ .Values.deploymentNamespace }}
12+
{{- end }}
1113
---
1214
apiVersion: apps/v1
1315
kind: Deployment
@@ -69,7 +71,7 @@ spec:
6971
- name: OCI_RESOURCE_PRINCIPAL_VERSION
7072
value: "2.2"
7173
- name: OCI_RESOURCE_PRINCIPAL_REGION
72-
value: "us-phoenix-1"
74+
value: {{ .Values.region }}
7375
- name: OCI_SDK_DEFAULT_RETRY_ENABLED
7476
value: "true"
7577
ports:

helm/oci-native-ingress-controller/values.yaml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ image:
2222
repository: ghcr.io/oracle/oci-native-ingress-controller
2323
pullPolicy: Always
2424
# Overrides the image tag whose default is the chart appVersion.
25-
tag: "v1.3.0"
25+
tag: "v1.3.3"
2626

2727
imagePullSecrets: []
2828
nameOverride: ""
@@ -97,6 +97,8 @@ webhookBindPort: 9443
9797
# Supported auths - instance(default), user
9898
authType: instance
9999
authSecretName: oci-config
100+
# Region where OKE cluster is deployed
101+
region: ""
100102

101103
# objectSelector for webhook
102104
objectSelector:
@@ -110,4 +112,4 @@ objectSelector:
110112

111113
metrics:
112114
backend: prometheus
113-
port: 2223
115+
port: 2223

pkg/controllers/backend/backend.go

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -146,41 +146,38 @@ func (c *Controller) ensureBackends(ingressClass *networkingv1.IngressClass, lbI
146146
for _, ingress := range ingresses {
147147
for _, rule := range ingress.Spec.Rules {
148148
for _, path := range rule.HTTP.Paths {
149-
svcName, svcPort, targetPort, _, err := util.PathToServiceAndTargetPort(c.serviceLister, ingress.Namespace, path)
149+
pSvc, svc, err := util.ExtractServices(path, c.serviceLister, ingress)
150+
if err != nil {
151+
return err
152+
}
153+
svcName, svcPort, targetPort, err := util.PathToServiceAndTargetPort(svc, pSvc, ingress.Namespace, false)
150154
if err != nil {
151155
return err
152156
}
153-
154157
epAddrs, err := util.GetEndpoints(c.endpointLister, ingress.Namespace, svcName)
155158
if err != nil {
156159
return fmt.Errorf("unable to fetch endpoints for %s/%s/%d: %w", ingress.Namespace, svcName, targetPort, err)
157160
}
158-
159161
backends := []ociloadbalancer.BackendDetails{}
160162
for _, epAddr := range epAddrs {
161163
backends = append(backends, util.NewBackend(epAddr.IP, targetPort))
162164
}
163-
164165
backendSetName := util.GenerateBackendSetName(ingress.Namespace, svcName, svcPort)
165166
err = c.client.GetLbClient().UpdateBackends(context.TODO(), lbID, backendSetName, backends)
166167
if err != nil {
167168
return fmt.Errorf("unable to update backends for %s/%s: %w", ingressClass.Name, backendSetName, err)
168169
}
169-
170170
backendSetHealth, err := c.client.GetLbClient().GetBackendSetHealth(context.TODO(), lbID, backendSetName)
171171
if err != nil {
172172
return fmt.Errorf("unable to fetch backendset health: %w", err)
173173
}
174-
175174
for _, epAddr := range epAddrs {
176175
pod, err := c.podLister.Pods(ingress.Namespace).Get(epAddr.TargetRef.Name)
177176
if err != nil {
178177
return fmt.Errorf("failed to fetch pod %s/%s: %w", ingress.Namespace, epAddr.TargetRef.Name, err)
179178
}
180-
181179
backendName := fmt.Sprintf("%s:%d", epAddr.IP, targetPort)
182180
readinessCondition := util.GetPodReadinessCondition(ingress.Name, rule.Host, path)
183-
184181
err = c.ensurePodReadinessCondition(pod, readinessCondition, backendSetHealth, backendName)
185182
if err != nil {
186183
return fmt.Errorf("%w", err)

0 commit comments

Comments
 (0)