Mentions légales du service

Skip to content
Snippets Groups Projects
Commit b0f64a59 authored by PRUVOST Florent's avatar PRUVOST Florent
Browse files

Create a build and a test script for gitlab-ci (for readability) and prevent...

Create a build and a test script for gitlab-ci (for readability) and prevent using scan-build when not necessary (not master i.e. no sonarqube) because it slows down the compilation step
parent ab823a52
No related branches found
No related tags found
No related merge requests found
#!/usr/bin/env bash
set -x
export LOGNAME=chameleon_${VERSION}.log
echo $LOGNAME
echo build BUILD_OPTIONS $BUILD_OPTIONS | tee -a ${LOGNAME}
echo build VERSION $VERSION | tee -a ${LOGNAME}
ls -l *.log
if [[ -d build-$VERSION ]]
then
cd build-$VERSION
if [[ $CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH ]]
then
SCAN="scan-build -plist --intercept-first --exclude CMakeFiles --analyze-headers -o analyzer_reports "
else
SCAN=""
fi
eval '${SCAN}cmake -C ../cmake_modules/gitlab-ci-initial-cache.cmake .. $BUILD_OPTIONS'
eval '${SCAN}ctest --no-compress-output -j 5 -V -T Build | tee ../${LOGNAME}'
make install | tee -a ../${LOGNAME}
rm install/ -r
else
echo "$0: directory build-$VERSION does not exist, exit."
exit 1
fi
...@@ -25,21 +25,7 @@ default: ...@@ -25,21 +25,7 @@ default:
stage: build stage: build
extends: .only-branches extends: .only-branches
script: script:
- export LOGNAME=chameleon_${VERSION}.log - ./.gitlab/build.sh
- echo $LOGNAME
- echo build BUILD_OPTIONS $BUILD_OPTIONS | tee -a ${LOGNAME}
- echo build VERSION $VERSION | tee -a ${LOGNAME}
- ls -l *.log
- (cd build-$VERSION &&
scan-build -plist --intercept-first --exclude CMakeFiles --analyze-headers -o analyzer_reports
cmake -C ../cmake_modules/gitlab-ci-initial-cache.cmake .. $BUILD_OPTIONS &&
scan-build -plist --intercept-first --exclude CMakeFiles --analyze-headers -o analyzer_reports
ctest --no-compress-output -j 5 -V
-T Build
| tee ../${LOGNAME})
- (cd build-$VERSION &&
make install | tee -a ../${LOGNAME} &&
rm install/ -r)
artifacts: artifacts:
name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
expire_in: 2 days expire_in: 2 days
...@@ -49,23 +35,7 @@ default: ...@@ -49,23 +35,7 @@ default:
.test_script_template: .test_script_template:
stage: test stage: test
script: script:
- export LOGNAME=chameleon_${VERSION}_${CATEGORY}_${PRECISION} - ./.gitlab/test.sh
- echo $LOGNAME
- echo test TESTS_RESTRICTION $TESTS_RESTRICTION | tee -a ${LOGNAME}.log
- echo test VERSION $VERSION | tee -a ${LOGNAME}.log
- echo test CATEGORY $CATEGORY | tee -a ${LOGNAME}.log
- echo test PRECISION $PRECISION | tee -a ${LOGNAME}.log
- ls -l *.log
- (cd build-$VERSION &&
eval "ctest --no-compress-output
$TESTS_RESTRICTION
-T Test
--output-junit ../${LOGNAME}.junit
| tee -a ../${LOGNAME}.log")
- gcovr --xml-pretty --exclude-unreachable-branches --print-summary -o ${LOGNAME}.cov --root ${CI_PROJECT_DIR}
- lcov --directory build-$VERSION --capture --output-file ${LOGNAME}.lcov
- cp ${LOGNAME}.junit junit.xml
- cp ${LOGNAME}.cov coverage.xml
coverage: /^\s*lines:\s*\d+.\d+\%/ coverage: /^\s*lines:\s*\d+.\d+\%/
artifacts: artifacts:
name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
......
#!/usr/bin/env bash
set -x
export LOGNAME=chameleon_${VERSION}_${CATEGORY}_${PRECISION}
echo $LOGNAME
echo test TESTS_RESTRICTION $TESTS_RESTRICTION | tee -a ${LOGNAME}.log
echo test VERSION $VERSION | tee -a ${LOGNAME}.log
echo test CATEGORY $CATEGORY | tee -a ${LOGNAME}.log
echo test PRECISION $PRECISION | tee -a ${LOGNAME}.log
ls -l *.log
if [[ -d build-$VERSION ]]
then
cd build-$VERSION
eval "ctest --no-compress-output $TESTS_RESTRICTION -T Test --output-junit ../${LOGNAME}.junit | tee -a ../${LOGNAME}.log"
cd .. $CI_PROJECT_DIR
gcovr --xml-pretty --exclude-unreachable-branches --print-summary -o ${LOGNAME}.cov --root $CI_PROJECT_DIR
lcov --directory build-$VERSION --capture --output-file ${LOGNAME}.lcov
cp ${LOGNAME}.junit junit.xml
cp ${LOGNAME}.cov coverage.xml
else
echo "$0: directory build-$VERSION does not exist, exit."
exit 1
fi
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment