1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
from .base import *
import os
# Database
# https://docs.djangoproject.com/en/4.0/ref/settings/#databases
# Check if running in OpenShift cluster
if os.path.exists('/etc/secret-volume'):
# Read database credentials from mounted Secret volume
secret_volume_path = '/etc/secret-volume'
db_host = open(os.path.join(secret_volume_path, 'host')).read().strip()
db_port = open(os.path.join(secret_volume_path, 'port')).read().strip()
db_name = open(os.path.join(secret_volume_path, 'database')).read().strip()
db_user = open(os.path.join(secret_volume_path, 'user')).read().strip()
db_password = open(os.path.join(secret_volume_path, 'password')).read().strip()
else:
# Use environment variables for local development
db_host = os.environ.get('DB_HOST', 'localhost')
db_port = os.environ.get('DB_PORT', '5432')
db_name = os.environ.get('DB_NAME', 'your_local_db_name')
db_user = os.environ.get('DB_USER', 'your_local_db_user')
db_password = os.environ.get('DB_PASSWORD', 'your_local_db_password')
# Configure Django database settings
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': db_name,
'USER': db_user,
'PASSWORD': db_password,
'HOST': db_host,
'PORT': db_port,
}
}
|