Add dev/stg/prod environments with per-env values, configmaps and secrets

- Move env-specific config into environments/<env>/{values,configmap,secret}.yaml
  for both nginx-chart and mysql-chart (dev, stg, prod)
- Make templates env-agnostic: resource names come from values
  (configMap.name, secret.name)
- nginx deployment mounts env ConfigMap and loads env Secret via envFrom
- mysql statefulset reads DB config from ConfigMap, passwords from Secret
- Remove mysql-chart/templates/secret.yaml (secrets are now per-env manifests)
- Add README with layout and deploy commands
This commit is contained in:
mdsamsulhaque
2026-11-04 06:43:05 +06:00
parent dfca9ba4ae
commit bbf501269d
24 changed files with 491 additions and 25 deletions
@@ -0,0 +1,11 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: mysql-config-dev
namespace: dev
labels:
app: mysql
env: dev
data:
MYSQL_DATABASE: demo_dev
MYSQL_USER: demo
+12
View File
@@ -0,0 +1,12 @@
# MySQL credentials for the DEV environment (referenced by the StatefulSet).
# Replace with real values; for production use a sealed/encrypted secret instead
# of committing plaintext.
apiVersion: v1
kind: Secret
metadata:
name: mysql-secret-dev
namespace: dev
type: Opaque
stringData:
MYSQL_PASSWORD: demo123
MYSQL_ROOT_PASSWORD: root123
+14
View File
@@ -0,0 +1,14 @@
# DEV environment overrides for mysql-chart
namespace: dev
image:
tag: "8.4"
storage:
size: 1Gi
configMap:
name: mysql-config-dev
secret:
name: mysql-secret-dev