X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/f9429688b769a280613358774f87d56857d32ac2..b4231b0645214b4b40d6600de12a172f98ad45b2:/.gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index be346507e2..b763d33633 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,27 +1,69 @@ -image: debian:testing-slim +image: simgrid/build-deps -.build: &build +stages: + - build + - test + +pages: + stage: test script: - - apt-get update - - apt-get install -y python3-pip cmake doxygen libboost-all-dev libboost-dev fig2dev - - pip3 install --requirement docs/requirements.txt - - cmake -Denable_documentation=ON . - - make documentation - - mkdir docs/doxyoutput - - cp -r doc/xml docs/doxyoutput + - cmake -Denable_model-checking=OFF -Denable_documentation=ON -Denable_compile_optimizations=OFF -Denable_smpi=OFF -Dpython=ON . + - make -j4 + - pip3 install --requirement docs/requirements.txt - cd docs - - sphinx-build -M html source/ build/ + - 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. + - linkchecker --ignore-url='.*\.css$' --ignore-url=public/java/org ../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 artifacts: paths: - public - -pages: - <<: *build only: - master -test: - <<: *build +ctest: + stage: build except: - - master + - stable + script: + - cmake -Denable_model-checking=OFF -Denable_documentation=OFF -Denable_coverage=ON -Denable_java=ON -Denable_lua=OFF -Denable_compile_optimizations=ON -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=ON -Denable_compile_warnings=ON . + - make VERBOSE=1 all tests && ctest --output-on-failure + +pip: + image: debian:testing + stage: build + except: + - stable + script: + - apt 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 + +release: + stage: build + only: + - stable + script: + - apt 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_lib_in_jar=ON -Dminimal-bindings=ON -Denable_compile_optimizations=ON -Denable_smpi=OFF . + - make VERBOSE=1 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=`printf '#include "simgrid/config.h"\n#if SIMGRID_VERSION_PATCH\nSIMGRID_VERSION_MAJOR.SIMGRID_VERSION_MINOR.SIMGRID_VERSION_PATCH\n#else\nSIMGRID_VERSION_MAJOR.SIMGRID_VERSION_MINOR\n#endif'|gcc -E - -Iinclude|tail -1|sed 's/ //g'` + - wget https://ci.inria.fr/simgrid/job/SimGrid/build_mode=Debug,node=osx/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 * + artifacts: + paths: + - SimGrid-*.jar + - SimGrid-*.tar.gz