Skip to content

Commit 81a6a7e

Browse files
✨ (helm/v2-alpha): Make webhook and metrics ports configurable
- Add configurable webhook.port (default: 9443) and metrics.port (default: 8443) in values.yaml - Add comprehensive unit tests for port configuration with default and custom values
1 parent c580bca commit 81a6a7e

File tree

22 files changed

+767
-34
lines changed

22 files changed

+767
-34
lines changed

docs/book/src/cronjob-tutorial/testdata/project/dist/chart/templates/manager/manager.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ spec:
2424
containers:
2525
- args:
2626
{{- if .Values.metrics.enable }}
27-
- --metrics-bind-address=:8443
27+
- --metrics-bind-address=:{{ .Values.metrics.port }}
2828
{{- else }}
2929
# Bind to :0 to disable the controller-runtime managed metrics server
3030
- --metrics-bind-address=0
@@ -51,7 +51,7 @@ spec:
5151
periodSeconds: 20
5252
name: manager
5353
ports:
54-
- containerPort: 9443
54+
- containerPort: {{ .Values.webhook.port }}
5555
name: webhook-server
5656
protocol: TCP
5757
readinessProbe:

docs/book/src/cronjob-tutorial/testdata/project/dist/chart/templates/metrics/controller-manager-metrics-service.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ metadata:
1111
spec:
1212
ports:
1313
- name: https
14-
port: 8443
14+
port: {{ .Values.metrics.port }}
1515
protocol: TCP
16-
targetPort: 8443
16+
targetPort: {{ .Values.metrics.port }}
1717
selector:
1818
app.kubernetes.io/name: project
1919
control-plane: controller-manager

docs/book/src/cronjob-tutorial/testdata/project/dist/chart/templates/webhook/webhook-service.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ spec:
1010
ports:
1111
- port: 443
1212
protocol: TCP
13-
targetPort: 9443
13+
targetPort: {{ .Values.webhook.port }}
1414
selector:
1515
app.kubernetes.io/name: project
1616
control-plane: controller-manager

docs/book/src/cronjob-tutorial/testdata/project/dist/chart/values.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,12 +56,18 @@ crd:
5656
# Enable to expose /metrics endpoint with RBAC protection.
5757
metrics:
5858
enable: true
59+
port: 8443 # Metrics server port
5960

6061
# Cert-manager integration for TLS certificates.
6162
# Required for webhook certificates and metrics endpoint certificates.
6263
certManager:
6364
enable: true
6465

66+
# Webhook server configuration
67+
webhook:
68+
enable: true
69+
port: 9443 # Webhook server port
70+
6571
# Prometheus ServiceMonitor for metrics scraping.
6672
# Requires prometheus-operator to be installed in the cluster.
6773
prometheus:

docs/book/src/getting-started/testdata/project/dist/chart/templates/manager/manager.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ spec:
2424
containers:
2525
- args:
2626
{{- if .Values.metrics.enable }}
27-
- --metrics-bind-address=:8443
27+
- --metrics-bind-address=:{{ .Values.metrics.port }}
2828
{{- else }}
2929
# Bind to :0 to disable the controller-runtime managed metrics server
3030
- --metrics-bind-address=0

docs/book/src/getting-started/testdata/project/dist/chart/templates/metrics/controller-manager-metrics-service.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ metadata:
1111
spec:
1212
ports:
1313
- name: https
14-
port: 8443
14+
port: {{ .Values.metrics.port }}
1515
protocol: TCP
16-
targetPort: 8443
16+
targetPort: {{ .Values.metrics.port }}
1717
selector:
1818
app.kubernetes.io/name: project
1919
control-plane: controller-manager

docs/book/src/getting-started/testdata/project/dist/chart/values.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,12 @@ crd:
5656
# Enable to expose /metrics endpoint with RBAC protection.
5757
metrics:
5858
enable: true
59+
port: 8443 # Metrics server port
60+
61+
# Cert-manager integration for TLS certificates.
62+
# Required for webhook certificates and metrics endpoint certificates.
63+
certManager:
64+
enable: false
5965

6066
# Prometheus ServiceMonitor for metrics scraping.
6167
# Requires prometheus-operator to be installed in the cluster.

docs/book/src/multiversion-tutorial/testdata/project/dist/chart/templates/manager/manager.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ spec:
2424
containers:
2525
- args:
2626
{{- if .Values.metrics.enable }}
27-
- --metrics-bind-address=:8443
27+
- --metrics-bind-address=:{{ .Values.metrics.port }}
2828
{{- else }}
2929
# Bind to :0 to disable the controller-runtime managed metrics server
3030
- --metrics-bind-address=0
@@ -51,7 +51,7 @@ spec:
5151
periodSeconds: 20
5252
name: manager
5353
ports:
54-
- containerPort: 9443
54+
- containerPort: {{ .Values.webhook.port }}
5555
name: webhook-server
5656
protocol: TCP
5757
readinessProbe:

docs/book/src/multiversion-tutorial/testdata/project/dist/chart/templates/metrics/controller-manager-metrics-service.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ metadata:
1111
spec:
1212
ports:
1313
- name: https
14-
port: 8443
14+
port: {{ .Values.metrics.port }}
1515
protocol: TCP
16-
targetPort: 8443
16+
targetPort: {{ .Values.metrics.port }}
1717
selector:
1818
app.kubernetes.io/name: project
1919
control-plane: controller-manager

docs/book/src/multiversion-tutorial/testdata/project/dist/chart/templates/webhook/webhook-service.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ spec:
1010
ports:
1111
- port: 443
1212
protocol: TCP
13-
targetPort: 9443
13+
targetPort: {{ .Values.webhook.port }}
1414
selector:
1515
app.kubernetes.io/name: project
1616
control-plane: controller-manager

0 commit comments

Comments
 (0)