stages:
  - pre-checks
  - test
  - checks
  - gui
  - package

variables:
  # Docker image names
  CONTAINER_GCC_IMAGE: $CI_REGISTRY_IMAGE/gcc:$CI_COMMIT_REF_SLUG
  CONTAINER_GCC_GUI_IMAGE: $CI_REGISTRY_IMAGE/gcc-gui:$CI_COMMIT_REF_SLUG
  XUNIT_TO_JUNIT_IMAGE: $CI_REGISTRY_IMAGE/xunit-to-junit
  PRECOMMIT_IMAGE: $CI_REGISTRY_IMAGE/pre-commit
  # Build config
  BUILD_TYPE: Release
  BUILD_PROCESSES: "" # Empty string: builds all processes

include:
  # extends
  - local: '/scripts/ci/extends/defaults.yml'
  - local: '/scripts/ci/extends/build.yml'
  - local: '/scripts/ci/extends/build-win.yml'
  - local: '/scripts/ci/extends/container-maker-setup.yml'
  - local: '/scripts/ci/extends/vs2019-environment.yml'
  - local: '/scripts/ci/extends/test-artifacts.yml'
  # jobs
  - local: '/scripts/ci/jobs/pre-commit.yml'
  - local: '/scripts/ci/jobs/build_image.yml'
  - local: '/scripts/ci/jobs/build-linux.yml'
  - local: '/scripts/ci/jobs/build-docs.yml'
  - local: '/scripts/ci/jobs/build-win.yml'
  - local: '/scripts/ci/jobs/build-mac.yml'
  - local: '/scripts/ci/jobs/checks.yml'
  - local: '/scripts/ci/jobs/container.yml'
  - local: '/scripts/ci/jobs/build-gui-linux.yml'
  - local: '/scripts/ci/jobs/build-gui-win.yml'