version: "3.7"
services:
  app:
    build:
      context: .
      target: main
      args:
        - POEDITOR_PROJECT_ID=$POEDITOR_PROJECT_ID
      secrets:
        - source: poeditor_api_token
      platforms:
        - linux/arm64
        - linux/amd64
    env_file:
      - .env
    environment:
      - DD_AGENT_HOST=$DD_AGENT_HOST
      - DD_ENV=dev
      - DD_SERVICE=daemon-notifications-delivery
      - DD_TRACE_ENABLED=$DD_TRACE_ENABLED
      - DD_ENHANCED_METRICS=true
      - ENVIRONMENT=dev
      - AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID
      - AWS_DEFAULT_REGION=$AWS_DEFAULT_REGION
      - AWS_REGION=$AWS_REGION
      - AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY
      - AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN
    volumes:
      - .:/var/app
    healthcheck:
      test: /var/app/conf/healthcheck.sh
      interval: 10s
      timeout: 5s
      retries: 3
      start_period: 60s

  datadog_agent:
    profiles:
      - datadog
    image: datadog/agent:latest
    env_file:
      - .env
    environment:
      - DD_APM_ENABLED=true
      - DD_LOGS_ENABLED=true
      - DD_LOGS_CONFIG_CONTAINER_COLLECT_ALL=true
      - DD_AC_INCLUDE="name:app"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
      - /proc/:/host/proc/:ro
      - /sys/fs/cgroup/:/host/sys/fs/cgroup:ro
    ports:
      - "8126:8126/tcp"

secrets:
  poeditor_api_token:
    environment: "POEDITOR_API_TOKEN"
