Commit 2a5f05dd authored by Raphael Defosseux's avatar Raphael Defosseux

Merge branch 'fix-again-html' into 'develop'

CI: fix the HTML reporting

See merge request oai/cn5g/oai-cn5g-nrf!11
parents 380ce46c cf93dd88
...@@ -31,6 +31,7 @@ source $THIS_SCRIPT_PATH/build_helper ...@@ -31,6 +31,7 @@ source $THIS_SCRIPT_PATH/build_helper
#arg1 is force (0 or 1) (no interactive script) #arg1 is force (0 or 1) (no interactive script)
#arg2 is debug (0 or 1) (install debug libraries) #arg2 is debug (0 or 1) (install debug libraries)
install_fb_folly_from_source(){ install_fb_folly_from_source(){
echo "Starting to install folly"
if [ $1 -eq 0 ]; then if [ $1 -eq 0 ]; then
OPTION="" OPTION=""
read -p "Do you want to install FaceBook folly (github)? <y/N> " prompt read -p "Do you want to install FaceBook folly (github)? <y/N> " prompt
...@@ -146,7 +147,7 @@ install_fb_folly_from_source(){ ...@@ -146,7 +147,7 @@ install_fb_folly_from_source(){
ret=$?;[[ $ret -ne 0 ]] && popd && return $ret ret=$?;[[ $ret -ne 0 ]] && popd && return $ret
popd popd
fi fi
echo_success "End of folly installation" echo_success "folly installation complete"
return 0 return 0
} }
...@@ -37,6 +37,7 @@ source $THIS_SCRIPT_PATH/build_helper.fb_folly ...@@ -37,6 +37,7 @@ source $THIS_SCRIPT_PATH/build_helper.fb_folly
#arg1 is force (0 or 1) (no interactive script) #arg1 is force (0 or 1) (no interactive script)
#arg2 is debug (0 or 1) (install debug libraries) #arg2 is debug (0 or 1) (install debug libraries)
install_fmt() { install_fmt() {
echo "Starting to install fmt"
if [ $1 -eq 0 ]; then if [ $1 -eq 0 ]; then
read -p "Do you want to install open-source formatting library for C++ ? <y/N> " prompt read -p "Do you want to install open-source formatting library for C++ ? <y/N> " prompt
OPTION="" OPTION=""
...@@ -65,12 +66,14 @@ install_fmt() { ...@@ -65,12 +66,14 @@ install_fmt() {
cd /tmp cd /tmp
rm -rf /tmp/fmt* rm -rf /tmp/fmt*
fi fi
echo "fmt installation complete"
return 0 return 0
} }
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
#arg1 is force (0 or 1) (no interactive script) #arg1 is force (0 or 1) (no interactive script)
#arg2 is debug (0 or 1) (install debug libraries) #arg2 is debug (0 or 1) (install debug libraries)
install_spdlog_from_git() { install_spdlog_from_git() {
echo "Starting to install spdlog"
if [ $1 -eq 0 ]; then if [ $1 -eq 0 ]; then
read -p "Do you want to install spdlog ? <y/N> " prompt read -p "Do you want to install spdlog ? <y/N> " prompt
OPTION="" OPTION=""
...@@ -103,6 +106,7 @@ install_spdlog_from_git() { ...@@ -103,6 +106,7 @@ install_spdlog_from_git() {
sed -i '/#define SPDLOG_ENABLE_SYSLOG/s/^\/\///g' include/spdlog/tweakme.h sed -i '/#define SPDLOG_ENABLE_SYSLOG/s/^\/\///g' include/spdlog/tweakme.h
popd popd
fi fi
echo "spdlog installation complete"
return 0 return 0
} }
...@@ -110,6 +114,7 @@ install_spdlog_from_git() { ...@@ -110,6 +114,7 @@ install_spdlog_from_git() {
#arg1 is force (0 or 1) (no interactive script) #arg1 is force (0 or 1) (no interactive script)
#arg2 is debug (0 or 1) (install debug libraries) #arg2 is debug (0 or 1) (install debug libraries)
install_pistache_from_git() { install_pistache_from_git() {
echo "Starting to install pistache"
if [ $1 -eq 0 ]; then if [ $1 -eq 0 ]; then
read -p "Do you want to install Pistache ? <y/N> " prompt read -p "Do you want to install Pistache ? <y/N> " prompt
OPTION="-y" OPTION="-y"
...@@ -148,6 +153,7 @@ install_pistache_from_git() { ...@@ -148,6 +153,7 @@ install_pistache_from_git() {
ret=$?;[[ $ret -ne 0 ]] && popd && return $ret ret=$?;[[ $ret -ne 0 ]] && popd && return $ret
popd popd
fi fi
echo "pistache installation complete"
return 0 return 0
} }
...@@ -158,6 +164,7 @@ install_pistache_from_git() { ...@@ -158,6 +164,7 @@ install_pistache_from_git() {
#arg1 is force (0 or 1) (no interactive script) #arg1 is force (0 or 1) (no interactive script)
#arg2 is debug (0 or 1) (install debug libraries) #arg2 is debug (0 or 1) (install debug libraries)
install_nlohmann_from_git() { install_nlohmann_from_git() {
echo "Starting to install Nlohmann Json"
if [ $1 -eq 0 ]; then if [ $1 -eq 0 ]; then
read -p "Do you want to install Nlohmann Json ? <y/N> " prompt read -p "Do you want to install Nlohmann Json ? <y/N> " prompt
OPTION="" OPTION=""
...@@ -196,6 +203,7 @@ install_nlohmann_from_git() { ...@@ -196,6 +203,7 @@ install_nlohmann_from_git() {
ret=$?;[[ $ret -ne 0 ]] && popd && return $ret ret=$?;[[ $ret -ne 0 ]] && popd && return $ret
popd popd
fi fi
echo "Nlohmann Json installation complete"
return 0 return 0
} }
...@@ -203,6 +211,7 @@ install_nlohmann_from_git() { ...@@ -203,6 +211,7 @@ install_nlohmann_from_git() {
#arg1 is force (0 or 1) (no interactive script) #arg1 is force (0 or 1) (no interactive script)
#arg2 is debug (0 or 1) (install debug libraries) #arg2 is debug (0 or 1) (install debug libraries)
install_nghttp2_from_git() { install_nghttp2_from_git() {
echo "Starting to install nghttp2"
if [ $1 -eq 0 ]; then if [ $1 -eq 0 ]; then
read -p "Do you want to install nghttp2 ? <y/N> " prompt read -p "Do you want to install nghttp2 ? <y/N> " prompt
OPTION="" OPTION=""
...@@ -284,6 +293,7 @@ install_nghttp2_from_git() { ...@@ -284,6 +293,7 @@ install_nghttp2_from_git() {
ret=$?;[[ $ret -ne 0 ]] && popd && return $ret ret=$?;[[ $ret -ne 0 ]] && popd && return $ret
popd popd
fi fi
echo "nghttp2 installation complete"
return 0 return 0
} }
...@@ -293,6 +303,7 @@ install_nghttp2_from_git() { ...@@ -293,6 +303,7 @@ install_nghttp2_from_git() {
#arg1 is force (0 or 1) (no interactive script) #arg1 is force (0 or 1) (no interactive script)
#arg2 is debug (0 or 1) (install debug libraries) #arg2 is debug (0 or 1) (install debug libraries)
install_cpp_jwt_from_git() { install_cpp_jwt_from_git() {
echo "Starting to install cpp_jwt"
if [ $1 -eq 0 ]; then if [ $1 -eq 0 ]; then
read -p "Do you want to install CPP-JWT ? <y/N> " prompt read -p "Do you want to install CPP-JWT ? <y/N> " prompt
OPTION="" OPTION=""
...@@ -357,6 +368,7 @@ install_cpp_jwt_from_git() { ...@@ -357,6 +368,7 @@ install_cpp_jwt_from_git() {
ret=$?;[[ $ret -ne 0 ]] && popd && return $ret ret=$?;[[ $ret -ne 0 ]] && popd && return $ret
popd popd
fi fi
echo "cpp_jwt installation complete"
return 0 return 0
} }
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
...@@ -400,7 +412,7 @@ check_install_nrf_deps() { ...@@ -400,7 +412,7 @@ check_install_nrf_deps() {
automake \ automake \
bison \ bison \
build-essential \ build-essential \
cmake \ $CMAKE \
daemon \ daemon \
doxygen \ doxygen \
flex \ flex \
...@@ -412,6 +424,7 @@ check_install_nrf_deps() { ...@@ -412,6 +424,7 @@ check_install_nrf_deps() {
automake \ automake \
bison \ bison \
$CMAKE \ $CMAKE \
make \
doxygen \ doxygen \
flex \ flex \
gdb \ gdb \
...@@ -478,6 +491,7 @@ check_install_nrf_deps() { ...@@ -478,6 +491,7 @@ check_install_nrf_deps() {
echo "Install distro libs" echo "Install distro libs"
$SUDO $INSTALLER install $OPTION $PACKAGE_LIST $SUDO $INSTALLER install $OPTION $PACKAGE_LIST
ret=$?;[[ $ret -ne 0 ]] && return $ret ret=$?;[[ $ret -ne 0 ]] && return $ret
echo "distro libs installation complete"
# Use fmt lib included in spdlog # Use fmt lib included in spdlog
#install_fmt $1 #install_fmt $1
...@@ -501,6 +515,7 @@ check_install_nrf_deps() { ...@@ -501,6 +515,7 @@ check_install_nrf_deps() {
install_cpp_jwt_from_git $1 $2 install_cpp_jwt_from_git $1 $2
ret=$?;[[ $ret -ne 0 ]] && return $ret ret=$?;[[ $ret -ne 0 ]] && return $ret
$SUDO ldconfig
return 0 return 0
} }
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
......
...@@ -464,8 +464,6 @@ class HtmlReport(): ...@@ -464,8 +464,6 @@ class HtmlReport():
section_end_pattern = 'build_nrf --clean --Verbose --build-type Release --jobs' section_end_pattern = 'build_nrf --clean --Verbose --build-type Release --jobs'
section_status = False section_status = False
package_install = False package_install = False
fmt_build_start = False
fmt_build_status = False
folly_build_start = False folly_build_start = False
folly_build_status = False folly_build_status = False
spdlog_build_start = False spdlog_build_start = False
...@@ -474,6 +472,10 @@ class HtmlReport(): ...@@ -474,6 +472,10 @@ class HtmlReport():
pistache_build_status = False pistache_build_status = False
json_build_start = False json_build_start = False
json_build_status = False json_build_status = False
nghttp2_build_start = False
nghttp2_build_status = False
cpp_jwt_build_start = False
cpp_jwt_build_status = False
base_image = False base_image = False
with open(cwd + '/archives/' + logFileName, 'r') as logfile: with open(cwd + '/archives/' + logFileName, 'r') as logfile:
for line in logfile: for line in logfile:
...@@ -490,35 +492,45 @@ class HtmlReport(): ...@@ -490,35 +492,45 @@ class HtmlReport():
result = re.search('NRF deps installation successful', line) result = re.search('NRF deps installation successful', line)
if result is not None: if result is not None:
status = True status = True
result = re.search('Install fmt from source', line) result = re.search('distro libs installation complete', line)
if result is not None: if result is not None:
package_install = True package_install = True
fmt_build_start = True result = re.search('Starting to install spdlog', line)
result = re.search('Installing: /usr/local/lib/pkgconfig/fmt.pc', line)
if result is not None: if result is not None:
fmt_build_status = True spdlog_build_start = True
result = re.search('Cloning into \'folly\'', line) result = re.search('spdlog installation complete', line)
if result is not None and spdlog_build_start:
spdlog_build_status = True
result = re.search('Starting to install folly', line)
if result is not None: if result is not None:
folly_build_start = True folly_build_start = True
result = re.search('Installing: /usr/local/lib/libfollybenchmark.a', line) result = re.search('folly installation complete', line)
if result is not None: if result is not None and folly_build_start:
folly_build_status = True folly_build_status = True
result = re.search('Install spdlog from', line) result = re.search('Starting to install pistache', line)
if result is not None: if result is not None:
spdlog_build_start = True
result = re.search('Install Pistache from', line)
if result is not None:
spdlog_build_status = True
pistache_build_start = True pistache_build_start = True
result = re.search('Installing: /usr/local/lib/libpistache.a', line) result = re.search('pistache installation complete', line)
if result is not None: if result is not None and pistache_build_start:
pistache_build_status = True pistache_build_status = True
result = re.search('Install Nlohmann Json', line) result = re.search('Starting to install Nlohmann Json', line)
if result is not None:
json_build_status = True
result = re.search('Installing: /usr/local/lib/cmake/nlohmann_json/nlohmann_jsonTargets.cmake', line)
if result is not None: if result is not None:
json_build_start = True
result = re.search('Nlohmann Json installation complete', line)
if result is not None and json_build_start:
json_build_status = True json_build_status = True
result = re.search('Starting to install nghttp2', line)
if result is not None:
nghttp2_build_start = True
result = re.search('nghttp2 installation complete', line)
if result is not None and nghttp2_build_start:
nghttp2_build_status = True
result = re.search('Starting to install cpp_jwt', line)
if result is not None:
cpp_jwt_build_start = True
result = re.search('cpp_jwt installation complete', line)
if result is not None and cpp_jwt_build_start:
cpp_jwt_build_status = True
logfile.close() logfile.close()
if base_image: if base_image:
cell_msg = ' <td bgcolor="LimeGreen"><pre style="border:none; background-color:LimeGreen"><b>' cell_msg = ' <td bgcolor="LimeGreen"><pre style="border:none; background-color:LimeGreen"><b>'
...@@ -537,23 +549,17 @@ class HtmlReport(): ...@@ -537,23 +549,17 @@ class HtmlReport():
else: else:
cell_msg += ' ** Packages Installation: KO\n' cell_msg += ' ** Packages Installation: KO\n'
if base_image: if base_image:
cell_msg += ' ** fmt Installation: N/A\n' cell_msg += ' ** spdlog Installation: N/A\n'
elif fmt_build_status: elif spdlog_build_status:
cell_msg += ' ** fmt Installation: OK\n' cell_msg += ' ** spdlog Installation: OK\n'
else: else:
cell_msg += ' ** fmt Installation: KO\n' cell_msg += ' ** spdlog Installation: KO\n'
if base_image: if base_image:
cell_msg += ' ** folly Installation: N/A\n' cell_msg += ' ** folly Installation: N/A\n'
elif folly_build_status: elif folly_build_status:
cell_msg += ' ** folly Installation: OK\n' cell_msg += ' ** folly Installation: OK\n'
else: else:
cell_msg += ' ** folly Installation: KO\n' cell_msg += ' ** folly Installation: KO\n'
if base_image:
cell_msg += ' ** spdlog Installation: N/A\n'
elif spdlog_build_status:
cell_msg += ' ** spdlog Installation: OK\n'
else:
cell_msg += ' ** spdlog Installation: KO\n'
if base_image: if base_image:
cell_msg += ' ** pistache Installation: N/A\n' cell_msg += ' ** pistache Installation: N/A\n'
elif pistache_build_status: elif pistache_build_status:
...@@ -566,6 +572,18 @@ class HtmlReport(): ...@@ -566,6 +572,18 @@ class HtmlReport():
cell_msg += ' ** Nlohmann Json Installation: OK\n' cell_msg += ' ** Nlohmann Json Installation: OK\n'
else: else:
cell_msg += ' ** Nlohmann Json Installation: KO\n' cell_msg += ' ** Nlohmann Json Installation: KO\n'
if base_image:
cell_msg += ' ** nghttp2 Installation: N/A\n'
elif nghttp2_build_status:
cell_msg += ' ** nghttp2 Installation: OK\n'
else:
cell_msg += ' ** nghttp2 Installation: KO\n'
if base_image:
cell_msg += ' ** cpp_jwt Installation: N/A\n'
elif cpp_jwt_build_status:
cell_msg += ' ** cpp_jwt Installation: OK\n'
else:
cell_msg += ' ** cpp_jwt Installation: KO\n'
cell_msg += '</b></pre></td>\n' cell_msg += '</b></pre></td>\n'
else: else:
cell_msg = ' <td bgcolor="Tomato"><pre style="border:none; background-color:Tomato"><b>' cell_msg = ' <td bgcolor="Tomato"><pre style="border:none; background-color:Tomato"><b>'
...@@ -830,12 +848,11 @@ class HtmlReport(): ...@@ -830,12 +848,11 @@ class HtmlReport():
else: else:
result = re.search('oai-nrf *develop', line) result = re.search('oai-nrf *develop', line)
if result is not None: if result is not None:
if variant == 'docker': result = re.search('ago *([0-9A-Z ]+)', line)
result = re.search('ago *([0-9A-Z]+)', line)
else:
result = re.search('ago *([0-9]+ [A-Z]+)', line)
if result is not None: if result is not None:
size = result.group(1) size = result.group(1)
if variant == 'docker':
size = re.sub('MB', ' MB', size)
status = True status = True
logfile.close() logfile.close()
if status: if status:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment