-
Notifications
You must be signed in to change notification settings - Fork 2
First cut at helm chart. #32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
This deploys the atlas-ui-3 only with no authentication. A future update will add a nginx reverse proxy gateway that interfaces with an oauth2/oidc provider.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces Helm chart deployment configurations for the atlas-ui-3 application, enabling Kubernetes deployments. The chart includes comprehensive configuration management with environment variables, secrets, persistent storage, and service exposure.
- Adds complete Helm chart structure with deployment, service, ingress, and storage resources
- Configures application via environment variables and ConfigMaps for MCP servers, LLM models, and help documentation
- Includes resource limits, persistent volume claims, and ingress routing
Reviewed Changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| helm-chart/Chart.yaml | Defines Helm chart metadata and versioning |
| helm-chart/values.yaml | Comprehensive default values including env vars, secrets, resources, and configuration files |
| helm-chart/templates/_helpers.tpl | Template helper for consistent label generation |
| helm-chart/templates/configmaps.yaml | ConfigMap template for mounting configuration files |
| helm-chart/templates/deployment.yaml | Main deployment resource with container spec, volumes, and env configuration |
| helm-chart/templates/ingress.yaml | Ingress routing configuration for external access |
| helm-chart/templates/logs-pvc.yaml | Persistent volume claim for application logs |
| helm-chart/templates/secrets.yaml | Secret template for sensitive configuration |
| helm-chart/templates/service.yaml | Service resource for internal networking |
Comments suppressed due to low confidence (1)
helm-chart/values.yaml:1
- The AGENT_MAX_STEPS value is set to 30, which differs from the .env.example default of 10. This inconsistency could lead to confusion. Consider using 10 to match the documented default, or add a comment explaining why the Helm default differs.
# -- Container image
| value: "false" | ||
| # MCP / tools panel | ||
| - name: FEATURE_TOOLS_ENABLED | ||
| value: "true" |
Copilot
AI
Oct 31, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The FEATURE_TOOLS_ENABLED is set to true, but in .env.example it defaults to false. This inconsistency between deployment environments could cause unexpected behavior. Consider aligning with the .env.example default or documenting why Helm deployments should have this enabled by default.
| value: "true" | |
| value: "false" |
| value: "true" | ||
| # Marketplace browsing | ||
| - name: FEATURE_MARKETPLACE_ENABLED | ||
| value: "true" |
Copilot
AI
Oct 31, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The FEATURE_MARKETPLACE_ENABLED is set to true, but in .env.example it defaults to false. This inconsistency between deployment environments could cause unexpected behavior. Consider aligning with the .env.example default or documenting why Helm deployments should have this enabled by default.
| value: "true" | |
| value: "false" |
| - name: {{ .Release.Name }}-config-volume | ||
| mountPath: /app/config/defaults | ||
| - name: {{ .Release.Name }}-config-volume | ||
| mountPath: /app/config/overrides |
Copilot
AI
Oct 31, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The same volume is mounted twice at different paths (/app/config/defaults and /app/config/overrides). This will cause the second mount to override the first. If both paths need the same ConfigMap data, use subPath, or if they need different data, create separate volumes with distinct names.
| cpu: 8 | ||
| memory: 32Gi | ||
| limits: | ||
| cpu: 8 | ||
| memory: 32Gi |
Copilot
AI
Oct 31, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The resource requests and limits are set to 8 CPU cores and 32GB memory, which are very high for a typical web application. These values may cause scheduling issues in resource-constrained Kubernetes clusters. Consider using more conservative defaults (e.g., 1-2 CPUs and 2-4GB memory) that can be overridden for production deployments.
| cpu: 8 | |
| memory: 32Gi | |
| limits: | |
| cpu: 8 | |
| memory: 32Gi | |
| cpu: 1 | |
| memory: 2Gi | |
| limits: | |
| cpu: 1 | |
| memory: 2Gi |
|
We should move this to the scripts folder and update the readme.md |
This deploys the atlas-ui-3 only with no authentication. A future update will add a nginx reverse proxy gateway that interfaces with an oauth2/oidc provider.