This repository was archived by the owner on Nov 26, 2025. It is now read-only.
Description Problem
The opencloud-microservices chart maintains two parallel deployment methods:
Helm via Helmfile (deployments/helm/helmfile.yaml)
Timoni via CUE (deployments/timoni/*.cue + supporting files)
Both methods deploy the same chart but require separate configuration maintenance .
Current Structure
charts/opencloud-microservices/deployments/
├── helm/
│ └── helmfile.yaml # Helm values in YAML
└── timoni/
├── opencloud.cue # Timoni module definition
├── runtime.cue # Runtime configuration
├── configmap.yaml # Environment variables
└── README.md
Issues
Duplication : Same configuration values must be maintained in multiple files
Different Formats : YAML (Helm) vs CUE (Timoni)
Synchronization Risk : Easy to update one and forget the other
Confusion : Unclear which is the "source of truth"
Example
When adding COLLABORA_DOMAIN in PR #115 , it had to be added to:
✅ configmap.yaml
✅ runtime.cue
✅ opencloud.cue
❓ But not in helmfile.yaml (missed!)
Proposed Solutions
Option A: Remove Timoni
Most users are familiar with Helm
Reduces maintenance burden
Single source of truth
Option B: Make Timoni a thin wrapper
Timoni reads values from a shared file
No duplication of configuration
Option C: Clear documentation
Declare one as "primary"
Auto-generate the other (CI/CD)
Add checks to ensure synchronization
Questions for Discussion
How many users actually use the Timoni deployment method?
Is supporting both methods worth the maintenance overhead?
If we keep both, how do we ensure they stay in sync?
cc @suse-coder (as the original contributor of the opencloud-microservices chart)