-
Notifications
You must be signed in to change notification settings - Fork 0
fix: resolve K8s deployment issues #93
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
Conversation
- Add slack.enabled: true to community values (was defaulting to false) - Add cleanup step in deploy workflow to remove stale orchestrator/dispatcher deployments from old architecture - Remove obsolete orchestrator log reference from verification step - Add enableStatusReactions and enableProgressUpdates to slack config
|
Claude finished @buremba's task —— View job Pull Request ReviewI've completed a comprehensive review of the K8s deployment fixes. Here's my detailed analysis: Review Tasks:
🎯 Overall Assessment: APPROVEDThis PR effectively addresses the stated root causes and follows solid DevOps practices. The changes are minimal, targeted, and well-documented. 📋 Code Quality & Best Practices✅ Strengths
🔧 Minor Improvements
🐛 Potential Issues
|
Mesa DescriptionTL;DRFixed K8s deployment failures in community environment by enabling Slack integration, cleaning up stale orchestrator/dispatcher deployments from old architecture, and removing obsolete log references. What changed?
Description generated by Mesa. Update settings |
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.
Performed full review of c34ab3c...dcd6eff
Analysis
-
Critical service-selector mismatch in
service-loadbalancer.yamlstill references "dispatcher" component instead of "gateway", causing the LoadBalancer service to fail matching any pods and becoming non-functional. -
Incomplete architecture migration cleanup - while deployments are fixed, legacy "dispatcher" terminology remains throughout the codebase in environment variables, comments, and annotations, creating confusion.
-
Configuration inheritance pattern issue discovered where platform enablement flags (e.g.,
slack.enabled: true) must be explicitly set to override defaults, even when complete configurations exist. -
Despite the kubectl-based cleanup approach being appropriate for immediate deployment failures, a more comprehensive migration guide or documentation update would help prevent similar issues.
Tip
Help
Slash Commands:
/review- Request a full code review/review latest- Review only changes since the last review/describe- Generate PR description. This will update the PR body or issue comment depending on your configuration/help- Get help with Mesa commands and configuration options
0 files reviewed | 1 comments | Edit Agent Settings • Read Docs
|
|
||
| # Slack configuration | ||
| slack: | ||
| enabled: true # Enable Slack platform |
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.
Good fix! This resolves the root cause where SLACK_BOT_TOKEN wasn't being rendered as an environment variable in the gateway deployment. The template at charts/peerbot/templates/gateway-deployment.yaml conditionally includes Slack env vars only when slack.enabled: true.
Note: There's a related issue in charts/peerbot/templates/service-loadbalancer.yaml:20 where the selector still uses app.kubernetes.io/component: dispatcher instead of gateway. This would prevent the LoadBalancer from routing traffic to pods. Consider filing a follow-up issue to fix this.
Prompt for Agent
Task: Address review feedback left on GitHub.
Repository: buremba/peerbot#93
File: charts/peerbot/values-community.yaml#L78
Action: Open this file location in your editor, inspect the highlighted code, and resolve the issue described below.
Feedback:
Good fix! This resolves the root cause where SLACK_BOT_TOKEN wasn't being rendered as an environment variable in the gateway deployment. The template at `charts/peerbot/templates/gateway-deployment.yaml` conditionally includes Slack env vars only when `slack.enabled: true`.
Note: There's a related issue in `charts/peerbot/templates/service-loadbalancer.yaml:20` where the selector still uses `app.kubernetes.io/component: dispatcher` instead of `gateway`. This would prevent the LoadBalancer from routing traffic to pods. Consider filing a follow-up issue to fix this.
Summary
slack.enabled: trueto community values (was defaulting to false, causing SLACK_BOT_TOKEN env var to not be rendered)Root Cause
The production deployment has been failing since October 2025 because:
enabled: true, so it defaulted tofalsefrom values.yamldemo-repository,database-url)Changes
charts/peerbot/values-community.yaml: Addedslack.enabled: trueand status reaction configs.github/workflows/deploy-community.yml:Test Plan
Note
Resolves community deployment failures by enabling Slack and cleaning up legacy K8s resources before Helm deploys.
slackinvalues-community.yamland addsenableStatusReactions/enableProgressUpdatesdeploy-community.ymlto delete oldorchestrator/dispatcherdeployments and orphaned podsWritten by Cursor Bugbot for commit dcd6eff. This will update automatically on new commits. Configure here.