---
services:
  function:
    build:
      context: .
      target: local
      args:
        version: "local-dev"
    volumes:
      - ./src:/var/task/src
      - ./config.py:/var/task/config.py
    ports:
      - "9000:8080"
    environment:
      - DD_LAMBDA_HANDLER=src.app.handler
      - DD_ENV=dev
      - DD_SERVICE=fanout_event
      - DD_TRACE_ENABLED=false
      - DD_ENHANCED_METRICS=false
      - Environment=dev
      - STREAM_API_KEY="${STREAM_API_KEY}"
      - STREAM_API_SECRET="${STREAM_API_SECRET}"
      - STREAM_API_REGION="${STREAM_API_REGION}"
  lint-and-test:
    build:
      context: .
      target: test
    volumes:
      - ./reports:/var/task/reports
    entrypoint:
      - "/var/task/lint-and-test.sh"
  integration-test:
    build:
      context: .
      target: test
    environment:
      - Environment=qa
      - AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
      - AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
      - AWS_SESSION_TOKEN=${AWS_SESSION_TOKEN}
      - AWS_REGION=${AWS_REGION:-us-east-1}
    entrypoint:
      - "/var/task/integration-test.sh"
