This example project consists of two environments (dev
and prod
) with a
single helm chart.
- the single helm chart
httpbingo
of version0.1.0
is defined in theprototypes
directory - the
dev
environment overwrites the version of the helm chart via the vendir data values file inenvs/dev/_apps/httpbingo/vendir/vendir-data.ytt.yaml
- the
prod
environment overwrites the replica count via the helm chart values file inenvs/prod/_apps/httpbingo/helm/httpbingo.yaml
.
βββ envs
βΒ Β βββ 'env-data.ytt.yaml' # shared environment configuration
βΒ Β βββ dev
βΒ Β βΒ Β βββ _apps
βΒ Β βΒ Β βΒ Β βββ httpbingo
βΒ Β βΒ Β βΒ Β βββ vendir
βΒ Β βΒ Β βΒ Β βΒ Β βββ 'vendir-data.ytt.yaml' # overwrite helm chart version for dev environment
βΒ Β βΒ Β βΒ Β βββ vendor # vendored helm chart
βΒ Β βΒ Β βββ 'env-data.ytt.yaml' # environment configuration dev
βΒ Β βββ prod
βΒ Β βββ _apps
βΒ Β βΒ Β βββ httpbingo
βΒ Β βΒ Β βββ helm
βΒ Β βΒ Β βΒ Β βββ 'httpbingo.yaml' # overwrite helm chart values for prod
βΒ Β βΒ Β βββ vendor # vendored helm chart
βΒ Β βββ 'env-data.ytt.yaml' # environment configuration prod
βββ prototypes
βΒ Β βββ httpbingo
βΒ Β βββ helm
βΒ Β βΒ Β βββ 'httpbingo.yaml' # helm default values for all environments
βΒ Β βββ vendir
βΒ Β βββ 'base.ytt.yaml' # templated vendir config
βΒ Β βββ 'vendir-data.ytt.yaml' # vendir configuration, e.g. helm chart url and version (overwritten for dev)
βββ rendered # rendered files for all enviroments
βββ argocd # argocd app definitionas
βΒ Β βββ mykso-dev
βΒ Β βΒ Β βββ 'app-httpbingo.yaml'
βΒ Β βΒ Β βββ 'env-mykso-dev.yaml'
βΒ Β βββ mykso-prod
βΒ Β βββ 'app-httpbingo.yaml'
βΒ Β βββ 'env-mykso-prod.yaml'
βββ envs # rendered manifests
βββ mykso-dev
βΒ Β βββ httpbingo
βΒ Β βββ 'deployment-httpbingo.yaml'
βΒ Β βββ 'service-httpbingo.yaml'
βΒ Β βββ 'serviceaccount-httpbingo.yaml'
βββ mykso-prod
βββ httpbingo
βββ 'deployment-httpbingo.yaml'
βββ 'service-httpbingo.yaml'
βββ 'serviceaccount-httpbingo.yaml'