rusefi-1/unit_tests/ci_gcov.sh

41 lines
917 B
Bash
Raw Normal View History

#!/bin/bash
2020-06-16 15:25:41 -07:00
#
# this one used by github actions
# this scripts replaces run_gcov.sh
#
rm -rf gcov_working_area
mkdir gcov_working_area
cd gcov_working_area
echo "Looking for source code"
find .. -name *.c* > source_files.txt
find ../../firmware/console/ -name *.c* >> source_files.txt
find ../../firmware/controllers/ -name *.c* >> source_files.txt
wc -l source_files.txt
xargs -L 1 -I {} cp {} . < source_files.txt
cp ../build/obj/* .
echo -e "\nGenerating coverage"
gcov *.c* > gcov.log 2>gcov.err
echo -e "\nCollecting coverage"
lcov --capture --directory . --output-file coverage.info
echo -e "\nGenerating HTML"
genhtml coverage.info --output-directory gcov
echo -e "\nUploading HTML"
if [ $1 ] && [ $2 ] && [ $3 ]; then
ncftpput -m -R -v -u "$1" -p "$2" "$3" /unit_tests_coverage gcov/*
else
echo "Error: FTP server details seem to be missing"
exit 1
fi