Skip to main content

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

VariableExampleDescription
PORT3000Listen port
BASE_URLhttp://localhost:3000Public base URL of this service
CORE_URLhttp://hbf-core:8080Core service URL
CORE_TOKEN(secret)Auth token for Core service
CORE_TOKEN_SECRET(secret)Token signing secret
DISTRIBUTER_SERVICE_REQUEST_TIMEOUT5000Timeout 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-compose file; integrations require external services configured via env vars.