Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
zzha zzha
OpenXG-RAN
Commits
0995a991
Commit
0995a991
authored
Mar 04, 2019
by
Boris Djalal
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add HTML report for noS1 test.
Signed-off-by:
Boris Djalal
<
boris.djalal@eurecom.fr
>
parent
c02cb8ef
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
231 additions
and
6 deletions
+231
-6
ci-scripts/reportTestLocally.sh
ci-scripts/reportTestLocally.sh
+231
-2
ci-scripts/runTestOnVM.sh
ci-scripts/runTestOnVM.sh
+0
-4
No files found.
ci-scripts/reportTestLocally.sh
View file @
0995a991
...
@@ -316,7 +316,7 @@ function report_test {
...
@@ -316,7 +316,7 @@ function report_test {
fi
fi
echo
" </tr>"
>>
./test_simulator_results.html
echo
" </tr>"
>>
./test_simulator_results.html
fi
fi
if
[
-f
$ARCHIVES_LOC
/
${
TMODE
}
_
${
BW
}*
iperf
*
dl
*
client
*
txt
]
if
[
-f
$ARCHIVES_LOC
/
${
TMODE
}
_
${
BW
}*
iperf
*
dl
*
client
*
txt
]
then
then
IPERF_TESTS
=
`
ls
$ARCHIVES_LOC
/
${
TMODE
}
_
${
BW
}*
iperf
*
client
*
txt
`
IPERF_TESTS
=
`
ls
$ARCHIVES_LOC
/
${
TMODE
}
_
${
BW
}*
iperf
*
client
*
txt
`
...
@@ -403,7 +403,7 @@ function report_test {
...
@@ -403,7 +403,7 @@ function report_test {
echo
" </table>"
>>
./test_simulator_results.html
echo
" </table>"
>>
./test_simulator_results.html
echo
" </div>"
>>
./test_simulator_results.html
echo
" </div>"
>>
./test_simulator_results.html
fi
fi
if
[
-e
$JENKINS_WKSP
/flexran/flexran_build_complete.txt
]
if
[
-e
$JENKINS_WKSP
/flexran/flexran_build_complete.txt
]
then
then
echo
" <h3>Basic Simulator + FlexRan Controller Check</h3>"
>>
./test_simulator_results.html
echo
" <h3>Basic Simulator + FlexRan Controller Check</h3>"
>>
./test_simulator_results.html
...
@@ -433,6 +433,235 @@ function report_test {
...
@@ -433,6 +433,235 @@ function report_test {
echo
" </div>"
>>
./test_simulator_results.html
echo
" </div>"
>>
./test_simulator_results.html
fi
fi
ARCHIVES_LOC
=
archives/enb_eth/test
if
[
-d
$ARCHIVES_LOC
]
then
echo
" <h3>L1 Simulator Check</h3>"
>>
./test_simulator_results.html
if
[
-f
$ARCHIVES_LOC
/test_final_status.log
]
then
if
[
`
grep
-c
TEST_OK
$ARCHIVES_LOC
/test_final_status.log
`
-eq
1
]
then
echo
" <div class=
\"
alert alert-success
\"
>"
>>
./test_simulator_results.html
echo
" <strong>TEST was SUCCESSFUL <span class=
\"
glyphicon glyphicon-ok-circle
\"
></span></strong>"
>>
./test_simulator_results.html
echo
" </div>"
>>
./test_simulator_results.html
else
echo
" <div class=
\"
alert alert-danger
\"
>"
>>
./test_simulator_results.html
echo
" <strong>TEST was a FAILURE! <span class=
\"
glyphicon glyphicon-ban-circle
\"
></span></strong>"
>>
./test_simulator_results.html
echo
" </div>"
>>
./test_simulator_results.html
fi
else
echo
" <div class=
\"
alert alert-danger
\"
>"
>>
./test_simulator_results.html
echo
" <strong>COULD NOT DETERMINE TEST FINAL STATUS! <span class=
\"
glyphicon glyphicon-ban-circle
\"
></span></strong>"
>>
./test_simulator_results.html
echo
" </div>"
>>
./test_simulator_results.html
fi
echo
" <button data-toggle=
\"
collapse
\"
data-target=
\"
#oai-l1-sim-test-details
\"
>More details on L1 Simulator Check</button>"
>>
./test_simulator_results.html
echo
" <div id=
\"
oai-l1-sim-test-details
\"
class=
\"
collapse
\"
>"
>>
./test_simulator_results.html
echo
" <table border =
\"
1
\"
>"
>>
./test_simulator_results.html
echo
" <tr bgcolor =
\"
#33CCFF
\"
>"
>>
./test_simulator_results.html
echo
" <th>Log File Name</th>"
>>
./test_simulator_results.html
echo
" <th>Command</th>"
>>
./test_simulator_results.html
echo
" <th>Status</th>"
>>
./test_simulator_results.html
echo
" <th>Statistics</th>"
>>
./test_simulator_results.html
echo
" </tr>"
>>
./test_simulator_results.html
TRANS_MODES
=(
"fdd"
)
BW_CASES
=(
05
)
for
TMODE
in
${
TRANS_MODES
[@]
}
do
for
BW
in
${
BW_CASES
[@]
}
do
ENB_LOG
=
$ARCHIVES_LOC
/
${
TMODE
}
_
${
BW
}
MHz_enb.log
UE_LOG
=
$ARCHIVES_LOC
/
${
TMODE
}
_
${
BW
}
MHz_ue.log
if
[
-f
$ENB_LOG
]
&&
[
-f
$UE_LOG
]
then
NAME_ENB
=
`
echo
$ENB_LOG
|
sed
-e
"s#
$ARCHIVES_LOC
/##"
`
NAME_UE
=
`
echo
$UE_LOG
|
sed
-e
"s#
$ARCHIVES_LOC
/##"
`
echo
" <tr>"
>>
./test_simulator_results.html
echo
" <td>
$NAME_ENB
---
$NAME_UE
</td>"
>>
./test_simulator_results.html
echo
" <td>N/A</td>"
>>
./test_simulator_results.html
NB_ENB_GOT_SYNC
=
`
egrep
-c
"got sync"
$ENB_LOG
`
NB_UE_GOT_SYNC
=
`
egrep
-c
"got sync"
$UE_LOG
`
NB_ENB_SYNCED_WITH_UE
=
`
egrep
-c
"got UE capabilities for UE"
$ENB_LOG
`
if
[
$NB_ENB_GOT_SYNC
-eq
1
]
&&
[
$NB_UE_GOT_SYNC
-eq
5
]
&&
[
$NB_ENB_SYNCED_WITH_UE
-eq
1
]
then
echo
" <td bgcolor =
\"
green
\"
>OK</td>"
>>
./test_simulator_results.html
else
echo
" <td bgcolor =
\"
red
\"
>KO</td>"
>>
./test_simulator_results.html
fi
echo
" <td><pre>"
>>
./test_simulator_results.html
if
[
$NB_ENB_GOT_SYNC
-eq
1
]
then
echo
"<font color =
\"
blue
\"
>- eNB --> got sync</font>"
>>
./test_simulator_results.html
else
echo
"<font color =
\"
red
\"
><b>- eNB NEVER got sync</b></font>"
>>
./test_simulator_results.html
fi
if
[
$NB_UE_GOT_SYNC
-eq
5
]
then
echo
"<font color =
\"
blue
\"
>- UE --> got sync</font>"
>>
./test_simulator_results.html
else
echo
"<font color =
\"
red
\"
><b>- UE NEVER got sync</b></font>"
>>
./test_simulator_results.html
fi
if
[
$NB_ENB_SYNCED_WITH_UE
-eq
1
]
then
echo
"<font color =
\"
blue
\"
>- UE attached to eNB</font>"
>>
./test_simulator_results.html
else
echo
"<font color =
\"
red
\"
><b>- UE NEVER attached to eNB</b></font>"
>>
./test_simulator_results.html
fi
NB_SEGFAULT_ENB
=
`
egrep
-i
-c
"Segmentation Fault"
$ENB_LOG
`
if
[
$NB_SEGFAULT_ENB
-ne
0
]
then
echo
"<font color =
\"
red
\"
><b>- eNB --> Segmentation Fault</b></font>"
>>
./test_simulator_results.html
fi
NB_SEGFAULT_UE
=
`
egrep
-i
-c
"Segmentation Fault"
$UE_LOG
`
if
[
$NB_SEGFAULT_UE
-ne
0
]
then
echo
"<font color =
\"
red
\"
><b>- UE --> Segmentation Fault</b></font>"
>>
./test_simulator_results.html
fi
NB_ASSERTION_ENB
=
`
egrep
-i
-c
"Assertion"
$ENB_LOG
`
if
[
$NB_ASSERTION_ENB
-ne
0
]
then
echo
"<font color =
\"
red
\"
><b>- eNB --> Assertion</b></font>"
>>
./test_simulator_results.html
awk
'BEGIN{assertion=10}{if(assertion < 3){print " " $0; assertion++};if ($0 ~/Assertion/){print " " $0;assertion=1}}END{}'
$ENB_LOG
>>
./test_simulator_results.html
fi
NB_ASSERTION_UE
=
`
egrep
-i
-c
"Assertion"
$UE_LOG
`
if
[
$NB_ASSERTION_UE
-ne
0
]
then
echo
"<font color =
\"
red
\"
><b>- eNB --> Assertion</b></font>"
>>
./test_simulator_results.html
awk
'BEGIN{assertion=10}{if(assertion < 3){print " " $0; assertion++};if ($0 ~/Assertion/){print " " $0;assertion=1}}END{}'
$UE_LOG
>>
./test_simulator_results.html
fi
echo
" </pre></td>"
>>
./test_simulator_results.html
echo
" </tr>"
>>
./test_simulator_results.html
fi
CASES
=(
"enb"
"ue"
)
for
CASE
in
${
CASES
[@]
}
do
PING_CASE
=
$ARCHIVES_LOC
/
${
TMODE
}
_
${
BW
}
MHz_ping_
${
CASE
}
.txt
if
[
-f
$PING_CASE
]
then
echo
" <tr>"
>>
./test_simulator_results.html
NAME
=
`
echo
$PING_CASE
|
sed
-e
"s#
$ARCHIVES_LOC
/##"
`
echo
" <td>
$NAME
</td>"
>>
./test_simulator_results.html
CMD
=
`
egrep
"COMMAND IS"
$PING_CASE
|
sed
-e
"s#COMMAND IS: ##"
`
echo
" <td>
$CMD
</td>"
>>
./test_simulator_results.html
FILE_COMPLETE
=
`
egrep
-c
"ping statistics"
$PING_CASE
`
if
[
$FILE_COMPLETE
-eq
0
]
then
echo
" <td bgcolor =
\"
red
\"
>KO</td>"
>>
./test_simulator_results.html
echo
" <td>N/A</td>"
>>
./test_simulator_results.html
else
NB_TR_PACKETS
=
`
egrep
"packets transmitted"
$PING_CASE
|
sed
-e
"s# packets transmitted.*##"
`
NB_RC_PACKETS
=
`
egrep
"packets transmitted"
$PING_CASE
|
sed
-e
"s#^.*packets transmitted, ##"
-e
"s# received,.*##"
`
if
[
$NB_TR_PACKETS
-eq
$NB_RC_PACKETS
]
then
echo
" <td bgcolor =
\"
green
\"
>OK</td>"
>>
./test_simulator_results.html
else
echo
" <td bgcolor =
\"
red
\"
>KO</td>"
>>
./test_simulator_results.html
fi
echo
" <td>"
>>
./test_simulator_results.html
echo
" <pre>"
>>
./test_simulator_results.html
STATS
=
`
egrep
"packets transmitted"
$PING_CASE
|
sed
-e
"s#^.*received, ##"
-e
"s#, time.*##"
-e
"s# packet loss##"
`
echo
"Packet Loss :
$STATS
"
>>
./test_simulator_results.html
RTTMIN
=
`
egrep
"rtt min"
$PING_CASE
|
awk
'{split($4,a,"/"); print a[1] " " $5}'
`
echo
"RTT Minimal :
$RTTMIN
"
>>
./test_simulator_results.html
RTTAVG
=
`
egrep
"rtt min"
$PING_CASE
|
awk
'{split($4,a,"/"); print a[2] " " $5}'
`
echo
"RTT Average :
$RTTAVG
"
>>
./test_simulator_results.html
RTTMAX
=
`
egrep
"rtt min"
$PING_CASE
|
awk
'{split($4,a,"/"); print a[3] " " $5}'
`
echo
"RTT Maximal :
$RTTMAX
"
>>
./test_simulator_results.html
echo
" </pre>"
>>
./test_simulator_results.html
echo
" </td>"
>>
./test_simulator_results.html
fi
echo
" </tr>"
>>
./test_simulator_results.html
fi
done
if
[
-f
$ARCHIVES_LOC
/
${
TMODE
}
_
${
BW
}*
iperf
*
dl
*
_client.txt
]
then
IPERF_TESTS
=
`
ls
$ARCHIVES_LOC
/
${
TMODE
}
_
${
BW
}*
iperf
*
_client.txt
`
else
echo
"There are no iperf files"
IPERF_TESTS
=
""
fi
for
IPERF_CASE
in
$IPERF_TESTS
do
echo
" <tr>"
>>
./test_simulator_results.html
NAME
=
`
echo
$IPERF_CASE
|
sed
-e
"s#
$ARCHIVES_LOC
/##"
`
echo
" <td>
$NAME
</td>"
>>
./test_simulator_results.html
CMD
=
`
egrep
"COMMAND IS"
$IPERF_CASE
|
sed
-e
"s#COMMAND IS: ##"
`
echo
" <td>
$CMD
</td>"
>>
./test_simulator_results.html
REQ_BITRATE
=
`
echo
$CMD
|
sed
-e
"s#^.*-b ##"
-e
"s#-i 1.*##"
`
if
[[
$REQ_BITRATE
=
~ .
*
K.
*
]]
then
REQ_BITRATE
=
`
echo
$REQ_BITRATE
|
sed
-e
"s#K##"
`
FLOAT_REQ_BITRATE
=
`
echo
"
$REQ_BITRATE
* 1000.0"
| bc
-l
`
fi
if
[[
$REQ_BITRATE
=
~ .
*
M.
*
]]
then
REQ_BITRATE
=
`
echo
$REQ_BITRATE
|
sed
-e
"s#M##"
`
FLOAT_REQ_BITRATE
=
`
echo
"
$REQ_BITRATE
* 1000000.0"
| bc
-l
`
fi
if
[[
$REQ_BITRATE
=
~ .
*
G.
*
]]
then
REQ_BITRATE
=
`
echo
$REQ_BITRATE
|
sed
-e
"s#G##"
`
FLOAT_REQ_BITRATE
=
`
echo
"
$REQ_BITRATE
* 1000000000.0"
| bc
-l
`
fi
FILE_COMPLETE
=
`
egrep
-c
"Server Report"
$IPERF_CASE
`
if
[
$FILE_COMPLETE
-eq
0
]
then
echo
" <td bgcolor =
\"
red
\"
>KO</td>"
>>
./test_simulator_results.html
SERVER_FILE
=
`
echo
$IPERF_CASE
|
sed
-e
"s#client#server#"
`
FLOAT_EFF_BITRATE
=
`
grep
--color
=
never sec
$SERVER_FILE
|
sed
-e
"s#^.*Bytes *##"
-e
"s#sec *.*#sec#"
|
awk
'BEGIN{s=0;n=0}{n++;if ($2 ~/Mbits/){a = $1 * 1000000};if ($2 ~/Kbits/){a = $1 * 1000};s=s+a}END{br=s/n; printf "%.0f", br}'
`
EFFECTIVE_BITRATE
=
`
grep
--color
=
never sec
$SERVER_FILE
|
sed
-e
"s#^.*Bytes *##"
-e
"s#sec *.*#sec#"
|
awk
'BEGIN{s=0;n=0}{n++;if ($2 ~/Mbits/){a = $1 * 1000000};if ($2 ~/Kbits/){a = $1 * 1000};s=s+a}END{br=s/n; if(br>1000000){printf "%.2f MBits/sec", br/1000000}}'
`
PERF
=
`
echo
"100 *
$FLOAT_EFF_BITRATE
/
$FLOAT_REQ_BITRATE
"
| bc
-l
|
awk
'{printf "%.2f", $0}'
`
JITTER
=
`
grep
--color
=
never sec
$SERVER_FILE
|
sed
-e
"s#^.*/sec *##"
-e
"s# *ms.*##"
|
awk
'BEGIN{s=0;n=0}{n++;s+=$1}END{jitter=s/n; printf "%.3f ms", jitter}'
`
PACKETLOSS_NOSIGN
=
`
grep
--color
=
never sec
$SERVER_FILE
|
sed
-e
"s#^.*(##"
-e
"s#%.*##"
|
awk
'BEGIN{s=0;n=0}{n++;s+=$1}END{per=s/n; printf "%.1f", per}'
`
PACKETLOSS
=
`
echo
"
${
PACKETLOSS_NOSIGN
}
%"
`
else
EFFECTIVE_BITRATE
=
`
tail
-n3
$IPERF_CASE
| egrep
"Mbits/sec"
|
sed
-e
"s#^.*MBytes *##"
-e
"s#sec.*#sec#"
`
if
[[
$EFFECTIVE_BITRATE
=
~ .
*
Kbits/sec.
*
]]
then
EFFECTIVE_BITRATE
=
`
echo
$EFFECTIVE_BITRATE
|
sed
-e
"s# *Kbits/sec.*##"
`
FLOAT_EFF_BITRATE
=
`
echo
"
$EFFECTIVE_BITRATE
* 1000"
| bc
-l
`
fi
if
[[
$EFFECTIVE_BITRATE
=
~ .
*
Mbits/sec.
*
]]
then
EFFECTIVE_BITRATE
=
`
echo
$EFFECTIVE_BITRATE
|
sed
-e
"s# *Mbits/sec.*##"
`
FLOAT_EFF_BITRATE
=
`
echo
"
$EFFECTIVE_BITRATE
* 1000000"
| bc
-l
`
fi
if
[[
$EFFECTIVE_BITRATE
=
~ .
*
Gbits/sec.
*
]]
then
EFFECTIVE_BITRATE
=
`
echo
$EFFECTIVE_BITRATE
|
sed
-e
"s# *Gbits/sec.*##"
`
FLOAT_EFF_BITRATE
=
`
echo
"
$EFFECTIVE_BITRATE
* 1000000000"
| bc
-l
`
fi
PERF
=
`
echo
"100 *
$FLOAT_EFF_BITRATE
/
$FLOAT_REQ_BITRATE
"
| bc
-l
|
awk
'{printf "%.2f", $0}'
`
PERF_INT
=
`
echo
"100 *
$FLOAT_EFF_BITRATE
/
$FLOAT_REQ_BITRATE
"
| bc
-l
|
awk
'{printf "%.0f", $0}'
`
if
[[
$PERF_INT
-lt
90
]]
then
echo
" <td bgcolor =
\"
red
\"
>KO</td>"
>>
./test_simulator_results.html
else
echo
" <td bgcolor =
\"
green
\"
>OK</td>"
>>
./test_simulator_results.html
fi
EFFECTIVE_BITRATE
=
`
tail
-n3
$IPERF_CASE
| egrep
"Mbits/sec"
|
sed
-e
"s#^.*MBytes *##"
-e
"s#sec.*#sec#"
`
JITTER
=
`
tail
-n3
$IPERF_CASE
| egrep
"Mbits/sec"
|
sed
-e
"s#^.*Mbits/sec *##"
-e
"s#ms.*#ms#"
`
PACKETLOSS
=
`
tail
-n3
$IPERF_CASE
| egrep
"Mbits/sec"
|
sed
-e
"s#^.*(##"
-e
"s#).*##"
`
fi
echo
" <td>"
>>
./test_simulator_results.html
echo
" <pre>"
>>
./test_simulator_results.html
echo
"Bitrate :
$EFFECTIVE_BITRATE
"
>>
./test_simulator_results.html
echo
"Bitrate Perf :
$PERF
%"
>>
./test_simulator_results.html
echo
"Jitter :
$JITTER
"
>>
./test_simulator_results.html
echo
"Packet Loss :
$PACKETLOSS
"
>>
./test_simulator_results.html
echo
" </pre>"
>>
./test_simulator_results.html
echo
" </td>"
>>
./test_simulator_results.html
echo
" </tr>"
>>
./test_simulator_results.html
done
done
done
echo
" </table>"
>>
./test_simulator_results.html
echo
" </div>"
>>
./test_simulator_results.html
fi
ARCHIVES_LOC
=
archives/l2_sim/test
ARCHIVES_LOC
=
archives/l2_sim/test
if
[
-d
$ARCHIVES_LOC
]
if
[
-d
$ARCHIVES_LOC
]
then
then
...
...
ci-scripts/runTestOnVM.sh
View file @
0995a991
...
@@ -149,8 +149,6 @@ function ping_ue_ip_addr {
...
@@ -149,8 +149,6 @@ function ping_ue_ip_addr {
}
}
function
ping_nos1_ue_ip_addr
{
function
ping_nos1_ue_ip_addr
{
echo
"CALL ping_nos1_ue_ip_addr"
#echo '$@' $@
echo
"echo
\"
COMMAND IS: ping -I oai0 -c 20
$3
\"
>
$4
"
>
$1
echo
"echo
\"
COMMAND IS: ping -I oai0 -c 20
$3
\"
>
$4
"
>
$1
echo
"rm -f
$4
"
>>
$1
echo
"rm -f
$4
"
>>
$1
echo
"ping -I oai0 -c 20
$UE_REAL_IP_ADDR
| tee -a
$4
"
>>
$1
echo
"ping -I oai0 -c 20
$UE_REAL_IP_ADDR
| tee -a
$4
"
>>
$1
...
@@ -163,8 +161,6 @@ function ping_nos1_ue_ip_addr {
...
@@ -163,8 +161,6 @@ function ping_nos1_ue_ip_addr {
}
}
function
ping_nos1_enb_ip_addr
{
function
ping_nos1_enb_ip_addr
{
echo
"CALL ping_nos1_enb_ip_addr"
#echo '$@' $@
echo
"echo
\"
COMMAND IS: ping -I oai0 -c 20
$3
\"
>
$4
"
>
$1
echo
"echo
\"
COMMAND IS: ping -I oai0 -c 20
$3
\"
>
$4
"
>
$1
echo
"rm -f
$4
"
>>
$1
echo
"rm -f
$4
"
>>
$1
echo
"ping -I oai0 -c 20
$ENB_REAL_IP_ADDR
| tee -a
$4
"
>>
$1
echo
"ping -I oai0 -c 20
$ENB_REAL_IP_ADDR
| tee -a
$4
"
>>
$1
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment