Skip to content

Add Slack Socket Mode worker deployment to the Helm chart - #35

Open
megative wants to merge 2 commits into
roxy-wi:release/2.0from
megative:feat/helm-slack-worker
Open

Add Slack Socket Mode worker deployment to the Helm chart#35
megative wants to merge 2 commits into
roxy-wi:release/2.0from
megative:feat/helm-slack-worker

Conversation

@megative

Copy link
Copy Markdown
Contributor

Problem

entrypoint.sh has supported INCIDENTRELAY_SERVICE=slack since the worker was added, and docker/docker-compose.yml runs it as incidentrelay-slack — but the Helm chart never shipped a Deployment for it. The chart even renders config.logging.slack_worker_file into the config Secret, so the omission looks accidental.

Effect on Kubernetes: Slack interactive buttons were dead. The web pod posts messages through chat.postMessage, but nothing held the Socket Mode WebSocket, so Acknowledge and friends did nothing.

Change

  • templates/deployment-slack.yaml — mirrors the telegram worker (single replica, Recreate, no migrations, shared config/data/logs volumes)
  • values.yamlslack block, enabled by default like telegram; harmless without a configured Slack app, the worker idles
  • NOTES.txt — slack line in the component list
  • README.md — mention the worker

Verification

Manually deployed on a kind cluster (k8s v1.36.1) from a locally built image:

  • all four pods 1/1 Running, 0 restarts; /healthz and /readyz return 200 to kube-probe, also through the Service
  • after configuring a Slack channel in the UI (Bot API → Socket Mode), the worker picked up the config straight from the database with no pod restart: Slack Socket Mode connection started, channel_count: 1
  • an alert delivered through a webhook route reached Slack, and Acknowledge from Slack updated the alert status in the UI — the path that did not work on Kubernetes before this change
  • helm lint clean; --set slack.enabled=false removes the Deployment
  • full pytest suite: 1219 passed (unaffected — no Python changed)

@Aidaho12

Copy link
Copy Markdown
Member

Hello, could you change branch to the release2.0. There is the changed

megative added 2 commits July 28, 2026 12:31
The entrypoint has supported INCIDENTRELAY_SERVICE=slack since the
worker was introduced and docker-compose runs it, but the chart never
shipped a Deployment for it. As a result Slack interactive buttons
(Acknowledge and friends) were dead on Kubernetes: the web pod posted
messages, and nothing consumed the Socket Mode WebSocket.

Add deployment-slack.yaml mirroring the telegram worker, along with the
matching `slack` values block and a line in NOTES.txt.

Verified on a kind cluster: the pod reconciles channel config from the
database without a restart ("Slack Socket Mode connection started",
channel_count 1), and an alert delivered through a webhook route can be
acknowledged from Slack.
@megative
megative force-pushed the feat/helm-slack-worker branch from 9e6ee38 to 692ac9d Compare July 28, 2026 10:32
@megative
megative changed the base branch from main to release/2.0 July 28, 2026 10:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants