# Compose v2 - Billing fees

x-common-env: &common-env
  env_file:
    - ../env/.env.runtime
    - ../env/.env.version

networks:
  sendico-net:
    external: true
    name: sendico-net

services:
  sendico_billing_fees:
    <<: *common-env
    container_name: sendico-billing-fees
    restart: unless-stopped
    image: ${REGISTRY_URL}/billing/fees:${APP_V}
    pull_policy: always
    environment:
      FEES_MONGO_HOST: ${FEES_MONGO_HOST}
      FEES_MONGO_PORT: ${FEES_MONGO_PORT}
      FEES_MONGO_DATABASE: ${FEES_MONGO_DATABASE}
      FEES_MONGO_USER: ${FEES_MONGO_USER}
      FEES_MONGO_PASSWORD: ${FEES_MONGO_PASSWORD}
      FEES_MONGO_AUTH_SOURCE: ${FEES_MONGO_AUTH_SOURCE}
      FEES_MONGO_REPLICA_SET: ${FEES_MONGO_REPLICA_SET}
      FEES_GRPC_PORT: ${FEES_GRPC_PORT}
      FEES_METRICS_PORT: ${FEES_METRICS_PORT}
      NATS_URL: ${NATS_URL}
      NATS_HOST: ${NATS_HOST}
      NATS_PORT: ${NATS_PORT}
      NATS_USER: ${NATS_USER}
      NATS_PASSWORD: ${NATS_PASSWORD}
    command: ["--config.file", "/app/config.yml"]
    ports:
      - "0.0.0.0:${FEES_GRPC_PORT}:50060"
      - "0.0.0.0:${FEES_METRICS_PORT}:${FEES_METRICS_PORT}"
    healthcheck:
      test: ["CMD-SHELL","wget -qO- http://localhost:${FEES_METRICS_PORT}/health | grep -q '\"status\":\"ok\"'"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 60s
    networks:
      - sendico-net
