Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'master' of https://framagit.org/simgrid/simgrid
[simgrid.git] / .gitlab-ci.yml
1 image: simgrid/build-deps
2
3 stages:
4  - build
5  - test
6
7 pages:
8   stage: test
9   script:
10   - cmake -Denable_model-checking=OFF -Denable_documentation=ON -Denable_compile_optimizations=OFF -Denable_smpi=OFF -Dpython=ON .
11   - make -j4
12   - pip3 install --requirement docs/requirements.txt
13   - cd docs
14   - LC_ALL=C.UTF-8 ./Build.sh
15   - mv build/html ../public
16   # - The CSS contains a reference to a font or something, not something we gonna fix on our side
17   # - The javasphinx output does not exist in the git, so the "open on GitLab" link is broken.
18   #   I'd like to report this as a bug, but javasphinx seems abandonned upstream.
19   # - public/search.html and public/genindex.html are also generated.
20   - linkchecker --ignore-url='.*\.css$' --ignore-url=public/java/org ../public
21   # From time to time, we should check external links with the
22   # following, but it has a lot of false positive
23   # - linkchecker --ignore-url='.*\.css$' --ignore-url=public/java/org --check-extern ../public
24   artifacts:
25     paths:
26     - public
27   only:
28   - master
29
30 ctest:
31   stage: build
32   except:
33   - stable
34   script:
35   - 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 .
36   - make VERBOSE=1 all tests && ctest --output-on-failure
37
38 release:
39   stage: build
40   only:
41   - stable
42   script:
43   - apt update && apt install -y binutils-x86-64-linux-gnu wget unzip zip
44   # Build the linux version of the jarfile without the boost dependency
45   - cmake -Denable_documentation=OFF -Denable_java=ON -Denable_lib_in_jar=ON -Dminimal-bindings=ON -Denable_compile_optimizations=ON -Denable_smpi=OFF .
46   - make VERBOSE=1 dist simgrid simgrid-java_jar
47   # Get the foreign architectures
48   - wget https://ci.appveyor.com/api/projects/mquinson/simgrid/artifacts/simgrid.jar -O simgrid-windows.jar
49   - export SGVER=`(echo '#include "simgrid/config.h"'; echo SIMGRID_VERSION_MAJOR.SIMGRID_VERSION_MINOR.SIMGRID_VERSION_PATCH)|gcc -E - -Iinclude|tail -1|sed 's/ //g'`
50   - 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
51   # Open all jar files, and strip them
52   - mkdir content ; cd content
53   - for j in  ../simgrid.jar ../simgrid-windows.jar ../simgrid-mac.jar ; do unzip -n $j ; done
54   - strip NATIVE/*/*/*.so
55   - x86_64-linux-gnu-strip NATIVE/*/*/lib*dll
56   - zip -r ../SimGrid-${SGVER}.jar *
57   artifacts:
58     paths:
59     - SimGrid-*.jar
60     - SimGrid-*.tar.gz