stages:
  - pre-checks
  - build
  - 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: registry.gitlab.com/opengeosys/ogs/xunit-to-junit
  PRECOMMIT_IMAGE: registry.gitlab.com/opengeosys/ogs/pre-commit
  # Build config
  BUILD_TYPE: Release
  BUILD_PROCESSES: "" # Empty string: builds all processes

include:
  - template: 'Workflows/MergeRequest-Pipelines.gitlab-ci.yml'
  # extends
  - local: '/scripts/ci/extends/defaults.yml'
  - local: '/scripts/ci/extends/template-build-linux.yml'
  - local: '/scripts/ci/extends/template-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-linux-petsc.yml'
  - local: '/scripts/ci/jobs/build-linux-frontend.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'
  - local: '/scripts/ci/jobs/build-gui-mac.yml'
