Skip to content

Commit

Permalink
Adding Postgres Helm chart to rad init (radius-project#8072)
Browse files Browse the repository at this point in the history
# Description

Adding Postgres installation to the Radius Helm chart

## Type of change

- This pull request adds or changes features of Radius and has an
approved issue (issue link required).

Fixes: radius-project#8071 
Updated issue: radius-project#8096

---------

Signed-off-by: Nick Beenham <[email protected]>
  • Loading branch information
superbeeny authored Jan 9, 2025
1 parent 1b47609 commit 9e74e73
Show file tree
Hide file tree
Showing 8 changed files with 103 additions and 316 deletions.
13 changes: 13 additions & 0 deletions deploy/Chart/templates/database/configmaps.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: database-secret
namespace: "{{ .Release.Namespace }}"
labels:
control-plane: database
app.kubernetes.io/name: database
app.kubernetes.io/part-of: radius
data:
POSTGRES_DB: ps_db
POSTGRES_USER: ps_user
POSTGRES_PASSWORD: SecurePassword
16 changes: 16 additions & 0 deletions deploy/Chart/templates/database/service.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
apiVersion: v1
kind: Service
metadata:
name: database
namespace: "{{ .Release.Namespace }}"
labels:
app.kubernetes.io/name: database
app.kubernetes.io/part-of: radius
spec:
ports:
- port: 5432
name: postgres
protocol: TCP
targetPort: 5432
selector:
app.kubernetes.io/name: database
8 changes: 8 additions & 0 deletions deploy/Chart/templates/database/serviceaccount.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
apiVersion: v1
kind: ServiceAccount
metadata:
name: database
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: database
app.kubernetes.io/part-of: radius
52 changes: 52 additions & 0 deletions deploy/Chart/templates/database/statefulset.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: database
namespace: "{{ .Release.Namespace }}"
labels:
control-plane: database
app.kubernetes.io/name: database
app.kubernetes.io/part-of: radius
spec:
serviceName: "database"
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: database
template:
metadata:
labels:
control-plane: database
app.kubernetes.io/name: database
app.kubernetes.io/part-of: radius
spec:
serviceAccountName: database
containers:
- name: database
securityContext:
allowPrivilegeEscalation: false
image: "{{ .Values.database.image }}:{{ .Values.database.tag }}"
imagePullPolicy: IfNotPresent
resources:
requests:
memory: "{{ .Values.database.resources.requests.memory }}"
cpu: "{{ .Values.database.resources.requests.cpu }}"
limits:
memory: "{{ .Values.database.resources.limits.memory }}"
cpu: "{{ .Values.database.resources.limits.cpu }}"
envFrom:
- configMapRef:
name: database-secret
ports:
- containerPort: 5432
name: postgres

volumeClaimTemplates:
- metadata:
name: database
spec:
accessModes: ["ReadWriteOnce"]
storageClassName: "{{ .Values.database.storageClassName }}"
resources:
requests:
storage: {{ .Values.database.storageSize }}
14 changes: 14 additions & 0 deletions deploy/Chart/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -112,3 +112,17 @@ dashboard:
memory: "60Mi"
limits:
memory: "300Mi"

database:
image: ghcr.io/radius-project/mirror/postgres
tag: latest
storageClassName: "standard" # set to the storage class name if required
# Minimum resource requirements, may need to revisit and scale.
storageSize: "1Gi"
resources:
requests:
cpu: "2"
memory: "512Mi"
limits:
cpu: "2"
memory: "1024Mi"
118 changes: 0 additions & 118 deletions test/functional-portable/datastoresrp/noncloud/resources/sql_test.go

This file was deleted.

This file was deleted.

Loading

0 comments on commit 9e74e73

Please sign in to comment.