---
services:
  dev:
    platform: linux/amd64
    build:
      context: .
      target: deploy
    volumes:
      - ./src:/var/task/src
    ports:
      - "9000:8080"
    environment:
      - DD_ENV=dev
      - DD_SERVICE=trigger-spatial-transcoding
      - DD_TRACE_ENABLED=false
      - DD_ENHANCED_METRICS=false
      - AWS_ACCESS_KEY_ID
      - AWS_SECRET_ACCESS_KEY
      - AWS_SESSION_TOKEN
      - AWS_REGION
      - AWS_DEFAULT_REGION=us-east-1
      - ENVIRONMENT
      - SENTRY_DSN
      - LOGGING_LEVEL
      - LAMBDA_TASK_ROOT=/var/task

  lint-and-test:
    platform: linux/amd64
    build:
      context: .
      target: unit-lint
    environment:
      - SKIP_LINT=0
      - SKIP_TYPE_CHECKS=0
      - SKIP_TESTS=0
      - TEST_ARGS=
      - HOME=/tmp
    volumes:
      - ./build:/var/app/build

  format:
    platform: linux/amd64
    user: "${UID:-0}:${GID:-0}"
    build:
      context: .
      target: format
    environment:
      - HOME=/tmp
    volumes:
      - ./src:/var/app/src
      - ./tests:/var/app/tests

  update-lockfile:
    platform: linux/amd64
    build:
      context: .
      target: update-lockfile
    volumes:
      - ./poetry.lock:/var/app/poetry.lock
