Commit Graph
33 Commits
Author SHA1 Message Date
Robert Schmidt 7839d06601 Create/Deploy/Undeploy(): use node
Pass the node name for a host on which to create a workspace or
deploy/undeploy.

Add a new test for the creation of workspaces.

To help myself and the reviewer, here is a list of
"eNB_IPAddress"/"eNB1_IPAddress" parameters I copied from the various
pipelines:
- rfsim 4G eNB_IPAddress none => localhost
- rfsim 5g eNB_IPAddress none => localhost
- flexric eNB_IPAddress none => localhost
- l2sim 4g eNB_IPAddress none => localhost
- l2sim 4G eNB1_IPAddress 172.21.16.128 => obelix => localhost
- cluster image eNB_IPAddress poseidon
- ubuntu18 eNB_IPAddress obelix => obelix
- ubuntu-arm eNB_IPAddress gracehopper3-oai => gracehopper3-oai
- arm-cross eNB_IPAddress alambix => alambix
- lte-tdd eNB_IPAddress 172.21.18.45 => starsky
- lte-fdd eNB_IPAddress 172.21.18.46 => hutch
- lte-oaiue eNB_IPAddress 172.21.18.46 => hutch
- lte-oaiue eNB1_IPAddress 172.21.18.47 => carabe
- lte-tdd-2x2 eNB_IPAddress 172.21.16.128 => obelix
- nsa eNB_IPAddress 172.21.16.137 => nepes
- nsa eNB1_IPAddress 172.21.16.109 => ofqot
- sa-aerial eNB_IPAddress gracehopper1-oai => gracehopper1-oai
- aw2s eNB_IPAddress 172.21.16.124 => avra
- sabox eNB_IPAddress 172.21.16.109 => ofqot
- sa-oaiue eNB_IPAddress avra => avra
- sa-oaiue eNB1_IPAddress caracal => caracal
- cppcheck eNB_IPAddress 172.21.18.47 => carabe
- timing-phytest eNB_IPAddress caracal => caracal
- physim 4g eNB_IPAddress avra => avra
- physim 5g eNB_IPAddress avra => avra
2025-08-14 14:55:04 +02:00
Robert Schmidt d95e6bca6b Pull_Image_from_Registry()/Clean_Test_Server_Images(): pass node
Pass the node name for a host onto/from which to pull/clean the images.
For doing this, I used:

- rfsim 4G eNB_IPAddress none => localhost
- rfsim 5g eNB_IPAddress none => localhost
- flexric eNB_IPAddress none => localhost
- l2sim 4g eNB_IPAddress none => localhost
- l2sim 4G eNB1_IPAddress 172.21.16.128 => obelix => localhost
2025-08-14 14:55:04 +02:00
Jaroslava Fiedlerova 625c8cfd51 CI: move RFSim 5G to acamas 2025-07-11 09:59:37 +00:00
Robert Schmidt 1449bdd410 Merge remote-tracking branch 'origin/ci-refactor-core-handling' into integration_2025_w14_p1 (!3322)
Refactor core network handling in CI, harmonize code

Prior to change set, there is a highly heterogeneous situation for core
network management in CI code: some log collection is done from groovy
files (when it could be done in python, which is easier for local
development), there are multiple commands to start a CN from XML files,
the code for starting a CN is always different (no one unified way to
start "any" CN), Ping/Iperf require some support in ci_infra.yaml, ...

To help with the above, refactor the handling of core networks in the CI
code as follows:

- define all CNs in ci_infra.yaml (basically how to deploy, undeploy,
  collect logs, and on which node)
- make one Python class that reads from ci_infra.yaml and that allows to
  start/stop previously defined CNs (and add unit tests...)
- make one XML command for start/stop of CNs, leveraging above class
- leverage the CNs defined in ci_infra.yaml consistently in
  Ping()/Iperf()
- delete old code

Furthermore, the following supporting changes/bugfixes are done:

- repair Iperf2_Unidir() and add unit test
- fix a number of invalid escape sequence errors (there are some
  remaining, which I will do soon)
- various bug fixes
- remove unused XML steps
2025-04-03 10:10:58 +02:00
Robert Schmidt 6172550492 CI: Remove %cn_ip%/hardcoded IPs from ping test options
With the server object to be passed into ping test, it's not necessary
to either hardcode an IP address or provide a template. Instead, always
fill the IP address, which simplies the Ping() code.

Verify that we don't have an IP address/hardcoded by throwing an
assertion.
2025-04-02 14:23:32 +02:00
Robert Schmidt 98ac540d57 CI: use svr_id for Ping in RFsim-based tests
This is not really used as of now, because most IPs are hardcoded. See
one of the next commits for the use of this.

To make sure that we have the correct IP, there is some code that
verifies that a hardcoded IP and the CN IP would be the same.

Note: need two separate ci_infra.yaml entries, because
- for FlexRIC, the container name is different (is the tutorial CN)
- for RFsim5G E1, we don't have ext-dn => ping UPF
2025-03-31 16:38:13 +02:00
Bartosz Podrygajlo cea02a16b1 Modify 5g_fdd_rfsimulator testcase to use shm_radio
Use timescale 0.5 to make sure the iperf UL test passes. Also, disable
asan as this adds computational complexity that makes the test fail.
2025-03-28 14:58:46 +01:00
Robert Schmidt 644990a225 CI: Clean_Test_Server_Images(): harmonize code
- pass parameter directly instead of indirectly via class
- harmonize to svr_id to read through common code in the next commits
- pass images to express which images will be deleted
- refactor function to use "with" for cls_cmd, and return success (or
  not)
2024-11-25 15:33:41 +01:00
Robert Schmidt dee9ce26db CI: Pull_Image_from_Registry(): harmonize code
- pass parameter directly instead of indirectly via class
- call it simply "images", to harmonize with clean-function later
- harmonize to svr_id as in the previous commit
- rewrite function to use with-statement with cls_cmd
- optionally pass a tag to use (which will be used in a test, and can be
  used to pull flexric)
- Introduce Pull_Image() which does the actual pulling, can pull from
  any registry, and will be reused in the case of pulling from cluster.
2024-11-25 15:33:41 +01:00
Robert Schmidt 60b9649e00 Implement CreateWorkspace() through script, print dir in HTML
Use a script, which can be tested independently of CI code (by running
it on the host on which it will be used), and print the directory that
has been prepared in the HTML.  Also, in the description, use the
infinitive/imperative(?) of the verb to harmonize with other steps.
2024-09-28 12:58:06 +02:00
Robert Schmidt 8bdc399b27 Remove AutoTerminateUEeNB() functions, use auto_exec to make CI always undeploy 2024-09-28 12:45:07 +02:00
Robert Schmidt 61ea76e7af Remove CI repeatCount XML property
The repeatCount property is useless: it would be enough to specify the
same XML multiple times to achieve the same thing.
2024-09-28 12:45:07 +02:00
Bipin Adhikari f99552419e Use DeployObject/UndeployObject for pipelines using DeployGenObject/UndeployGenObject
XML file changed accordingly
2024-09-04 15:43:46 +02:00
Bipin Adhikari 150a00bd23 support for %%currenthost%% host names for modules in ci_infra
It can be set using nodes and svr_node tags in xml files
2024-09-04 15:38:51 +02:00
Jaroslava Fiedlerova d9648ae6b2 CI: Reduce ping time in rfsim 5G 2024-08-26 17:08:27 +02:00
Jaroslava Fiedlerova d456fa5620 Remove "single-ue" profile from config files
- no need to specify "single-ue" profile when running iperf test for 1 UE only
- default profile "balanced" can be used instead, computes BW for 1 UE correctly
2024-03-27 23:19:17 +01:00
Jaroslava Fiedlerova 723d57c29d RAN-RF-Sim-Test-5G test with iperf3 2024-03-27 23:12:02 +01:00
Robert Schmidt 9af386c761 CI: RFsim tests: Wait for IP
Ensure that the UE has an IP address before continuing the test.
Otherwise, it might happen we ping before the UE is connected.

Do not do this in do-ra and phytest, as they use --noS1, which implies
statically assigned IP address, so IP address check always succeeds(!).
2024-03-01 13:06:59 +01:00
Robert Schmidt e845a9c3b7 CI: Make RFsim start-up faster
Make RFsim start up faster by starting core and RAN start at the same
time. This speeds up because we do not wait for "healthy" containers
serially, but parallely.

For the RAN, it is safe to start gNB and UE at the same time in SA mode
(as the UE will only attach once the radio, and hence the full gNB, is
ready).

We do not start in parallel in do-ra and phytest, as in these modes the
gNB first has to write a UE-specific configuration file. If we start
both gNB and UE at the same time, the UE might try to read the file
before it is written, leading to a failure.
2024-03-01 13:05:20 +01:00
Raphael Defosseux f1d080d315 chore(ci): updating 5G rfsimulator scenarios to release v2.0
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2024-01-19 11:33:27 +01:00
Raphael Defosseux 4db8dfaf5d chore(ci): enabling running sanitized images for 5G RF / L2 sim test scenarios
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2023-11-29 08:59:36 +01:00
Dhanuja Elizabeth Thomas 54d2b887b8 Use Ping instead of PingFromContainer in simulator tests
Affected tests:
- 5G RFsim TDD do-ra
- 5g-rfsim-fdd
- 5g-rfsim
- 5grfsim-e1
- 5grfsim-24prb
- 5grfsim-fr2-32prb
- 5grfsim-fdd-phytest
- 5grfsim-u0-25prb
- 5grfsim-2x2
- 5grfsim-f1
- 5grfsim-f1-accelleran
- 4g-l2sim-tdd
- 4g-rfsim-fdd-05mhz
- 4g-rfsim-fdd-05mhz-nos1
- 4g-rfsim-fdd-10mhz
- 4g-rfsim-fdd-20mhz
- 4g-rfsim-tdd-05mhz
- 5g-l2sim
2023-07-03 14:44:29 +02:00
Robert Schmidt 627b8d92d3 Merge remote-tracking branch 'origin/ci-local-registry' into integration_2022_wk42b 2022-10-20 14:57:01 +02:00
Raphael Defosseux 1a0d91fd76 feat(ci): changing the XML structure for pulling images
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2022-10-19 09:16:37 +02:00
Robert Schmidt b100ec859e Set 5G RFsim and L2sim retx thresholds 2022-10-18 09:53:51 +02:00
Raphael Defosseux 5480e983d6 feat(ci): the simulation scenarios are now pulling / using images from local registry
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2022-10-18 08:40:59 +02:00
Robert Schmidt d1a36c29c2 Limit XML repeatCount to 1 2022-09-05 14:10:04 +02:00
Robert Schmidt f1c5378e3b Shorten 5G RFsim tab names 2022-08-09 15:05:58 +02:00
Robert Schmidt c21f86421e Test SDAP in 5G FDD RFsim test 2022-08-09 15:05:50 +02:00
Robert Schmidt 00609ed15a Enable UDP traffic test in 5G FDD RFsim test 2022-04-28 14:04:16 +02:00
hardy 1fc6d12aef Add retx checkers to make CI test fail on retx thresholds 2022-02-28 16:44:08 +01:00
Raphael Defosseux 92a021a159 fix(docker): SA FDD template file not generated; cosmetics changes on the CI side
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2022-02-10 15:45:44 +01:00
Robert Schmidt 284734ba86 Add 5G FDD RFsim test 2022-02-01 08:41:04 +01:00