feat: remove Kubernetes Ingress support and update related documentation

This commit is contained in:
Simon Larsen
2025-11-21 18:40:47 +00:00
parent 58a955baf7
commit f836369c01
6 changed files with 11 additions and 110 deletions

View File

@@ -76,7 +76,7 @@ The following table lists the configurable parameters of the OneUptime chart and
| Parameter | Description | Default | Change Required |
|---------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------|-----------------|
| `global.storageClass` | Storage class to be used for all persistent volumes | `nil` | 🚨 |
| `host` | Hostname for the ingress | `localhost` | 🚨 |
| `host` | Primary hostname served by OneUptime (used for routing and certificate management) | `localhost` | 🚨 |
| `ssl.provision` | Automatically provision a Let's Encrypt certificate for the primary host (requires public access on ports 80 and 443) | `false` | |
| `httpProtocol` | If the server is hosted with SSL/TLS cert then change this value to https | `http` | 🚨 |
| `oneuptimeSecret` | Value used to define ONEUPTIME_SECRET | `nil` | |
@@ -94,7 +94,7 @@ The following table lists the configurable parameters of the OneUptime chart and
| `autoscaling.targetCPUUtilizationPercentage` | Target CPU utilization percentage | `80` | |
| `autoscaling.targetMemoryUtilizationPercentage` | Target memory utilization percentage | `80` | |
| `nodeEnvironment` | Node environment (please dont change this unless you're doing local development) | `production` | |
| `nginx.service.type` | nginx service type | `LoadBalancer` | |
| `nginx.service.type` | nginx service type (exposes the bundled OneUptime ingress gateway) | `LoadBalancer` | |
| `nginx.service.loadBalancerIP` | nginx service load balancer IP | `nil` | |
| `deployment.replicaCount` | Number of replicas | `1` | |
| `probes.<key>.name` | Probe name | `<key>` | |
@@ -119,11 +119,6 @@ The following table lists the configurable parameters of the OneUptime chart and
| `tolerations` | Tolerations. Please refer to Kubernetes documentation on how to use them. | `[]` | |
| `affinity` | Affinity. Please refer to Kubernetes documentation on how to use them. | `{}` | |
| `extraTemplates` | Extra templates to be added to the deployment | `[]` | |
| `oneuptimeIngress.enabled` | Enable ingress | `true` | |
| `oneuptimeIngress.annotations` | Ingress annotations | `{}` | |
| `oneuptimeIngress.hosts` | Ingress hosts | `[]` | |
| `oneuptimeIngress.tls` | Ingress TLS. Please refer to values.yaml to set these | `[]` | |
| `oneuptimeIngress.className` | Ingress class name. Change this to your cloud providers ingress class | `nginx` | |
| `script.workflowScriptTimeoutInMs` | Timeout for workflow script | `5000` | |
@@ -426,6 +421,10 @@ clickhouse:
We release frequently, sometimes multiple times a day. It's usually safe to upgrade to the latest version. Any breaking changes will be documented in the release notes. Please make sure you read the release notes before upgrading.
## Upgrade Notes
- **9.0.0 (2025-11-21)**: Kubernetes Ingress objects are no longer created. OneUptime already ships an ingress gateway container that manages TLS certificates, status page domains, and routing. Remove any `oneuptimeIngress` overrides from your values files and ensure `nginx.service.type` matches how you expose the ingress gateway (for example `LoadBalancer`).
## Chart Dependencies
We use these charts as dependencies for some components. You dont need to install them separately. Please read the readme for these individual charts to understand the configuration options.

View File

@@ -1,40 +1 @@
{{- if and $.Values.oneuptimeIngress.enabled $.Values.nginx.enabled }}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: {{ printf "%s-%s" $.Release.Name "ingress" }}
namespace: {{ $.Release.Namespace }}
labels:
app: {{ printf "%s-%s" $.Release.Name "ingress" }}
app.kubernetes.io/part-of: oneuptime
app.kubernetes.io/managed-by: Helm
appname: oneuptime
annotations:
{{- with $.Values.oneuptimeIngress.annotations }}
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
ingressClassName: {{ $.Values.oneuptimeIngress.className }}
{{- if $.Values.oneuptimeIngress.tls.enabled }}
tls:
{{- range $key, $val := $.Values.oneuptimeIngress.tls.hosts }}
- hosts:
- {{ $val.host | quote }}
secretName: {{ $val.secretName }}
{{- end }}
{{- end }}
rules:
{{- range $key, $val := $.Values.oneuptimeIngress.hosts }}
- host: {{ $val | quote }}
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: {{ printf "%s-%s" $.Release.Name "nginx" }}
port:
name: "oneuptime-http"
{{- end }}
{{- end }}
{{- /* Kubernetes Ingress support has been removed. This template intentionally renders nothing. */ -}}

View File

@@ -196,11 +196,11 @@ spec:
name: statuspage-ssl
selector:
app: {{ printf "%s-%s" $.Release.Name "nginx" }}
{{- if and ($.Values.nginx.service.type) (eq $.Values.oneuptimeIngress.enabled false) }}
{{- if $.Values.nginx.service.type }}
type: {{ $.Values.nginx.service.type }}
{{- else }}
type: ClusterIP
{{- end}}
{{- end }}
---
# OneUptime nginx autoscaler

View File

@@ -970,51 +970,6 @@
},
"additionalProperties": false
},
"oneuptimeIngress": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"annotations": {
"type": ["object", "null"]
},
"className": {
"type": "string"
},
"hosts": {
"type": ["array", "null"],
"items": {
"type": "string"
}
},
"tls": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"hosts": {
"type": ["array", "null"],
"items": {
"type": "object",
"properties": {
"host": {
"type": "string"
},
"secretName": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"script": {
"type": "object",
"properties": {

View File

@@ -60,6 +60,7 @@ metalLb:
# - 51.158.55.153/32 # List of IP addresses of all the servers in the cluster.
nginx:
# OneUptime ships with its own ingress gateway container, so Kubernetes Ingress resources are not required.
enabled: true
replicaCount: 1
disableTelemetryCollection: false
@@ -421,21 +422,6 @@ letsEncrypt:
# Example: "hello@yourcompany.com"
email:
oneuptimeIngress:
enabled: false
annotations:
# Please change this to the ingress class name for your cluster. If you use a cloud provider, this is usually the default ingress class name.
# If you dont have nginx ingress controller installed, please install it by going to https://kubernetes.github.io/ingress-nginx/deploy/
className: nginx # Required. Please change this to the ingress class name for your cluster. If you use a cloud provider, this is usually the default ingress class name.
hosts: # List of hosts for the ingress. Please change this to your hosts
# - "oneuptime.com" # Host 1
# - "www.oneuptime.com" # Host 2
tls:
enabled: false
hosts:
# - host: "oneuptime.com" # Host 1
# secretName: "oneuptime-tls"
script:
workflowScriptTimeoutInMs: 5000

View File

@@ -1 +1 @@
8.0
9.0