diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8337cb1148e9f8669aecc9a6ab7558c5a08446b9..c9a57798843efdb196f293435c12b0bcd8d031ff 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -47,6 +47,9 @@ stages: # update apt - apt-get update + # create 'ci_deps' folder (if not exists) + - mkdir -pv ci_deps + .license_header_template: &license_header_definition - cd $CI_PROJECT_DIR @@ -83,13 +86,31 @@ stages: - echo "No changes, nothing to commit!" - fi +.install_yamlschemacpp_template: &install_yamlschemacpp_definition + - cd ${CI_PROJECT_DIR}/ci_deps + - if [ -d yaml-schema-cpp ]; then + - echo "directory yaml-schema-cpp exists" + - cd yaml-schema-cpp + - git checkout main + - git pull + - else + - git clone -b main ssh://git@gitlab.iri.upc.edu:2202/labrobotica/algorithms/yaml-schema-cpp.git + - cd yaml-schema-cpp + - fi + - mkdir -pv build + - cd build + - cmake -DCMAKE_BUILD_TYPE=release -DBUILD_TESTS=OFF .. + - make -j$(nproc) + - make install + - ldconfig + .build_and_test_template: &build_and_test_definition - cd $CI_PROJECT_DIR - mkdir -pv build - cd build - cmake -DCMAKE_BUILD_TYPE=release -DBUILD_DEMOS=ON -DBUILD_TESTS=ON .. - make -j$(nproc) - - ctest -j$(nproc) + - ctest -j$(nproc) --output-on-failure # run demos - ../bin/hello_wolf - ../bin/hello_wolf_autoconf @@ -111,6 +132,8 @@ build_and_test:bionic: image: labrobotica/wolf_deps:18.04 script: - *print_variables_definition + - *preliminaries_definition + - *install_yamlschemacpp_definition - *build_and_test_definition ############ UBUNTU 20.04 TESTS ############ @@ -119,6 +142,8 @@ build_and_test:focal: image: labrobotica/wolf_deps:20.04 script: - *print_variables_definition + - *preliminaries_definition + - *install_yamlschemacpp_definition - *build_and_test_definition ############ DEPLOY PLUGINS ANY BRANCY EXCEPT FOR main ############