-
Notifications
You must be signed in to change notification settings - Fork 17
Expand file tree
/
Copy pathrun.sh
More file actions
executable file
·79 lines (70 loc) · 3.09 KB
/
run.sh
File metadata and controls
executable file
·79 lines (70 loc) · 3.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
#!/bin/bash
#
# NIST-developed software is provided by NIST as a public service. You may use,
# copy, and distribute copies of the software in any medium, provided that you
# keep intact this entire notice. You may improve, modify, and create derivative
# works of the software or any portion of the software, and you may copy and
# distribute such modifications or works. Modified works should carry a notice
# stating that you changed the software and should note the date and nature of
# any such change. Please explicitly acknowledge the National Institute of
# Standards and Technology as the source of the software.
#
# NIST-developed software is expressly provided "AS IS." NIST MAKES NO WARRANTY
# OF ANY KIND, EXPRESS, IMPLIED, IN FACT, OR ARISING BY OPERATION OF LAW,
# INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTY OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, AND DATA ACCURACY. NIST
# NEITHER REPRESENTS NOR WARRANTS THAT THE OPERATION OF THE SOFTWARE WILL BE
# UNINTERRUPTED OR ERROR-FREE, OR THAT ANY DEFECTS WILL BE CORRECTED. NIST DOES
# NOT WARRANT OR MAKE ANY REPRESENTATIONS REGARDING THE USE OF THE SOFTWARE OR
# THE RESULTS THEREOF, INCLUDING BUT NOT LIMITED TO THE CORRECTNESS, ACCURACY,
# RELIABILITY, OR USEFULNESS OF THE SOFTWARE.
#
# You are solely responsible for determining the appropriateness of using and
# distributing the software and you assume all risks associated with its use,
# including but not limited to the risks and costs of program errors, compliance
# with applicable laws, damage to or loss of data, programs or equipment, and
# the unavailability or interruption of operation. This software is not intended
# to be used in any situation where a failure could cause risk of injury or
# damage to property. The software developed by NIST employees is not subject to
# copyright protection within the United States.
# Exit immediately if a command fails
set -e
APTVARS="NEEDRESTART_MODE=l NEEDRESTART_SUSPEND=1 DEBIAN_FRONTEND=noninteractive"
if ! command -v realpath &>/dev/null; then
echo "Package \"coreutils\" not found, installing..."
sudo env $APTVARS apt-get install -y coreutils
fi
SCRIPT_DIR=$(dirname "$(realpath "$0")")
cd "$SCRIPT_DIR"
sudo -v # Ensure sudo session is active
# Upon exit, gracefully stop all components and fix console in case it breaks
trap "trap - EXIT SIGINT SIGTERM; echo \"################################# STOPPING... #################################\"; \"$SCRIPT_DIR/./stop.sh\"; stty sane || true; exit" EXIT SIGINT SIGTERM
echo "Running 5G Core components..."
cd 5G_Core_Network
./run.sh
cd ..
echo
echo -n "Waiting for AMF to be ready"
attempt=0
while ! ./5G_Core_Network/is_amf_ready.sh | grep -q "true"; do
echo -n "."
sleep 0.5
attempt=$((attempt + 1))
if [ $attempt -ge 120 ]; then
echo "5G Core components did not start after 60 seconds, exiting..."
exit 1
fi
done
echo -e "\nAMF is ready."
echo
echo "Running gNodeB..."
cd Next_Generation_Node_B
./run_background.sh
cd ..
echo
echo "Running User Equipment..."
cd User_Equipment
./run_background.sh 3
./run_background.sh 2
./run.sh
cd ..