services:
  function:
    build:
      context: .
      dockerfile: Dockerfile.local
      secrets:
        - GITHUB_NPM_TOKEN
    volumes:
      - ./build:/var/task/
      - ./node_modules:/var/task/node_modules
    ports:
      - "6703:8080"
    platform: linux/amd64
    environment:
      - NODE_ENV=dev
      - ENV=${ENV}
      - LOG_LEVEL=debug
      - DD_LAMBDA_HANDLER=index.handler
      - DD_ENV=dev
      - DD_TRACE_ENABLED=false
      - DD_ENHANCED_METRICS=false
      - GRAPHQL_URL=${GRAPHQL_URL}
      - SNOWFLAKE_ACCOUNT=${SNOWFLAKE_ACCOUNT}
      - SNOWFLAKE_USER=${SNOWFLAKE_USER}
      - SNOWFLAKE_PRIVATE_KEY=${SNOWFLAKE_PRIVATE_KEY}
      - SNOWFLAKE_PRIVATE_KEY_PASSPHRASE=${SNOWFLAKE_PRIVATE_KEY_PASSPHRASE}
      - SNOWFLAKE_DATABASE=${SNOWFLAKE_DATABASE}
      - SNOWFLAKE_WAREHOUSE=${SNOWFLAKE_WAREHOUSE}
      - SNOWFLAKE_SCHEMA=${SNOWFLAKE_SCHEMA}
      - SNOWFLAKE_ROLE=${SNOWFLAKE_ROLE}
      - GITHUB_NPM_TOKEN=/run/secrets/GITHUB_NPM_TOKEN
      - AWS_ACCESS_KEY_ID
      - AWS_DEFAULT_REGION=us-east-1
      - AWS_SECRET_ACCESS_KEY
      - AWS_SESSION_TOKEN
      - AWS_REGION
  lint-and-test:
    build:
      context: .
      dockerfile: Dockerfile.tests
      secrets:
        - GITHUB_NPM_TOKEN
    environment:
      - GITHUB_NPM_TOKEN=/run/secrets/GITHUB_NPM_TOKEN
secrets:
  GITHUB_NPM_TOKEN:
    environment: "GITHUB_NPM_TOKEN"
