# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#   http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.

version: '3.8'

services:
  iggy-server:
    build:
      context: ../..
      # Use debug build for faster compilation during testing
      dockerfile: Dockerfile.debug
    container_name: iggy-server-python-test
    networks:
      - python-test-network
    ports:
      - "3000:3000"
      - "8080:8080"
      - "8090:8090"
    healthcheck:
      test: ["CMD-SHELL", "timeout 5 bash -c '</dev/tcp/localhost/8090' || exit 1"]
      interval: 5s
      timeout: 5s
      retries: 12
      start_period: 10s
    volumes:
      - iggy-data:/local_data

  python-tests:
    build:
      context: ../..
      dockerfile: foreign/python/Dockerfile.test
    container_name: python-sdk-tests
    depends_on:
      iggy-server:
        condition: service_healthy
    networks:
      - python-test-network
    environment:
      - IGGY_SERVER_HOST=iggy-server
      - IGGY_SERVER_TCP_PORT=8090
      - IGGY_SERVER_HTTP_PORT=3000
      - IGGY_SERVER_QUIC_PORT=8080
      - PYTHONPATH=/workspace/foreign/python
      - PYTEST_ARGS=-v --tb=short
    volumes:
      - ./test-results:/workspace/foreign/python/test-results

networks:
  python-test-network:
    name: python-test-network

volumes:
  iggy-data:
