Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
openairinterface5G
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Package Registry
Model registry
Operate
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Bin He
openairinterface5G
Commits
e9b8c72b
Commit
e9b8c72b
authored
4 years ago
by
Raphael Defosseux
Browse files
Options
Downloads
Patches
Plain Diff
CI: adding ping operations to 5G-RF sim; try loop on failures
Signed-off-by:
Raphael Defosseux
<
raphael.defosseux@eurecom.fr
>
parent
e1b968db
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
ci-scripts/runTestOnVM.sh
+93
-83
93 additions, 83 deletions
ci-scripts/runTestOnVM.sh
with
93 additions
and
83 deletions
ci-scripts/runTestOnVM.sh
+
93
−
83
View file @
e9b8c72b
...
@@ -342,34 +342,8 @@ function check_iperf {
...
@@ -342,34 +342,8 @@ function check_iperf {
local
FILE_COMPLETE
=
`
egrep
-c
"Server Report"
${
LOC_BASE_LOG
}
_client.txt
`
local
FILE_COMPLETE
=
`
egrep
-c
"Server Report"
${
LOC_BASE_LOG
}
_client.txt
`
if
[
$FILE_COMPLETE
-eq
0
]
if
[
$FILE_COMPLETE
-eq
0
]
then
then
# This part will become obsolete once we have UL
IPERF_STATUS
=
-1
if
[[
$LOC_IS_RF_SIM
-eq
1
]]
&&
[[
$LOC_IS_NR
-eq
1
]]
echo
"File Report not found"
then
echo
"no UL integration right now --> normal to have no server report"
if
[
-f
${
LOC_BASE_LOG
}
_server.txt
]
then
local
EFFECTIVE_BANDWIDTH
=
`
tail
-n1
${
LOC_BASE_LOG
}
_server.txt |
sed
-e
"s#^.*MBytes *##"
-e
"s#^.*KBytes *##"
-e
"s#sec.*#sec#"
`
if
[[
$2
=
~ .
*
K.
*
]]
then
local
BW_PREFIX
=
"K"
else
local
BW_PREFIX
=
"M"
fi
if
[[
$EFFECTIVE_BANDWIDTH
=
~ .
*${
LOC_REQ_BW
}
.
*${
BW_PREFIX
}
bits.
*
]]
||
[[
$EFFECTIVE_BANDWIDTH
=
~ .
*${
LOC_REQ_BW_MINUS_ONE
}
.
*${
BW_PREFIX
}
bits.
*
]]
then
echo
"got requested DL bandwidth:
$EFFECTIVE_BANDWIDTH
"
else
echo
"got LESS than requested DL bandwidth:
$EFFECTIVE_BANDWIDTH
"
IPERF_STATUS
=
-1
fi
else
IPERF_STATUS
=
-1
echo
"Server File Report not found"
fi
else
IPERF_STATUS
=
-1
echo
"File Report not found"
fi
else
else
if
[
`
egrep
-c
"Mbits/sec"
${
LOC_BASE_LOG
}
_client.txt
`
-ne
0
]
if
[
`
egrep
-c
"Mbits/sec"
${
LOC_BASE_LOG
}
_client.txt
`
-ne
0
]
then
then
...
@@ -2044,81 +2018,117 @@ function run_test_on_vm {
...
@@ -2044,81 +2018,117 @@ function run_test_on_vm {
if
[[
"
$RUN_OPTIONS
"
==
"complex"
]]
&&
[[
$VM_NAME
=
~ .
*
-rf-sim
.
*
]]
if
[[
"
$RUN_OPTIONS
"
==
"complex"
]]
&&
[[
$VM_NAME
=
~ .
*
-rf-sim
.
*
]]
then
then
NR_STATUS
=
0
PING_STATUS
=
0
IPERF_STATUS
=
0
CN_CONFIG
=
"noS1"
CN_CONFIG
=
"noS1"
CONF_FILE
=
gnb.band78.tm1.106PRB.usrpn300.conf
CONF_FILE
=
gnb.band78.tm1.106PRB.usrpn300.conf
S1_NOS1_CFG
=
0
S1_NOS1_CFG
=
0
PRB
=
106
PRB
=
106
FREQUENCY
=
3510
FREQUENCY
=
3510
local
try_cnt
=
"0"
NR_STATUS
=
0
######### start of loop
######### start of loop
while
[
$try_cnt
-lt
5
]
do
SYNC_STATUS
=
0
PING_STATUS
=
0
IPERF_STATUS
=
0
echo
"############################################################"
echo
"############################################################"
echo
"
${
CN_CONFIG
}
: Starting the gNB"
echo
"
${
CN_CONFIG
}
: Starting the gNB"
echo
"############################################################"
echo
"############################################################"
CURRENT_GNB_LOG_FILE
=
tdd_
${
PRB
}
prb_
${
CN_CONFIG
}
_gnb.log
CURRENT_GNB_LOG_FILE
=
tdd_
${
PRB
}
prb_
${
CN_CONFIG
}
_gnb.log
start_rf_sim_gnb
$GNB_VM_CMDS
"
$GNB_VM_IP_ADDR
"
$CURRENT_GNB_LOG_FILE
$PRB
$CONF_FILE
$S1_NOS1_CFG
start_rf_sim_gnb
$GNB_VM_CMDS
"
$GNB_VM_IP_ADDR
"
$CURRENT_GNB_LOG_FILE
$PRB
$CONF_FILE
$S1_NOS1_CFG
echo
"############################################################"
echo
"############################################################"
echo
"
${
CN_CONFIG
}
: Starting the NR-UE"
echo
"
${
CN_CONFIG
}
: Starting the NR-UE"
echo
"############################################################"
echo
"############################################################"
CURRENT_NR_UE_LOG_FILE
=
tdd_
${
PRB
}
prb_
${
CN_CONFIG
}
_ue.log
CURRENT_NR_UE_LOG_FILE
=
tdd_
${
PRB
}
prb_
${
CN_CONFIG
}
_ue.log
start_rf_sim_nr_ue
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
$GNB_VM_IP_ADDR
$CURRENT_NR_UE_LOG_FILE
$PRB
$FREQUENCY
$S1_NOS1_CFG
start_rf_sim_nr_ue
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
$GNB_VM_IP_ADDR
$CURRENT_NR_UE_LOG_FILE
$PRB
$FREQUENCY
$S1_NOS1_CFG
if
[
$NR_UE_SYNC
-eq
0
]
if
[
$NR_UE_SYNC
-eq
0
]
then
then
echo
"Problem w/ gNB and NR-UE not syncing"
echo
"Problem w/ gNB and NR-UE not syncing"
terminate_enb_ue_basic_sim
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
2
terminate_enb_ue_basic_sim
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
2
terminate_enb_ue_basic_sim
$GNB_VM_CMDS
$GNB_VM_IP_ADDR
1
terminate_enb_ue_basic_sim
$GNB_VM_CMDS
$GNB_VM_IP_ADDR
1
scp
-o
StrictHostKeyChecking
=
no ubuntu@
$GNB_VM_IP_ADDR
:/home/ubuntu/tmp/cmake_targets/log/
$CURRENT_GNB_LOG_FILE
$ARCHIVES_LOC
SYNC_STATUS
=
-1
scp
-o
StrictHostKeyChecking
=
no ubuntu@
$NR_UE_VM_IP_ADDR
:/home/ubuntu/tmp/cmake_targets/log/
$CURRENT_NR_UE_LOG_FILE
$ARCHIVES_LOC
try_cnt
=
$[$try_cnt
+1]
echo
"5G-NR RFSIM seems to FAIL"
continue
echo
"5G-NR: TEST_KO"
>>
$ARCHIVES_LOC
/test_final_status.log
fi
STATUS
=
-1
return
fi
echo
"############################################################"
echo
"############################################################"
echo
"
${
CN_CONFIG
}
: iperf DL -- NR-UE is server and gNB is client"
echo
"
${
CN_CONFIG
}
: Pinging the gNB from NR-UE"
echo
"############################################################"
echo
"############################################################"
THROUGHPUT
=
"30K"
get_enb_noS1_ip_addr
$GNB_VM_CMDS
$GNB_VM_IP_ADDR
CURR_IPERF_LOG_BASE
=
tdd_
${
PRB
}
prb_
${
CN_CONFIG
}
_iperf_dl
PING_LOG_FILE
=
tdd_
${
PRB
}
prb_
${
CN_CONFIG
}
_ping_gnb_from_nrue.log
get_enb_noS1_ip_addr
$GNB_VM_CMDS
$GNB_VM_IP_ADDR
ping_epc_ip_addr
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
$ENB_IP_ADDR
$PING_LOG_FILE
1 0
get_ue_ip_addr
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
1
scp
-o
StrictHostKeyChecking
=
no ubuntu@
$NR_UE_VM_IP_ADDR
:/home/ubuntu/
$PING_LOG_FILE
$ARCHIVES_LOC
generic_iperf
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
$UE_IP_ADDR
$GNB_VM_CMDS
$GNB_VM_IP_ADDR
$ENB_IP_ADDR
$THROUGHPUT
$CURR_IPERF_LOG_BASE
1 0
check_ping_result
$ARCHIVES_LOC
/
$PING_LOG_FILE
20
scp
-o
StrictHostKeyChecking
=
no ubuntu@
$GNB_VM_IP_ADDR
:/home/ubuntu/
${
CURR_IPERF_LOG_BASE
}
_client.txt
$ARCHIVES_LOC
scp
-o
StrictHostKeyChecking
=
no ubuntu@
$NR_UE_VM_IP_ADDR
:/home/ubuntu/
${
CURR_IPERF_LOG_BASE
}
_server.txt
$ARCHIVES_LOC
check_iperf
$ARCHIVES_LOC
/
$CURR_IPERF_LOG_BASE
$THROUGHPUT
echo
"############################################################"
echo
"############################################################"
echo
"
${
CN_CONFIG
}
: iperf UL -- gNB is server and NR-UE is client"
echo
"
${
CN_CONFIG
}
: Pinging the NR-UE from gNB"
echo
"############################################################"
echo
"############################################################"
THROUGHPUT
=
"30K"
get_ue_ip_addr
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
1
CURR_IPERF_LOG_BASE
=
tdd_
${
PRB
}
prb_
${
CN_CONFIG
}
_iperf_ul
PING_LOG_FILE
=
tdd_
${
PRB
}
prb_
${
CN_CONFIG
}
_ping_from_gnb_nrue.log
get_enb_noS1_ip_addr
$GNB_VM_CMDS
$GNB_VM_IP_ADDR
ping_enb_ip_addr
$GNB_VM_CMDS
$GNB_VM_IP_ADDR
$UE_IP_ADDR
$PING_LOG_FILE
0
get_ue_ip_addr
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
1
scp
-o
StrictHostKeyChecking
=
no ubuntu@
$GNB_VM_IP_ADDR
:/home/ubuntu/
$PING_LOG_FILE
$ARCHIVES_LOC
generic_iperf
$GNB_VM_CMDS
$GNB_VM_IP_ADDR
$ENB_IP_ADDR
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
$UE_IP_ADDR
$THROUGHPUT
$CURR_IPERF_LOG_BASE
1 0
check_ping_result
$ARCHIVES_LOC
/
$PING_LOG_FILE
20
scp
-o
StrictHostKeyChecking
=
no ubuntu@
$GNB_VM_IP_ADDR
:/home/ubuntu/
${
CURR_IPERF_LOG_BASE
}
_server.txt
$ARCHIVES_LOC
scp
-o
StrictHostKeyChecking
=
no ubuntu@
$NR_UE_VM_IP_ADDR
:/home/ubuntu/
${
CURR_IPERF_LOG_BASE
}
_client.txt
$ARCHIVES_LOC
check_iperf
$ARCHIVES_LOC
/
$CURR_IPERF_LOG_BASE
$THROUGHPUT
echo
"############################################################"
echo
"############################################################"
echo
"
${
CN_CONFIG
}
: Terminate gNB/NR-UE simulators"
echo
"
${
CN_CONFIG
}
: iperf DL -- NR-UE is server and gNB is client"
echo
"############################################################"
echo
"############################################################"
terminate_enb_ue_basic_sim
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
2
THROUGHPUT
=
"30K"
terminate_enb_ue_basic_sim
$GNB_VM_CMDS
$GNB_VM_IP_ADDR
1
CURR_IPERF_LOG_BASE
=
tdd_
${
PRB
}
prb_
${
CN_CONFIG
}
_iperf_dl
scp
-o
StrictHostKeyChecking
=
no ubuntu@
$GNB_VM_IP_ADDR
:/home/ubuntu/tmp/cmake_targets/log/
$CURRENT_GNB_LOG_FILE
$ARCHIVES_LOC
get_enb_noS1_ip_addr
$GNB_VM_CMDS
$GNB_VM_IP_ADDR
scp
-o
StrictHostKeyChecking
=
no ubuntu@
$NR_UE_VM_IP_ADDR
:/home/ubuntu/tmp/cmake_targets/log/
$CURRENT_NR_UE_LOG_FILE
$ARCHIVES_LOC
get_ue_ip_addr
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
1
generic_iperf
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
$UE_IP_ADDR
$GNB_VM_CMDS
$GNB_VM_IP_ADDR
$ENB_IP_ADDR
$THROUGHPUT
$CURR_IPERF_LOG_BASE
1 0
scp
-o
StrictHostKeyChecking
=
no ubuntu@
$GNB_VM_IP_ADDR
:/home/ubuntu/
${
CURR_IPERF_LOG_BASE
}
_client.txt
$ARCHIVES_LOC
scp
-o
StrictHostKeyChecking
=
no ubuntu@
$NR_UE_VM_IP_ADDR
:/home/ubuntu/
${
CURR_IPERF_LOG_BASE
}
_server.txt
$ARCHIVES_LOC
check_iperf
$ARCHIVES_LOC
/
$CURR_IPERF_LOG_BASE
$THROUGHPUT
if
[
$IPERF_STATUS
-ne
0
]
then
echo
"DL test not OK"
terminate_enb_ue_basic_sim
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
2
terminate_enb_ue_basic_sim
$GNB_VM_CMDS
$GNB_VM_IP_ADDR
1
try_cnt
=
$[$try_cnt
+1]
continue
fi
echo
"############################################################"
echo
"
${
CN_CONFIG
}
: iperf UL -- gNB is server and NR-UE is client"
echo
"############################################################"
THROUGHPUT
=
"30K"
CURR_IPERF_LOG_BASE
=
tdd_
${
PRB
}
prb_
${
CN_CONFIG
}
_iperf_ul
get_enb_noS1_ip_addr
$GNB_VM_CMDS
$GNB_VM_IP_ADDR
get_ue_ip_addr
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
1
generic_iperf
$GNB_VM_CMDS
$GNB_VM_IP_ADDR
$ENB_IP_ADDR
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
$UE_IP_ADDR
$THROUGHPUT
$CURR_IPERF_LOG_BASE
1 0
scp
-o
StrictHostKeyChecking
=
no ubuntu@
$GNB_VM_IP_ADDR
:/home/ubuntu/
${
CURR_IPERF_LOG_BASE
}
_server.txt
$ARCHIVES_LOC
scp
-o
StrictHostKeyChecking
=
no ubuntu@
$NR_UE_VM_IP_ADDR
:/home/ubuntu/
${
CURR_IPERF_LOG_BASE
}
_client.txt
$ARCHIVES_LOC
check_iperf
$ARCHIVES_LOC
/
$CURR_IPERF_LOG_BASE
$THROUGHPUT
echo
"############################################################"
echo
"
${
CN_CONFIG
}
: Terminate gNB/NR-UE simulators"
echo
"############################################################"
terminate_enb_ue_basic_sim
$NR_UE_VM_CMDS
$NR_UE_VM_IP_ADDR
2
terminate_enb_ue_basic_sim
$GNB_VM_CMDS
$GNB_VM_IP_ADDR
1
scp
-o
StrictHostKeyChecking
=
no ubuntu@
$GNB_VM_IP_ADDR
:/home/ubuntu/tmp/cmake_targets/log/
$CURRENT_GNB_LOG_FILE
$ARCHIVES_LOC
scp
-o
StrictHostKeyChecking
=
no ubuntu@
$NR_UE_VM_IP_ADDR
:/home/ubuntu/tmp/cmake_targets/log/
$CURRENT_NR_UE_LOG_FILE
$ARCHIVES_LOC
if
[
$IPERF_STATUS
-ne
0
]
then
echo
"UL test not OK"
try_cnt
=
$[$try_cnt
+1]
else
try_cnt
=
$[$try_cnt
+10]
fi
done
######### end of loop
######### end of loop
full_l2_sim_destroy
full_l2_sim_destroy
echo
"############################################################"
echo
"############################################################"
echo
"Checking run status"
echo
"Checking run status"
echo
"############################################################"
echo
"############################################################"
if
[
$SYNC_STATUS
-ne
0
]
;
then
NR_STATUS
=
-1
;
fi
if
[
$PING_STATUS
-ne
0
]
;
then
NR_STATUS
=
-1
;
fi
if
[
$PING_STATUS
-ne
0
]
;
then
NR_STATUS
=
-1
;
fi
if
[
$IPERF_STATUS
-ne
0
]
;
then
NR_STATUS
=
-1
;
fi
if
[
$IPERF_STATUS
-ne
0
]
;
then
NR_STATUS
=
-1
;
fi
if
[
$NR_STATUS
-eq
0
]
if
[
$NR_STATUS
-eq
0
]
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment