Deployment: hbf-bot
Infrastructure config for this service. Full platform deployment:
docs/architecture/deployment.md
Runtime
- Port: 3000
- Base image: node:22-slim (multi-stage)
- Start command:
npm start -- -h 0.0.0.0 - Health check: none defined
Required Environment Variables
| Variable | Example | Description |
|---|---|---|
| CORE_BASEURL | http://hbf-core:8080 | Core service URL |
| CORE_TOKEN | (secret) | Auth token for Core service |
| REDIS_HOST | redis | Redis hostname |
| KAFKAJS_NO_PARTITIONER_WARNING | 1 | Suppress Kafka partitioner warning |
| HBF_SECRET | (secret) | Shared secret protecting /api/tenants management endpoints |
Docker
# Build
docker build -t hbf-bot .
# Run (local dev)
docker compose up
docker-compose includes Redis and an ngrok tunnel for webhook testing.
CI/CD
- Trigger: push to main/staging/develop
- Pipelines: ci.yml, node.js.yml, release-please.yml
- Steps: SonarQube audit -> Docker build -> Push to ECR -> Deploy to EKS
- Deploy target: AWS EKS (helvia-dev, helvia-stg, helvia)
- Versioning: release-please
Notes
docker-composeincludes ngrok for local webhook testing against external channel APIs.