Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Add new entry in Release_Notes.
[simgrid.git] / .gitlab-ci.yml
index f8dc6d7..bbf969b 100644 (file)
@@ -4,14 +4,14 @@ stages:
  - build
  - deploy
 
-ctest:
+ctest-debug:
   stage: build
   except:
   - stable
   script:
   - apt-get --allow-releaseinfo-change update
-  - apt install -y xsltproc
-  - cmake -Denable_model-checking=OFF -Denable_documentation=OFF -Denable_coverage=OFF -Denable_compile_optimizations=ON -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=ON -Denable_compile_warnings=ON -DLTO_EXTRA_FLAG="auto" .
+  - 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
@@ -24,6 +24,35 @@ ctest:
     expire_in: 1 week
     when: always
 
+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:
+  - merge_requests
+  script:
+  - apt-get --allow-releaseinfo-change update
+  - apt install -y binutils
+  - cmake .
+  - make distcheck-configure
 
 release:
   stage: build
@@ -31,37 +60,21 @@ release:
   - stable
   script:
   - apt-get --allow-releaseinfo-change update
-  - apt install -y binutils-x86-64-linux-gnu wget unzip zip
-  # Build the linux version of the jarfile without the boost dependency
-  - cmake -Denable_documentation=OFF -Denable_java=ON -Denable_msg=ON -Denable_lib_in_jar=ON -Dminimal-bindings=ON -Denable_compile_optimizations=ON -Denable_smpi=OFF -DLTO_EXTRA_FLAG="auto" .
-  - make VERBOSE=1 -j$(nproc) dist simgrid simgrid-java_jar
-# This cannot work anymore because Java is now built by the modelchecker jenkins configuration, that is not on macosx
-# Please use the github action instead
-#  - make VERBOSE=1 -j$(nproc) dist simgrid simgrid-java_jar
-#  # Get the foreign architectures
-#  - wget https://ci.appveyor.com/api/projects/mquinson/simgrid/artifacts/simgrid.jar -O simgrid-windows.jar
-#  - export SGVER=`grep SimGrid ChangeLog|head -n1|sed -e 's/SimGrid (//' -e 's/).*//'`
-#  - wget https://ci.inria.fr/simgrid/job/SimGrid/build_mode=Debug,node=macos/lastSuccessfulBuild/artifact/build/simgrid-${SGVER}/build/simgrid.jar -O simgrid-mac.jar
-#  # Open all jar files, and strip them
-#  - mkdir content ; cd content
-#  - for j in  ../simgrid.jar ../simgrid-windows.jar ../simgrid-mac.jar ; do unzip -n $j ; done
-#  - strip NATIVE/*/*/*.so
-#  - x86_64-linux-gnu-strip NATIVE/*/*/lib*dll
-#  - zip -r ../simgrid-${SGVER}.jar *
+  - 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-*.jar
     - simgrid-*.tar.gz
 
 pip:
   image:
-    name: debian:testing
+    name: python:3-bullseye
     entrypoint: ['/bin/bash', '-c', 'ln -snf /bin/bash /bin/sh && /bin/bash -c $0' ]
   stage: build
   except:
   - stable
   script:
-  - chmod -v -R u=rwX,og=rX /etc/apt/trusted.gpg.d/
   - apt-get --allow-releaseinfo-change update
   - apt install -y python3-pip cmake libboost-dev g++ gcc pybind11-dev
   - python3 setup.py sdist
@@ -73,21 +86,19 @@ pip:
 pages:
   stage: deploy
   script:
-  - pip3 install --requirement docs/requirements.txt
-  - cd docs/source/_ext/javasphinx; python3 setup.py build; python3 setup.py install
-  - cd ../../..
+  - 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
-  # - The javasphinx output does not exist in the git, so the "edit on FramaGit" link is broken.
-  #   I'd like to report this as a bug, but javasphinx seems abandonned upstream.
-#not installed   - linkchecker --ignore-url='.*\.css$' --ignore-url=public/java/org ../public
+# 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$' --ignore-url=public/java/org --check-extern ../public
+  # - linkchecker --ignore-url='.*\.css$' --check-extern ../public
   artifacts:
     paths:
     - public
   only:
   - master
-  needs: ["ctest"]
+  needs: ["ctest-debug"]