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
+26 -1
View File
@@ -1,13 +1,38 @@
# Base (default) values for nginx-chart.
#
# Environment-specific overrides live in environments/<env>/values.yaml and are
# merged on top of this file at deploy time:
#
# helm upgrade --install nginx ./nginx-chart -n <namespace> --create-namespace \
# -f nginx-chart/environments/<env>/values.yaml
#
# Available environments: dev, stg, prod
replicaCount: 1
namespace: "dev"
namespace: dev
image:
repository: imageregistry.gen-itech.com/demo/applicationtest
tag: "39"
pullPolicy: IfNotPresent
# Name of the docker-registry pull secret (created by environments/<env>/secret.yaml)
imagePullSecrets: harbor-secret
service:
type: ClusterIP
port: 80
ingress:
enabled: true
className: traefik
host: nginx.demo.local
# Names of the ConfigMap / Secret created by environments/<env>/configmap.yaml
# and environments/<env>/secret.yaml
configMap:
name: nginx-config-dev
secret:
name: nginx-secret-dev