X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/774a15dc5c7dfbe89c34fd9e31701a522e1335e0..HEAD:/.gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 6c945b26ac..bbf969ba45 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,27 +1,104 @@ -image: debian:testing-slim +image: simgrid/build-deps -.build: &build +stages: + - build + - deploy + +ctest-debug: + stage: build + except: + - stable script: - - apt-get update >/dev/null - - apt-get install -y python3-pip cmake doxygen libboost-all-dev libboost-dev fig2dev >/dev/null - - pip3 install --requirement docs/requirements.txt - - cmake -Denable_documentation=ON . - - make documentation - - mkdir docs/doxyoutput - - cp -r doc/xml docs/doxyoutput - - cd docs - - sphinx-build -M html source/ build/ - - mv build/html ../public + - apt-get --allow-releaseinfo-change update + - apt install -y binutils xsltproc + - cmake -Denable_model-checking=OFF -Denable_documentation=OFF -Denable_coverage=OFF -Denable_compile_optimizations=ON -Denable_smpi=ON -Denable_testsuite_smpi_MPICH3=ON -Denable_testsuite_McMini=ON -Denable_compile_warnings=ON -DLTO_EXTRA_FLAG="auto" . + - make -j$(nproc) VERBOSE=1 all tests + - ctest -T Test -j$(nproc) --output-on-failure + - xsltproc ./tools/jenkins/ctest2junit.xsl Testing/"$( head -n 1 < Testing/TAG )"/Test.xml > CTestResults.xml artifacts: paths: - - public + - lib/ + reports: + junit: + - CTestResults.xml + expire_in: 1 week + when: always -pages: - <<: *build +ctest-modelchecking: + stage: build + except: + - stable + script: + - apt-get --allow-releaseinfo-change update + - apt install -y binutils xsltproc clang + - cmake -Denable_model-checking=ON -Denable_documentation=OFF -Denable_coverage=OFF -Denable_compile_optimizations=ON -Denable_smpi=ON -Denable_testsuite_smpi_MPICH3=OFF -Denable_testsuite_McMini=OFF -Denable_compile_warnings=ON -DLTO_EXTRA_FLAG="auto" -DCMAKE_C_COMPILER=/usr/bin/clang -DCMAKE_CXX_COMPILER=/usr/bin/clang++ . + - make -j$(nproc) VERBOSE=1 all tests + - ctest -T Test -j$(nproc) --output-on-failure + - xsltproc ./tools/jenkins/ctest2junit.xsl Testing/"$( head -n 1 < Testing/TAG )"/Test.xml > CTestResults.xml + artifacts: + paths: + - lib/ + reports: + junit: + - CTestResults.xml + expire_in: 1 week + when: always + +ctest-distcheck: + stage: build only: - - master + - merge_requests + script: + - apt-get --allow-releaseinfo-change update + - apt install -y binutils + - cmake . + - make distcheck-configure + +release: + stage: build + only: + - stable + script: + - apt-get --allow-releaseinfo-change update + - apt install -y binutils wget unzip zip + - cmake -Denable_documentation=OFF -Dminimal-bindings=ON -Denable_compile_optimizations=ON -Denable_smpi=OFF -DLTO_EXTRA_FLAG="auto" . + - make VERBOSE=1 -j$(nproc) dist + artifacts: + paths: + - simgrid-*.tar.gz -test: - <<: *build +pip: + image: + name: python:3-bullseye + entrypoint: ['/bin/bash', '-c', 'ln -snf /bin/bash /bin/sh && /bin/bash -c $0' ] + stage: build except: + - stable + script: + - apt-get --allow-releaseinfo-change update + - apt install -y python3-pip cmake libboost-dev g++ gcc pybind11-dev + - python3 setup.py sdist + - cd dist + - tar xfz simgrid*.tar.gz + - cd simgrid-*/ + - python3 setup.py build + +pages: + stage: deploy + script: + - apt install -y python3-breathe python3-sphinx python3-sphinx-rtd-theme python3-sphinx-copybutton python3-sphinx-tabs + # - pip3 install --requirement docs/requirements.txt # Forbidden in Debian:12 + - cd docs + - LC_ALL=C.UTF-8 ./Build.sh + - mv build/html ../public + # - The CSS contains a reference to a font or something, not something we gonna fix on our side +# not installed - linkchecker --ignore-url='.*\.css$' ../public + # From time to time, we should check external links with the + # following, but it has a lot of false positive + # - linkchecker --ignore-url='.*\.css$' --check-extern ../public + artifacts: + paths: + - public + only: - master + needs: ["ctest-debug"]