Mentions légales du service

Skip to content
Snippets Groups Projects
.gitlab-ci.yml 4.58 KiB
Newer Older
  - build
  - test
  - analysis
before_script:
  - git submodule update --init --recursive
  - source .gitlab-ci-env.sh
  - mkdir -p build
build_starpu_cuda_mpi:
  stage: build
  artifacts:
    name: build_starpu_cuda_mpi
PRUVOST Florent's avatar
PRUVOST Florent committed
    expire_in: 48 hours
    paths:
      - build
       cmake -C ../cmake_modules/gitlab-ci-initial-cache.cmake ..
             -DCHAMELEON_USE_CUDA=ON
             -DCHAMELEON_USE_MPI=ON &&
        ctest --no-compress-output -V -j 5
PRUVOST Florent's avatar
PRUVOST Florent committed
             | tee ../chameleon-build-starpu.log)
    - (cd build &&
       make install | tee -a ../chameleon-build-starpu.log &&
       rm install/ -r)
test_starpu_cuda_mpi:
  stage: test
  dependencies:
    - build_starpu_cuda_mpi
    name: test_starpu_cuda_mpi
    expire_in: 48 hours
    paths:
      - build
      - chameleon-build-starpu.log
      - chameleon_starpu_mpi.lcov
  script:
    - (cd build &&
       ctest --no-compress-output -V
             -R "test_shm_s|mpi_s"
             -D ExperimentalTest
             -D ExperimentalCoverage
             -D ExperimentalSubmit
             | tee -a ../chameleon-build-starpu.log)
    - lcov --directory build --capture --output-file chameleon_starpu_mpi.lcov

build_starpu_simgrid:
  stage: build
  artifacts:
    name: build_starpu_simgrid
    expire_in: 48 hours
    paths:
    - source .gitlab-ci-env.sh simu
    - (cd build &&
       cmake -C ../cmake_modules/gitlab-ci-initial-cache.cmake ..
             -DCHAMELEON_SIMULATION=ON
             -DCHAMELEON_USE_CUDA=ON
             -DCHAMELEON_USE_MPI=OFF &&
       ctest --no-compress-output -V -j 5
            -D ExperimentalBuild
            -D ExperimentalSubmit
PRUVOST Florent's avatar
PRUVOST Florent committed
            | tee ../chameleon-build-starpu-simgrid.log)
    - (cd build &&
       make install | tee -a ../chameleon-build-starpu-simgrid.log &&
       rm install/ -r)
test_starpu_simgrid:
  stage: test
  dependencies:
    - build_starpu_simgrid
  artifacts:
    name: test_starpu_simgrid
    expire_in: 48 hours
    paths:
      - build
      - chameleon-build-starpu-simgrid.log
      - chameleon_starpu_simgrid.lcov
  script:
    - source .gitlab-ci-env.sh simu
    - (cd build &&
       ctest --no-compress-output -V
            -D ExperimentalTest
            -D ExperimentalCoverage
            -D ExperimentalSubmit
            | tee -a ../chameleon-build-starpu-simgrid.log)
    - lcov --directory build --capture --output-file chameleon_starpu_simgrid.lcov

build_quark:
  stage: build
  artifacts:
    name: build_quark
PRUVOST Florent's avatar
PRUVOST Florent committed
    expire_in: 48 hours
    paths:
  script:
    - (cd build &&
       cmake -C ../cmake_modules/gitlab-ci-initial-cache.cmake ..
            -DCHAMELEON_SCHED_QUARK=ON &&
       ctest --no-compress-output -V -j 5
             -D ExperimentalBuild
             -D ExperimentalSubmit
PRUVOST Florent's avatar
PRUVOST Florent committed
             | tee ../chameleon-build-quark.log)
    - (cd build &&
       make install | tee -a ../chameleon-build-quark.log &&
       rm install/ -r)
test_quark:
  stage: test
  dependencies:
    - build_quark
  artifacts:
    name: build_quark
    expire_in: 48 hours
    paths:
      - build
      - chameleon-build-quark.log
      - chameleon_quark.lcov
  script:
    - (cd build &&
       ctest --no-compress-output -V
             -R "test_shm_s"
             -D ExperimentalTest
             -D ExperimentalCoverage
             -D ExperimentalSubmit
             | tee -a ../chameleon-build-quark.log)
    - lcov --directory build --capture --output-file chameleon_quark.lcov

sonar:
  stage: analysis
  dependencies:
    - test_starpu_cuda_mpi
    - test_starpu_simgrid
    - test_quark
  artifacts:
    name: chameleon_analysis
    expire_in: 1 week
    paths:
      - chameleon-build.log
      - chameleon-coverage.xml
      - chameleon-cppcheck.xml
      - chameleon-rats.xml
      - sonar.log
  script:
    - lcov -a $PWD/chameleon_starpu_mpi.lcov
           -a $PWD/chameleon_starpu_simgrid.lcov
           -a $PWD/chameleon_quark.lcov
           -o $PWD/chameleon.lcov
    - lcov_cobertura.py chameleon.lcov --output chameleon-coverage.xml
PRUVOST Florent's avatar
PRUVOST Florent committed
    - ./tools/analysis.sh
PRUVOST Florent's avatar
PRUVOST Florent committed
  only:
    - master@solverstack/chameleon
  artifacts:
    name: chameleon_doc
    expire_in: 1 week
    paths:
      - build/doc/doxygen
      - build/doc/orgmode
  script:
    - cd build
    - master@solverstack/chameleon