Deployment: hbf-client-integrations
Infrastructure config for this service. Full platform deployment:
docs/architecture/deployment.md
Runtime
- Port: configurable via PORT env var
- Base image: node:22-slim (multi-stage)
- Start command:
npm run start:prod - Health check: none defined
Required Environment Variables
| Variable | Example | Description |
|---|---|---|
| PORT | 3000 | Listen port |
| BASE_URL | http://localhost:3000 | Public base URL of this service |
| CORE_URL | http://hbf-core:8080 | Core service URL |
| CORE_TOKEN | (secret) | Auth token for Core service |
| CORE_TOKEN_SECRET | (secret) | Token signing secret |
| DISTRIBUTER_SERVICE_REQUEST_TIMEOUT | 5000 | Timeout for distributor requests (ms) |
Plus many per-integration variables with DEV/UAT/PROD variants for:
- Dynamics 365 (client ID, secret, tenant, resource URL)
- Zendesk (subdomain, credentials)
- Pobuca (API key, endpoint)
- Novibet (API key, endpoint)
Docker
# Build
docker build -t hbf-client-integrations .
# Run (local dev — no docker-compose provided)
docker run -p 3000:3000 --env-file .env hbf-client-integrations
CI/CD
- Trigger: push to main/staging/develop
- Pipelines: ci.yml
- Steps: SonarQube audit -> Docker build -> Push to ECR -> Deploy to EKS
- Deploy target: AWS EKS (helvia-dev, helvia-stg, helvia)
Notes
- 13 enterprise integration modules. Each integration has its own set of env vars, often with DEV/UAT/PROD variants for multi-environment client configurations.
- No
docker-composefile; integrations require external services configured via env vars.