Commit 4e55e4fd authored by GILLES Sebastien's avatar GILLES Sebastien
Browse files

#1397 Delete temporary Yaml file and incorporate new macos jobs in the usual...

#1397 Delete temporary Yaml file and incorporate new macos jobs in the usual one. Tags have been added to 'specialize' mac runners in order to speed up jobs.
parent 6b31f74b
Pipeline #71572 failed with stages
in 35 minutes and 40 seconds
stages:
- build_and_test
- check_warnings
# - analysis
# - documentation
# - deploy
# Todo: Doxygen doc should be published with pages.
.build_template_linux: &build_template_linux
stage: build_and_test
image: registry.gitlab.inria.fr/morefem/thirdpartycompilationfactory/${OS}-${COMPILER}-${MODE}
cache:
key: "cache_${CI_COMMIT_REF_SLUG}_${OS}-${COMPILER}-${MODE}-${LIB_NATURE}-${IS_ONLY_ONE_LIB}"
untracked: true
paths:
- build
artifacts:
name: "artifact_${CI_COMMIT_REF_SLUG}_${OS}-${COMPILER}-${MODE}-${LIB_NATURE}-${IS_ONLY_ONE_LIB}"
expire_in: 8 hours
paths:
- build/compilation.log
script:
- mkdir -p build
- cd build && python ../cmake/Scripts/configure_cmake.py --cache_file=../cmake/PreCache/linux.cmake --cmake_args="-G Ninja" --third_party_directory=/opt --mode=${MODE} --library_type=${LIB_NATURE} --morefem_as_single_library=${IS_ONLY_ONE_LIB}
- ninja |& tee compilation.log
- ninja test # as artifact are limited in size, I can't unfortunately use a separate stage...
.build_template_macos: &build_template_macos
stage: build_and_test
tags:
- macos
cache:
key: "cache_${CI_COMMIT_REF_SLUG}_${OS}-${COMPILER}-${MODE}-${LIB_NATURE}-${IS_ONLY_ONE_LIB}"
untracked: true
paths:
- build
artifacts:
name: "artifact_${CI_COMMIT_REF_SLUG}_${OS}-${COMPILER}-${MODE}-${LIB_NATURE}-${IS_ONLY_ONE_LIB}"
expire_in: 8 hours
paths:
- build/compilation.log
script:
- mkdir -p build
- source activate Python3
- cd build && python ../cmake/Scripts/configure_cmake.py --cache_file=../cmake/PreCache/macos_apple_clang.cmake --cmake_args="-G Ninja" --third_party_directory=/Volumes/Data/ci/opt/${MODE} --mode=${MODE} --library_type=${LIB_NATURE} --morefem_as_single_library=${IS_ONLY_ONE_LIB}
- ninja 2>&1 | tee compilation.log
#- ninja test # as artifact are limited in size, I can't unfortunately use a separate stage...
.run_doxygen_template: &run_doxygen_template
stage: build_and_test
image: ubuntu:latest
artifacts:
name: "artifact_run_doxygen_${CI_COMMIT_REF_SLUG}_${DOX}"
expire_in: 2 hours
paths:
- Documentation/Doxygen/${OUTPUT_FILE}
before_script:
- apt-get update -y
- apt-get install -y doxygen graphviz libjs-mathjax
script:
- cd Documentation/Doxygen
- doxygen ${DOX}
.check_compilation_warning_template: &check_compilation_warning_template
stage: check_warnings
image: alpine:latest
before_script:
- apk add --update python python-dev && rm -rf /var/cache/apk/*
# dependencies: in the instantiations!
script:
- python Scripts/Tools/find_warning_in_compilation_log.py --log build/compilation.log
allow_failure: true
.check_doxygen_warning_template: &check_doxygen_warning_template
stage: check_warnings
image: alpine:latest
artifacts:
name: "artifact_check_warning_doxygen_${CI_COMMIT_REF_SLUG}_${DOXYGEN_OUTPUT_FILE}"
when: on_failure
expire_in: 2 hours
paths:
- filtered_doxygen_log.txt
before_script:
- apk add --update python python-dev && rm -rf /var/cache/apk/*
# dependencies: in the instantiations!
script:
- python Scripts/Tools/find_warning_in_doxygen_log.py --log Documentation/Doxygen/${DOXYGEN_OUTPUT_FILE}
allow_failure: true
# .test_template: &test_template
# stage: check_warnings
# image: registry.gitlab.inria.fr/morefem/thirdpartycompilationfactory/${OS}-${COMPILER}-${MODE}:latest
# cache:
# key: "${CI_COMMIT_REF_SLUG}_${OS}-${COMPILER}-${MODE}-${LIB_NATURE}-UniqueLib_${IS_ONLY_ONE_LIB}"
# untracked: true
# paths:
# - build
# script:
# - cd build && ctest
build-macos-clang-debug-static-one_lib:
<<: *build_template_macos
variables:
OS: "macOS"
COMPILER: "clang"
MODE: "debug"
LIB_NATURE: "static"
IS_ONLY_ONE_LIB: "True"
check_warning_macos-clang-debug-static-one_lib:
<<: *check_compilation_warning_template
dependencies:
- build-macos-clang-debug-static-one_lib
variables:
OS: "macOS"
COMPILER: "clang"
MODE: "debug"
LIB_NATURE: "static"
IS_ONLY_ONE_LIB: "True"
build-macos-clang-debug-shared-several_libs:
<<: *build_template_macos
variables:
OS: "macOS"
COMPILER: "clang"
MODE: "debug"
LIB_NATURE: "shared"
IS_ONLY_ONE_LIB: "False"
check_warning-macos-clang-debug-shared-several_libs:
<<: *check_compilation_warning_template
dependencies:
- build-macos-clang-debug-shared-several_libs
variables:
OS: "macOS"
COMPILER: "clang"
MODE: "debug"
LIB_NATURE: "shared"
IS_ONLY_ONE_LIB: "False"
build-macos-clang-release-static-one_lib:
<<: *build_template_macos
variables:
OS: "macOS"
COMPILER: "clang"
MODE: "release"
LIB_NATURE: "static"
IS_ONLY_ONE_LIB: "True"
check_warning_macos-clang-release-static-one_lib:
<<: *check_compilation_warning_template
dependencies:
- build-macos-clang-release-static-one_lib
variables:
OS: "macOS"
COMPILER: "clang"
MODE: "release"
LIB_NATURE: "static"
IS_ONLY_ONE_LIB: "True"
complete_doxygen:
<<: *run_doxygen_template
variables:
DOX: "complete_dev_guide.dox"
OUTPUT_FILE: "complete.log"
check_warning_complete_doxygen:
<<: *check_doxygen_warning_template
dependencies:
- complete_doxygen
variables:
DOXYGEN_OUTPUT_FILE: "complete.log"
# Pages doesn't work as invoked from a subgroup (not supported yet in gitlab)
# pages:
# stage: deploy
# cache:
# key: "$CI_COMMIT_REF_SLUG_doxygen"
# untracked: true
# paths:
# - Documentation/Doxygen
# before_script:
# - mkdir -p public
# tags:
# - linux
# - debug
# script:
# - cd Documentation/Doxygen
# - mv Complete/* ../../public/
# artifacts:
# paths:
# - public
......@@ -29,8 +29,6 @@ stages:
.build_template_macos: &build_template_macos
stage: build_and_test
tags:
- macos
cache:
key: "cache_${CI_COMMIT_REF_SLUG}_${OS}-${COMPILER}-${MODE}-${LIB_NATURE}-${IS_ONLY_ONE_LIB}"
untracked: true
......@@ -221,6 +219,10 @@ check_warning_Fedora-gcc-debug-static-one_lib:
build-macos-clang-debug-static-one_lib:
<<: *build_template_macos
tags:
- macos
- debug
- static
variables:
OS: "macOS"
COMPILER: "clang"
......@@ -238,7 +240,60 @@ check_warning_macos-clang-debug-static-one_lib:
COMPILER: "clang"
MODE: "debug"
LIB_NATURE: "static"
IS_ONLY_ONE_LIB: "True"
IS_ONLY_ONE_LIB: "True"
build-macos-clang-debug-shared-several_libs:
<<: *build_template_macos
tags:
- macos
- debug
- shared
variables:
OS: "macOS"
COMPILER: "clang"
MODE: "debug"
LIB_NATURE: "shared"
IS_ONLY_ONE_LIB: "False"
check_warning-macos-clang-debug-shared-several_libs:
<<: *check_compilation_warning_template
dependencies:
- build-macos-clang-debug-shared-several_libs
variables:
OS: "macOS"
COMPILER: "clang"
MODE: "debug"
LIB_NATURE: "shared"
IS_ONLY_ONE_LIB: "False"
build-macos-clang-release-static-one_lib:
<<: *build_template_macos
tags:
- macos
- release
- static
variables:
OS: "macOS"
COMPILER: "clang"
MODE: "release"
LIB_NATURE: "static"
IS_ONLY_ONE_LIB: "True"
check_warning_macos-clang-release-static-one_lib:
<<: *check_compilation_warning_template
dependencies:
- build-macos-clang-release-static-one_lib
variables:
OS: "macOS"
COMPILER: "clang"
MODE: "release"
LIB_NATURE: "static"
IS_ONLY_ONE_LIB: "True"
complete_doxygen:
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment