blob: 2e0503916954bed6bbc890fa9105ee1636cba38e [file] [log] [blame]
ajayb3f40982021-12-08 14:26:11 -08001..
2 SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
3 SPDX-License-Identifier: Apache-2.0
4
Ankur Upadhyaya678a3652021-12-08 11:56:25 +05305TestPod
ajay60fd69f2021-11-23 22:38:10 -08006========
7
Ankur Upadhyayac0610342021-12-09 17:55:15 +05308.. image:: ../_static/images/TestPod.png
9 :width: 700px
10
Ankur Upadhyayad8605312021-12-03 12:38:35 +053011Description
12-----------
13Testpod is developer tool to simulate 5G NFs and control NF behaviour as
14per test case requirement. Currently, it simulates AMF, NRF, PCF, UDM and UPF.
15While all other NFs run virtually on single pod, SMF runs on actual image on another pod.
16
17The Testpod can be run locally on any environment having miniKube via helm test package
18file present in repository OR locally as in binary mode.
19
Ankur Upadhyaya678a3652021-12-08 11:56:25 +053020How to use TestPod
ajay60fd69f2021-11-23 22:38:10 -080021------------------
Ankur Upadhyayad8605312021-12-03 12:38:35 +053022
Ankur Upadhyaya678a3652021-12-08 11:56:25 +053023* Repository
24 * `https://github.com/omec-project/testpod5G.git`
Ankur Upadhyayad8605312021-12-03 12:38:35 +053025
Ankur Upadhyaya678a3652021-12-08 11:56:25 +053026* Execution
27 * Binary mode
28 * SMF (NF to be tested)
29 * Make SMF clone (`git clone --branch onf-release3.0.5 https://github.com/omec-project/smf.git --recursive`)
30 * Change SMF PFCP port to 8806 (lib/pfcp/pfcpUdp/udp.go PFCP_PORT = 8806)
31 * Compile SMF (go build)
32 * Run SMF image(./smf -smfcfg ../../config/smfcfg.yaml -uerouting ../../config/uerouting.yaml)
33 * UPF (Only PFCP layer)
34 * Make UPF clone (`git clone https://github.com/badhrinathpa/upf-epc.git`)
35 * git checkout "sim_fast_path" branch
36 * cd pfcpiface and do "go build"
37 * Run UPF pfcp image (./pfcpiface -config ../conf/upf.json)
38 * TestPod App
39 * Make Testpod clone (`git clone https://github.com/omec-project/testpod5G.git`)
40 * Compile Testpod image(go build)
41 * Run Testpod image as AMF to test SMF ( ./testpod amf )
42 * Update local DNS table as following (/etc/hosts)
43 * # Testpod specific
44 * 127.0.0.1 upf
45 * 127.0.0.1 smf
46 * 127.0.0.1 nrf
47 * 127.0.0.1 pcf
48 * 127.0.0.1 amf
49 * 127.0.0.1 udm
50
51 * Minikube mode
52 * Install minikube using Homebrew (brew install minikube)
53 * Make Testpod clone (`git clone https://github.com/omec-project/testpod5G.git`)
54 * To test SMF(precondition- UPF should be running)
55 * helm install smftest ./helm/smf/