FAQ | This is a LIVE service | Changelog

Skip to content
Snippets Groups Projects
.gitlab-ci.yml 1.73 KiB
Newer Older
Dr Rich Wareham's avatar
Dr Rich Wareham committed
# This file pulls in the GitLab AutoDevOps configuration[1] via an include
# directive and then overrides bits. The rationale for this is we'd like this
# file to eventually have zero local overrides so that we can use the AutoDevOps
# pipeline as-is.

include:
  # Bring in the AutoDevOps template from GitLab.
  - template: Auto-DevOps.gitlab-ci.yml
Dr Rich Wareham's avatar
Dr Rich Wareham committed

variables:
  # Disable bits of the AutoDevOps pipeline which we don't use.
  CODE_QUALITY_DISABLED: "true"
  LICENSE_MANAGEMENT_DISABLED: "true"
  PERFORMANCE_DISABLED: "true"
  SAST_DISABLED: "true"
  DEPENDENCY_SCANNING_DISABLED: "true"
  CONTAINER_SCANNING_DISABLED: "true"
  DAST_DISABLED: "true"
  REVIEW_DISABLED: "true"

# Note: this environment contains only the configuration which differs from the
# AutoDevOps "test" environment.
test:
  image: docker:stable-git

  services:
    - docker:stable-dind

  before_script:
    # Show some information on the docker install
    - docker info

  script:
    # Configure the test environment to be able to run docker-compose.
    - setup_docker
    - apk add bash py-pip
    - pip install docker-compose

    # The ./tox.sh script will build the image implicitly if it thinks it is out
    # of date but we do it explicitly here to fail early if there is an issue
    # with the image.
    - ./compose.sh tox build

    # Run the tests.
    - ./tox.sh

  # Look for the summary line output from coverage's text report. The
  # parentheses are used to indicate which portion of the report contains the
  # coverage percentage.
  coverage: '/^TOTAL\s+\d+\s+\d+\s+(\d+)%$/'

  variables:
    # Disable to bind mounting of the repository inside the tox container. This
    # allows us to test the code which ended up in the production image.
    DISABLE_BIND_MOUNT: "true"