---

version: '3.4'
services:
  unit:
    build:
      context: .
      target: tobiko
    hostname: tobiko
    environment:
      OS_TEST_PATH: tobiko/tests/unit
      TOX_REPORT_NAME: tobiko_results_unit
    volumes:
      - ./report:/report
      - .:/tobiko
      - ~/.ssh:/root/.ssh

  functional:
    extends:
      service: unit
    environment:
      OS_TEST_PATH: tobiko/tests/functional
      TOX_REPORT_NAME: tobiko_results_functional

  create-workloads:
    extends:
      service: unit
    environment:
      OS_TEST_PATH: tobiko/tests/scenario
      TOX_REPORT_NAME: tobiko_results_create_workloads

  disrupt-services:
    extends:
      service: unit
    environment:
      OS_TEST_PATH: tobiko/tests/faults
      TOX_REPORT_NAME: tobiko_results_disrupt_services

  verify-workloads:
    extends:
      service: create-workloads
    environment:
      PREVENT_CREATE: 'true'
      TOX_REPORT_NAME: tobiko_results_verify_workloads

  verify-services:
    extends:
      service: unit
    environment:
      OS_TEST_PATH: tobiko/tests/sanity
      TOX_REPORT_NAME: tobiko_results_verify_services

  infrared:
    build:
      context: infrared_plugin
      target: tobiko-infrared
    hostname: tobiko-infrared
    environment:
      IR_EXTRA_ARGS: --tobiko-src-dir /tobiko
    volumes:
      - ./report:/report
      - .:/tobiko
      - ./infrared_plugin:/tobiko-infrared
      - ~/.ssh:/root/.ssh