Add Helm chart, Docs, and Config conversion script
Some checks failed
Build / Code Quality Checks (push) Successful in 15m11s
Build / Build & Push Docker Images (worker) (push) Successful in 13m44s
Build / Build & Push Docker Images (frontend) (push) Successful in 5m8s
Build / Build & Push Docker Images (chat) (push) Failing after 30m7s
Build / Build & Push Docker Images (api) (push) Failing after 21m39s
Some checks failed
Build / Code Quality Checks (push) Successful in 15m11s
Build / Build & Push Docker Images (worker) (push) Successful in 13m44s
Build / Build & Push Docker Images (frontend) (push) Successful in 5m8s
Build / Build & Push Docker Images (chat) (push) Failing after 30m7s
Build / Build & Push Docker Images (api) (push) Failing after 21m39s
This commit is contained in:
@@ -148,6 +148,118 @@ After running the validation script, you'll find:
|
||||
|
||||
---
|
||||
|
||||
## 🔄 convert_config.py
|
||||
|
||||
**Configuration Format Converter**
|
||||
|
||||
### Description
|
||||
|
||||
Converts between `.env` and `values.yaml` configuration formats, making it easy to switch between Docker Compose and Helm deployments.
|
||||
|
||||
### Usage
|
||||
|
||||
#### Prerequisites
|
||||
|
||||
```bash
|
||||
pip install pyyaml
|
||||
```
|
||||
|
||||
#### Convert .env to values.yaml
|
||||
|
||||
```bash
|
||||
./scripts/convert_config.py env-to-yaml .env values.yaml
|
||||
```
|
||||
|
||||
#### Convert values.yaml to .env
|
||||
|
||||
```bash
|
||||
./scripts/convert_config.py yaml-to-env values.yaml .env
|
||||
```
|
||||
|
||||
### Examples
|
||||
|
||||
**Example 1: Create values.yaml from existing .env**
|
||||
|
||||
```bash
|
||||
# You have an existing .env file from Docker development
|
||||
./scripts/convert_config.py env-to-yaml .env my-values.yaml
|
||||
|
||||
# Use the generated values.yaml with Helm
|
||||
helm install my-release deploy/helm/datacenter-docs -f my-values.yaml
|
||||
```
|
||||
|
||||
**Example 2: Generate .env from values.yaml**
|
||||
|
||||
```bash
|
||||
# You have a values.yaml from Kubernetes deployment
|
||||
./scripts/convert_config.py yaml-to-env values.yaml .env
|
||||
|
||||
# Use the generated .env with Docker Compose
|
||||
cd deploy/docker
|
||||
docker-compose -f docker-compose.dev.yml up -d
|
||||
```
|
||||
|
||||
**Example 3: Environment migration**
|
||||
|
||||
```bash
|
||||
# Convert development .env to staging values.yaml
|
||||
./scripts/convert_config.py env-to-yaml .env.development values-staging.yaml
|
||||
|
||||
# Manually adjust staging-specific settings
|
||||
nano values-staging.yaml
|
||||
|
||||
# Deploy to staging Kubernetes cluster
|
||||
helm install staging deploy/helm/datacenter-docs -f values-staging.yaml
|
||||
```
|
||||
|
||||
### Supported Configuration
|
||||
|
||||
The script converts:
|
||||
|
||||
- **MongoDB**: Connection settings and authentication
|
||||
- **Redis**: Connection and authentication
|
||||
- **MCP Server**: URL and API key
|
||||
- **Proxmox**: Host, authentication, SSL settings
|
||||
- **LLM**: Provider settings (OpenAI, Anthropic, Ollama, etc.)
|
||||
- **API**: Server configuration and workers
|
||||
- **CORS**: Allowed origins
|
||||
- **Application**: Logging and debug settings
|
||||
- **Celery**: Broker and result backend
|
||||
- **Vector Store**: ChromaDB and embedding model
|
||||
|
||||
### Output
|
||||
|
||||
```
|
||||
Reading .env file: .env
|
||||
Converting to values.yaml format...
|
||||
Writing values.yaml: my-values.yaml
|
||||
✓ Conversion completed successfully!
|
||||
|
||||
Output written to: my-values.yaml
|
||||
```
|
||||
|
||||
### Limitations
|
||||
|
||||
- Converts common configuration options only
|
||||
- Complex nested structures may require manual adjustment
|
||||
- Helm-specific values (resource limits, replicas) not included in .env conversion
|
||||
- Always review and test converted configuration
|
||||
|
||||
### Tips
|
||||
|
||||
1. **Review output**: Always check converted files for accuracy
|
||||
2. **Test first**: Validate in development before production
|
||||
3. **Keep secrets secure**: Use proper secret management tools
|
||||
4. **Version control**: Track configuration changes
|
||||
|
||||
### See Also
|
||||
|
||||
- [CONFIGURATION.md](../CONFIGURATION.md) - Complete configuration guide
|
||||
- [.env.example](../.env.example) - Environment variable template
|
||||
- [values.yaml](../values.yaml) - YAML configuration template
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Quick Start
|
||||
|
||||
```bash
|
||||
|
||||
Reference in New Issue
Block a user