Skip to content

feat(helm): optional HulyPulse service for presence and push - #325

Open
developerinlondon wants to merge 1 commit into
hcengineering:mainfrom
developerinlondon:feat/helm-hulypulse
Open

feat(helm): optional HulyPulse service for presence and push#325
developerinlondon wants to merge 1 commit into
hcengineering:mainfrom
developerinlondon:feat/helm-hulypulse

Conversation

@developerinlondon

Copy link
Copy Markdown

The compose stack gained an optional HulyPulse service (README §HulyPulse), but the Helm chart has no way to run it or to hand PULSE_URL to the front and transactor. This adds it following the chart's existing conventions.

What

  • templates/hulypulse/{deployment,service}.yaml behind hulypulse.enabled (default false — nothing changes for existing users), mirroring the compose service: HULY_BIND_PORT=8099, HULY_TOKEN_SECRET from the chart secret's SERVER_SECRET, HULY_BACKEND=memory by default with a redis variant (backend: redis, redisUrls).
  • ConfigMap gains PULSE_URL (public {proto}://{domain}/_pulse) and PULSE_URL_INTERNAL (http://hulypulse:8099), matching the existing *_INTERNAL split.
  • Front consumes the public URL, transactor the internal one — same wiring the compose README prescribes.
  • Ingress gains a websocket-enabled /_pulse backend via the existing $backends list.
  • hulypulse.version defaults to 0.1.29 and is deliberately independent of hulyVersion, matching HULY_PULSE_VERSION in compose.

Verified

Render Result
default (disabled) no hulypulse objects, no PULSE keys, chart renders clean
enabled, memory backend Deployment + Service + both ConfigMap keys + front/transactor env
enabled, redis backend HULY_REDIS_MODE/HULY_REDIS_URLS rendered
enabled + ingress + tls /_pulse ws backend, PULSE_URL: https://…/_pulse
full output parses as valid YAML (40 docs)

Related to the chart-conventions work in #323/#324.

Adds a hulypulse Deployment and Service behind hulypulse.enabled,
mirroring the commented compose.yml service: in-memory backend by
default with a redis variant, HULY_TOKEN_SECRET drawn from the chart
secret's SERVER_SECRET.

Wires PULSE_URL through the shared ConfigMap the way other endpoints
are: the front receives the public {proto}://{domain}/_pulse URL and
the transactor the in-cluster http://hulypulse:8099, and the ingress
gains a websocket-enabled /_pulse backend when enabled.

Rendered and yaml-validated disabled (no objects, no keys), enabled
with memory backend, enabled with redis, and enabled with ingress.
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.

1 participant