include:
  - template: Code-Quality.gitlab-ci.yml

image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-debian:10-${DOCKER_IMAGE_VERSION}


cache:
  key: "$CI_JOB_NAME-"
  paths:
    - cache/

stages:
  - test
  - post

variables:
  DOCKER_IMAGE_VERSION: master-132813612
  INTEGRATION_CACHE: "${CI_PROJECT_DIR}/cache/integration-cache"
  TEST_COMMAND: "tox -- --color=yes --integration"
  COVERAGE_PREFIX: "${CI_JOB_NAME}."


#####################################################
#                    Test stage                     #
#####################################################

# Run premerge commits
#
.tests-template: &tests
  stage: test

  before_script:
  # Diagnostics
  - mount
  - df -h

  script:
  - mkdir -p "${INTEGRATION_CACHE}"
  - useradd -Um buildstream
  - chown -R buildstream:buildstream .

  # Run the tests as a simple user to test for permission issues
  - su buildstream -c "${TEST_COMMAND}"

  except:
  - schedules
  artifacts:
    paths:
    - .coverage-reports

tests-debian-9:
  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-debian:9-master-55318540
  <<: *tests

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

tests-fedora-30:
  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:30-${DOCKER_IMAGE_VERSION}
  <<: *tests

tests-fedora-31:
  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:31-${DOCKER_IMAGE_VERSION}
  <<: *tests

tests-ubuntu-18.04:
  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-ubuntu:18.04-master-55318540
  <<: *tests

tests-python-3.8-buster:
  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-python:3.8-buster-master-114538533
  <<: *tests
  variables:
    # This particular testsuite image has both Python 3.7 and Python 3.8 so we
    # need to explicitly force the 3.8 environment.
    # Once Python 3.8 is available in distros, we should switch to such an

    # Our testsuite has issues with coverage on Python 3.8 so disable coverage
    # in the meantime. For more details, see
    # https://gitlab.com/BuildStream/buildstream/issues/1173.
    TOXENV: py38-nocover

tests-unix:
  # Use fedora here, to ensure that we
  # can get rid of ostree - this is not possible with debian-8
  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:31-${DOCKER_IMAGE_VERSION}
  <<: *tests
  variables:
    BST_FORCE_BACKEND: "unix"

  script:

    # We remove the Bubblewrap and OSTree packages here so that we catch any
    # codepaths that try to use them. Removing OSTree causes fuse-libs to
    # disappear unless we mark it as user-installed.
    - dnf mark install fuse-libs systemd-udev
    - dnf erase -y bubblewrap ostree

    # Since the unix platform is required to run as root, no user change required
    - ${TEST_COMMAND}


# Automatically build documentation for every commit, we want to know
# if building documentation fails even if we're not deploying it.
docs:
  stage: test
  variables:
    BST_FORCE_SESSION_REBUILD: 1
  script:
  - env BST_SOURCE_CACHE="$(pwd)/cache/integration-cache/sources" tox -e docs
  - mv doc/build/html public
  except:
  - schedules
  artifacts:
    paths:
    - public/

.overnight-tests: &overnight-tests-template
  stage: test
  variables:
    bst_ext_url: git+https://gitlab.com/BuildStream/bst-external.git
    bst_ext_ref: 0.20.0-0-g88f90d93916853612cad0c965b724a1decbbc940
    fd_sdk_ref: freedesktop-sdk-19.08.9-0-g076fe9d30f37224a1bd756a177e33399dad37e8d
  before_script:
  - pip3 install -r requirements/requirements.txt -r requirements/plugin-requirements.txt
  - pip3 install --no-index .
  - pip3 install --user -e ${bst_ext_url}@${bst_ext_ref}#egg=bst_ext
  - git clone https://gitlab.com/freedesktop-sdk/freedesktop-sdk.git
  - git -C freedesktop-sdk checkout ${fd_sdk_ref}
  only:
  - schedules

overnight-tests:
  <<: *overnight-tests-template
  script:
  - make -C freedesktop-sdk
  tags:
  - overnight-tests

overnight-tests-no-cache:
  <<: *overnight-tests-template
  script:
  - sed -i '/artifacts:/,+1 d' freedesktop-sdk/project.conf
  - make -C freedesktop-sdk
  tags:
  - overnight-tests

#####################################################
#                    Post stage                     #
#####################################################

analysis:
  stage: post
  script:
  - |
    pip3 install radon
    mkdir analysis

  - |
    echo "Calculating Maintainability Index"
    radon mi -s -j buildstream > analysis/mi.json
    radon mi -s buildstream

  - |
    echo "Calculating Cyclomatic Complexity"
    radon cc -a -s -j buildstream > analysis/cc.json
    radon cc -a -s buildstream

  - |
    echo "Calculating Raw Metrics"
    radon raw -s -j buildstream > analysis/raw.json
    radon raw -s buildstream

  except:
  - schedules
  artifacts:
    paths:
    - analysis/

# Collate coverage reports
#
coverage:
  stage: post
  coverage: '/TOTAL +\d+ +\d+ +(\d+\.\d+)%/'
  script:
    - cp -a .coverage-reports/ ./coverage-sources
    - tox -e coverage
    - cp -a .coverage-reports/ ./coverage-report
  dependencies:
  - tests-debian-9
  - tests-debian-10
  - tests-fedora-30
  - tests-fedora-31
  - tests-ubuntu-18.04
  - tests-unix
  except:
  - schedules

# Deploy, only for merges which land on master branch.
#
pages:
  stage: post
  dependencies:
  - docs
  script:
  - find public/
  artifacts:
    paths:
    - public/
  only:
  #
  # FIXME:
  #
  # Ideally we want to publish to a different subdir of
  # pages depending on which stable branch we are building here,
  # not currently automatically supported but can be worked around.
  #
  # See https://gitlab.com/gitlab-org/gitlab-ce/issues/35141
  #
  - master
  except:
  - schedules
