- fix(ingress): use root context ($) for fullname inside range
- fix(statefulset): use updateStrategy instead of strategy for mysql/infinity/elasticsearch/opensearch
- feat(mysql): add external mode via mysql.enabled=false with env MYSQL_HOST/PORT and MYSQL_USER (default root)
- feat(minio/redis): add external mode via *.enabled=false with env *_HOST/PORT
- feat(global): add global.repo for image registry prefix and global.imagePullSecrets for all pods
- feat: helper template ragflow.imageRepo to render image with global repo
- chore(env): allow optional MINIO_HOST, MINIO_PASSWORD, REDIS_PASSWORD (remove required); keep MYSQL_PASSWORD required
- docs(helm): add helm/README.md and update usage
- refactor(images): apply global repo to all components and init containers
- test: align test busybox image with global repo helper
### What problem does this PR solve?
Adds OpenSearch support to the RAGFlow Helm chart based on
https://github.com/infiniflow/ragflow/pull/7140 and the existing
Elasticsearch support in the Helm chart.
### Type of change
- [X] New Feature (non-breaking change which adds functionality)
### What problem does this PR solve?
Add's a Helm chart for deploying RAGFlow on Kubernetes.
Closes#864.
### Type of change
- [X] New Feature (non-breaking change which adds functionality)