include: # Metadata shared my many jobs - local: .gitlab/rules.yml - local: .gitlab/artifacts.yml # OS builds. - local: .gitlab/os-linux.yml - local: .gitlab/os-macos.yml - local: .gitlab/os-windows.yml stages: - build - test - test-ext ################################################################################ # Job declarations # # Each job must pull in each of the following keys: # # - a "base image" # - a build script # - tags for the jobs # - rules for when to run the job # # Additionally, jobs may also contain: # # - artifacts # - dependency/needs jobs for required jobs ################################################################################ # Lint builds build:debian10-iwyu: extends: - .debian10_iwyu - .cmake_build_linux - .linux_builder_tags - .run_automatically build:fedora31-tidy: extends: - .fedora31_tidy - .cmake_build_linux - .linux_builder_tags_qt - .run_automatically build:fedora31-sphinx: extends: - .fedora31_sphinx - .cmake_build_linux - .linux_builder_tags_qt - .run_automatically # Linux builds build:centos6-release: extends: - .release_linux - .cmake_build_release_linux - .cmake_release_artifacts - .linux_builder_tags - .run_manually test:fedora31-makefiles: extends: - .fedora31_makefiles - .cmake_test_linux_package - .linux_builder_tags_qt - .run_automatically dependencies: - build:centos6-release needs: - build:centos6-release test:cuda10.2-nvidia: extends: - .cuda10.2_nvidia - .cmake_test_linux_package - .linux_builder_tags_cuda - .run_automatically dependencies: - build:centos6-release needs: - build:centos6-release build:fedora31-ninja: extends: - .fedora31_ninja - .cmake_build_linux - .cmake_build_artifacts - .linux_builder_tags_qt - .run_manually test:fedora31-ninja: extends: - .fedora31_ninja - .cmake_test_linux - .linux_builder_tags_qt - .cmake_test_artifacts - .run_automatically dependencies: - build:fedora31-ninja needs: - build:fedora31-ninja test:fedora31-ninja-multi: extends: - .fedora31_ninja_multi - .cmake_test_linux_external - .linux_builder_tags_qt - .run_automatically dependencies: - test:fedora31-ninja needs: - test:fedora31-ninja # macOS builds build:macos-ninja: extends: - .macos_ninja - .cmake_build_macos - .cmake_build_artifacts - .macos_builder_tags - .run_manually test:macos-ninja: extends: - .macos_ninja - .cmake_test_macos - .cmake_test_artifacts - .macos_builder_tags - .run_automatically dependencies: - build:macos-ninja needs: - build:macos-ninja build:macos-makefiles: extends: - .macos_makefiles - .cmake_build_macos - .cmake_build_artifacts - .macos_builder_tags - .run_manually test:macos-makefiles: extends: - .macos_makefiles - .cmake_test_macos - .macos_builder_tags - .run_automatically dependencies: - build:macos-makefiles needs: - build:macos-makefiles test:macos-xcode: extends: - .macos_xcode - .cmake_test_macos_external - .macos_builder_ext_tags - .run_automatically dependencies: - test:macos-ninja needs: - test:macos-ninja # Windows builds build:windows-vs2019-x64-ninja: extends: - .windows_vs2019_x64_ninja - .cmake_build_windows - .cmake_build_artifacts - .windows_builder_tags - .run_manually test:windows-vs2019-x64-ninja: extends: - .windows_vs2019_x64_ninja - .cmake_test_windows - .windows_builder_tags - .cmake_test_artifacts - .run_automatically dependencies: - build:windows-vs2019-x64-ninja needs: - build:windows-vs2019-x64-ninja test:windows-vs2019-x64: extends: - .windows_vs2019_x64 - .cmake_test_windows_external - .windows_builder_ext_tags - .run_automatically dependencies: - test:windows-vs2019-x64-ninja needs: - test:windows-vs2019-x64-ninja