# Helm chart deployment This directory contains a Helm chart for deploying the app to a cluster, it support bot production and preview deployment. ## Directory Structure - `myapp-chart/` - `templates/` - `app-deployment.yaml` - Kubernetes Deployment for the application - `cron.yaml` - cronjob for periodic tasks - periodically calls app endpoint - `database.yaml` - Creates database using MariaDB operator. Production database is kept, but preview/dev database is dropped after uninstalling the chart. - `database-grant.yaml` - Defines rights for the database user - `database-user.yaml` - Creates database user - `monitoring.yaml` - Adds /metrics endpoint to Prometheus scraping - `prod.yaml` - Application secrets - `rabbitmq-cluster.yaml` - Defines RabbitMQ cluster for this deployment - `rabbitmq-permission.yalm` - Defines RabbitMQ user permissions - `rabbitmq-queue.yaml` - Defines RabbitMQ queue - `rabbitmq-user.yaml` - Defines RabbitMQ user - `rabbitmq-user-secret.yaml` - Defines RabbitMQ user secret - `service.yaml` - Kubernetes Service for the application - `tunnel.yaml` - Cloudflare tunnel for accessing the application¨ - `worker-deployment.yaml` - Kubernetes Deployment for the Celery worker, uses same image as the app-deployment, but with different entrypoint - `Chart.yaml` - Helm chart metadata - `values.yaml` - list of all configurable values - `values-dev.yaml` - default values for development/preview deployment - `values-prod.yaml` - default values for production deployment