# 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.9"
services:
  collector:
    image: ghcr.io/apache/skywalking-agent-test-tool/mock-collector:f4f5ef22b1df623464772816bb6b42ba611444ff
    ports:
      - "19876:19876"
      - "12800:12800"
    healthcheck:
      test: [ "CMD", "curl", "http://0.0.0.0:12800/healthCheck" ]
      interval: 5s
      timeout: 5s

  consumer:
    build:
      context: .
      dockerfile: ./e2e/docker/Dockerfile
    expose:
      - 8082
    command: --mode consumer
    depends_on:
      collector:
        condition: service_healthy
      broker:
        condition: service_healthy
    healthcheck:
      test: [ "CMD", "curl", "http://0.0.0.0:8082/healthCheck" ]
      interval: 5s
      timeout: 5s

  producer:
    build:
      context: .
      dockerfile: ./e2e/docker/Dockerfile
    ports:
      - "8081:8081"
    command: --mode producer
    depends_on:
      collector:
        condition: service_healthy
      consumer:
        condition: service_healthy
      broker:
        condition: service_healthy

  broker:
    image: landoop/fast-data-dev:3.3
    container_name: broker
    ports:
      - "9092:9092"
    healthcheck:
      test: [ "CMD", "nc", "-zv", "0.0.0.0", "9092"]
      interval: 5s
      timeout: 5s
