blob: 3fa3f55fb61e67fde1c5a8db8efc7ad3da01560c [file] [log] [blame]
include:
# Metadata shared my many jobs
- local: .gitlab/rules.yml
- local: .gitlab/artifacts.yml
# OS builds.
- local: .gitlab/os-unix.yml
- local: .gitlab/os-linux.yml
- local: .gitlab/os-macos.yml
- local: .gitlab/os-windows.yml
stages:
- build
- test
- test-ext
# Lint builds
build:debian10-iwyu:
<<:
- *debian10_iwyu
- *cmake_build_unix
- *linux_builder_tags
rules: *rules_settings
build:fedora31-tidy:
<<:
- *fedora31_tidy
- *cmake_build_unix
- *linux_builder_tags_qt
rules: *rules_settings
build:fedora31-sphinx:
<<:
- *fedora31_sphinx
- *cmake_build_unix
- *linux_builder_tags_qt
rules: *rules_settings
# Linux builds
build:centos6-release:
<<:
- *release_linux
- *cmake_build_release_linux
- *cmake_release_artifacts
- *linux_builder_tags
rules: *manual_rules_settings
test:fedora31-makefiles:
<<:
- *fedora31_makefiles
- *cmake_test_linux_package
- *linux_builder_tags_qt
rules: *rules_settings
dependencies:
- build:centos6-release
needs:
- build:centos6-release
test:cuda10.2-nvidia:
<<:
- *cuda10_2_nvidia
- *cmake_test_linux_package
- *linux_builder_tags_cuda
rules: *rules_settings
dependencies:
- build:centos6-release
needs:
- build:centos6-release
build:fedora31-ninja:
<<:
- *fedora31_ninja
- *cmake_build_unix
- *cmake_build_artifacts
- *linux_builder_tags_qt
rules: *manual_rules_settings
test:fedora31-ninja:
<<:
- *fedora31_ninja
- *cmake_test_unix
- *linux_builder_tags_qt
- *cmake_test_artifacts
rules: *rules_settings
dependencies:
- build:fedora31-ninja
needs:
- build:fedora31-ninja
test:fedora31-ninja-multi:
<<:
- *fedora31_ninja_multi
- *cmake_test_linux_external
- *linux_builder_tags_qt
rules: *rules_settings
dependencies:
- test:fedora31-ninja
needs:
- test:fedora31-ninja
# macOS builds
build:macos-ninja:
<<:
- *macos_ninja
- *cmake_build_unix
- *cmake_build_artifacts
- *macos_builder_tags
rules: *manual_rules_settings
test:macos-ninja:
<<:
- *macos_ninja
- *cmake_test_unix
- *cmake_test_artifacts
- *macos_builder_tags
rules: *rules_settings
dependencies:
- build:macos-ninja
needs:
- build:macos-ninja
build:macos-makefiles:
<<:
- *macos_makefiles
- *cmake_build_unix
- *cmake_build_artifacts
- *macos_builder_tags
rules: *manual_rules_settings
test:macos-makefiles:
<<:
- *macos_makefiles
- *cmake_test_unix
- *macos_builder_tags
rules: *rules_settings
dependencies:
- build:macos-makefiles
needs:
- build:macos-makefiles
test:macos-xcode:
<<:
- *macos_xcode
- *cmake_test_macos_external
- *macos_builder_ext_tags
rules: *rules_settings
dependencies:
- test:macos-ninja
needs:
- test:macos-ninja
# Windows builds
build:windows-vs2019-x64-ninja:
<<:
- *windows_vs2019_x64_ninja
- *cmake_build_windows
- *cmake_build_artifacts
- *windows_builder_tags
rules: *manual_rules_settings
test:windows-vs2019-x64-ninja:
<<:
- *windows_vs2019_x64_ninja
- *cmake_test_windows
- *windows_builder_tags
- *cmake_test_artifacts
rules: *rules_settings
dependencies:
- build:windows-vs2019-x64-ninja
needs:
- build:windows-vs2019-x64-ninja
test:windows-vs2019-x64:
<<:
- *windows_vs2019_x64
- *cmake_test_windows_external
- *windows_builder_ext_tags
rules: *rules_settings
dependencies:
- test:windows-vs2019-x64-ninja
needs:
- test:windows-vs2019-x64-ninja