version: '3.4'

x-tests-template: &tests-template
    image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:32-${CI_IMAGE_VERSION:-latest}
    command: tox -vvvvv -- --color=yes --integration -n 4
    environment:
      TOXENV: ${CI_TOXENV_ALL}

    # Enable privileges to run the sandbox
    #
    privileged: true
    devices:
      - /dev/fuse:/dev/fuse

    # Mount the local directory and set the working directory
    # to run the tests from.
    #
    volumes:
      - ../..:/home/testuser/buildstream
    working_dir: /home/testuser/buildstream


services:

  fedora-32:
    <<: *tests-template

  fedora-33:
    <<: *tests-template
    image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:33-${CI_IMAGE_VERSION:-latest}

  debian-10:
    <<: *tests-template
    image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-debian:10-${CI_IMAGE_VERSION:-latest}

  ubuntu-18.04:
    <<: *tests-template
    image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-ubuntu:18.04-${CI_IMAGE_VERSION:-latest}

  centos-7.7.1908:
    <<: *tests-template
    image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-centos:7.7.1908-${CI_IMAGE_VERSION:-latest}

  # Ensure that tests also pass in the absence of a sandboxing tool
  fedora-missing-deps:
    <<: *tests-template
    image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:minimal-${CI_IMAGE_VERSION:-latest}

  # Ensure that tests also pass without `--develop` flag
  no-usedevelop:
    <<: *tests-template
    environment:
      TOXENV: py36-nocover,py37-nocover,py38-nocover

  # Test the master version of external plugins
  plugins-master:
    <<: *tests-template
    environment:
      BST_PLUGINS_EXPERIMENTAL_VERSION: master

  buildgrid:
    <<: *tests-template
    command: tox -vvvvv -- --color=yes --remote-execution
    environment:
      TOXENV: ${CI_TOXENV_MAIN}
      ARTIFACT_CACHE_SERVICE: http://localhost:50052
      REMOTE_EXECUTION_SERVICE: http://localhost:50051
      SOURCE_CACHE_SERVICE: http://localhost:50052

    # We need to use host networking mode in order to be able to
    # properly resolve services exposed by adjacent containers.
    #
    network_mode: host

  bst-artifact-server:
    <<: *tests-template
    command: tox -vvvvv -- --color=yes --remote-cache
    environment:
      TOXENV: ${CI_TOXENV_MAIN}
      ARTIFACT_CACHE_SERVICE: http://localhost:50052

    # We need to use host networking mode in order to be able to
    # properly resolve services exposed by adjacent containers.
    #
    network_mode: host

  buildbarn:
    <<: *tests-template
    command: tox -vvvvv -- --color=yes --remote-cache
    environment:
      TOXENV: ${CI_TOXENV_MAIN}
      ARTIFACT_INDEX_SERVICE: http://localhost:7981
      ARTIFACT_STORAGE_SERVICE: http://localhost:7982

    # We need to use host networking mode in order to be able to
    # properly resolve services exposed by adjacent containers.
    #
    network_mode: host

  docs:
    <<: *tests-template
    command: tox -e docs
    environment:
      BST_FORCE_SESSION_REBUILD: 1

  lint:
    <<: *tests-template
    command: tox -e lint

  mypy:
    <<: *tests-template
    command: tox -e mypy
