image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-debian:9-master-46405991

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

stages:
  - test
  - post
  - publish

variables:
  PYTEST_ADDOPTS: "--color=yes"
  INTEGRATION_CACHE: "${CI_PROJECT_DIR}/cache/integration-cache"
  PYTEST_ARGS: "--color=yes --integration -n 2"
  TEST_COMMAND: "tox -- ${PYTEST_ARGS}"
  EXTERNAL_TESTS_COMMAND: "tox -e py{35,36,37}-external -- ${PYTEST_ARGS}"
  COVERAGE_PREFIX: "${CI_JOB_NAME}."


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

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

  before_script:
  # Diagnostics
  - mount
  - df -h
  - tox --version

  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}"
  - su buildstream -c "${EXTERNAL_TESTS_COMMAND}"

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

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

tests-fedora-29:
  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:29-master-47052095
  <<: *tests

tests-fedora-30:
  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:30-master-59168197
  <<: *tests

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

tests-centos-7.6:
  <<: *tests
  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-centos:7.6.1810-master-46405991

overnight-fedora-29-aarch64:
  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:aarch64-29-master-47052095
  tags:
    - aarch64
  <<: *tests
  # We need to override the exclusion from the template
  # in order to run on schedules
  except: []
  only:
  - schedules
  before_script:
    # grpcio needs to be compiled from source on aarch64 so we additionally
    # need a C++ compiler here.
    # FIXME: Ideally this would be provided by the base image. This will be
    # unblocked by https://gitlab.com/BuildStream/buildstream-docker-images/issues/34
    - dnf install -y gcc-c++

tests-unix:
  # Use fedora here, to a) run a test on fedora and b) 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:29-master-47052095
  <<: *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}

tests-fedora-missing-deps:
  # Ensure that tests behave nicely while missing bwrap and ostree
  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:29-master-47052095
  <<: *tests

  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

    - useradd -Um buildstream
    - chown -R buildstream:buildstream .

    - ${TEST_COMMAND}

tests-fedora-update-deps:
  # Check if the tests pass after updating requirements to their latest
  # allowed version.
  allow_failure: true
  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:29-master-47052095
  <<: *tests

  script:
    - useradd -Um buildstream
    - chown -R buildstream:buildstream .

    - make --always-make --directory requirements
    - cat requirements/*.txt

    - su buildstream -c "${TEST_COMMAND}"

tests-remote-execution:
  allow_failure: true
  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:29-master-47052095
  <<: *tests
  before_script:
    - dnf install -y docker docker-compose
    - docker-compose --file ${COMPOSE_MANIFEST} up --detach
  after_script:
    - docker-compose --file ${COMPOSE_MANIFEST} stop
    - docker-compose --file ${COMPOSE_MANIFEST} logs
    - docker-compose --file ${COMPOSE_MANIFEST} down
  services:
    - docker:stable-dind
  variables:
    DOCKER_HOST: tcp://docker:2375
    DOCKER_DRIVER: overlay2
    COMPOSE_MANIFEST: .gitlab-ci/buildgrid-compose.yml
    ARTIFACT_CACHE_SERVICE: http://docker:50052
    REMOTE_EXECUTION_SERVICE: http://docker:50051
    SOURCE_CACHE_SERVICE: http://docker:50052
    PYTEST_ARGS: "--color=yes --remote-execution"


# Lint separately from testing
lint:
  stage: test

  before_script:
  # Diagnostics
  - python3 --version

  script:
  - tox -e lint
  except:
  - schedules

tests-wsl-master:
  stage: test
  variables:
    LC_ALL: C.UTF-8
    LANG: C.UTF-8
  tags:
  - wsl
  before_script:
  - mount
  - df -h
  - PATH=/root/.local/bin:$PATH tox --version
  script:
  - PATH=/root/.local/bin:$PATH ${TEST_COMMAND}
  only:
  - master

tests-wsl-non-master:
  stage: test
  variables:
    LC_ALL: C.UTF-8
    LANG: C.UTF-8
  tags:
  - wsl
  before_script:
  - mount
  - df -h
  - PATH=/root/.local/bin:$PATH tox --version
  script:
  - PATH=/root/.local/bin:$PATH ${TEST_COMMAND}
  when: manual
  except:
  - master

# 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
  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:30-master-59168197
  variables:
    BST_EXT_URL: git+https://gitlab.com/BuildStream/bst-plugins-experimental.git
    BST_EXT_REF: 0.12.0-40-g7aa1423377629281decc455d1090964417c38f2e
    FD_SDK_REF: freedesktop-sdk-18.08.31.1-2-g5c639b8d553016ea6c28ea160a572da2e189745e
  before_script:
  - |
    mkdir -p "${HOME}/.config"
    cat <<EOF >"${HOME}/.config/buildstream.conf"
    scheduler:
      fetchers: 2
    EOF
  - dnf install -y ostree python3-gobject-base
  - pip3 install -r requirements/requirements.txt -r requirements/plugin-requirements.txt
  - pip3 wheel --wheel-dir wheels/ --no-deps .
  - pip3 install --no-index wheels/*
  - 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}
  artifacts:
    paths:
    - "${HOME}/.cache/buildstream/logs"
  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

# Check code quality with gitlab's built-in feature.
#
code_quality:
  image: docker:stable
  stage: test
  variables:
    DOCKER_DRIVER: overlay2
  allow_failure: true
  services:
    - docker:stable-dind
  script:
    - export SP_VERSION=$(echo "$CI_SERVER_VERSION" | sed 's/^\([0-9]*\)\.\([0-9]*\).*/\1-\2-stable/')
    - docker run
        --env SOURCE_CODE="$PWD"
        --volume "$PWD":/code
        --volume /var/run/docker.sock:/var/run/docker.sock
        "registry.gitlab.com/gitlab-org/security-products/codequality:$SP_VERSION" /code
  except:
  - schedules
  artifacts:
    paths: [gl-code-quality-report.json]

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

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

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

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

  - |
    echo "Calculating Raw Metrics"
    radon raw -s -j src/buildstream > analysis/raw.json
    radon raw -s src/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-centos-7.6
  - tests-debian-9
  - tests-fedora-29
  - tests-fedora-30
  - tests-fedora-missing-deps
  - tests-fedora-update-deps
  - tests-remote-execution
  - tests-ubuntu-18.04
  - tests-unix
  except:
  - schedules
  artifacts:
    paths:
    - coverage-sources/
    - coverage-report/

# Deploy, only for merges which land on master branch.
#
pages:
  stage: publish
  dependencies:
  - coverage
  - docs
  variables:
    ACME_DIR: public/.well-known/acme-challenge
    COVERAGE_DIR: public/coverage
  script:
  - mkdir -p ${ACME_DIR}
    # Required to finish the creation of the Let's Encrypt certificate,
    # which allows using https://docs.buildstream.build/ for accessing
    # the documentation.
  - echo ${ACME_CHALLENGE} > ${ACME_DIR}/$(echo ${ACME_CHALLENGE} | cut -c1-43)
  - mkdir -p ${COVERAGE_DIR}
  - cp -a ./coverage-report/ ${COVERAGE_DIR}
  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
