Commit Graph
3313 Commits
Author SHA1 Message Date
Robert Schmidt bd2b833c58 CI: deploy OpenShift-based 5GC through CoreNetwork, use in Ping/Iperf
- Use scripts to deploy OpenShift-based 5GC in ci_infra.yaml
- Use for oc-cn5g, oc-cn5g-20897, and oc-cn5g-20897-aerial2
  for (un)deployment, ping, iperf in relevant XML files
- Convert hardcoded IP addresses to %cn_ip%
2025-03-31 16:38:13 +02:00
Robert Schmidt 5f3f837021 CI: deploy sabox 5GC through cls_core.py, use in Ping/Iperf
- issue sabox commands from ci_infra.yaml
- use for sabox-nepes (un)deployment, ping, iperf in all XML files
2025-03-31 16:38:13 +02:00
Robert Schmidt 246ad2dda3 Add (Un)deployCoreNetwork in test framework 2025-03-31 16:38:13 +02:00
Robert Schmidt 6bd96f1b5f CI Ping, Iperf: remove UE/CN logging, is done automatically 2025-03-31 16:38:13 +02:00
Robert Schmidt d1f58d1430 Use new core network class in Iperf()/Iperf2_Unidir()/Ping()
Use the core network class to configure one "end" of these tests. This
will make the tests more generic and predictable, as they are explicitly
configured through two ci_infra.yaml "entities", instead of some
implicit "EPC" IP address given in configuration.

As of this commit, no XML passes this info into the framework, so no XML
step will work. As it is many changes, the following commits will add
the necessary info one by one.
2025-03-31 16:38:12 +02:00
Robert Schmidt dc694475d0 Add helper class for core network handling in CI
This adds a helper class to manage various core networks in the CI
testing framework. Specifically, it reads from a YAML file information
such as a node, (un-)deployment script (file), log collection
instructions, etc., in order to allow a common interface to be used to
deploy and undeploy various core network implementations.

This commit adds the class (in cls_corenetwork.py) as well as tests for
this class.
2025-03-31 16:38:12 +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 703bf07c81 Remove EPC from InitializeNB()/TerminateeNB()
These two functions use the EPC class to potentially fill in
EPC/5GC-related information, or start a packet tracer (tshark). The only
pipeline that uses these functions is RAN-gNB-N300-Timing-Phytest-LDPC,
which does not use a core network. This functionality is not used, and
can therefore be removed.
2025-03-28 14:34:03 +01:00
Robert Schmidt f55c1a7a4f Correct UE interface for fembms test 2025-03-28 14:34:03 +01:00
Robert Schmidt c8534a0b51 CI: Correct Iperf2_Unidir(): only status code required 2025-03-28 14:34:01 +01:00
Robert Schmidt e5d8c25084 Add configurable infra for Iperf2_Unidir, test, fixes
Add a possibility to use an "infrastructure YAML file" to configure both
ends of the iperf2 call through a file.

Fix bugs in Iperf2: at least on my machine, iperf2 start time is logged
at 0.00 not 0.0, so update the regex to match both. Do not overwrite
results if the matched regex (otherwise, the result might be None at the
end) and suppress server output.

Add a unit test to test that this function actually works (on my
machine, with iperf v2.2.1), as well as a unit test for analysis.
2025-03-28 14:31:28 +01:00
Robert Schmidt ac6b296616 Iperf: Redirect server output to NULL
It's not needed/used anywhere, and some CI pipelines have a lot of
useless output.

On this occasion, also remove the unused nohup.
2025-03-28 14:31:19 +01:00
Robert Schmidt bbae3b24ad Merge remote-tracking branch 'origin/arm-build-pipeline' into integration_2025_w12 (!3286)
Add support for ARM build pipeline

Modify the existing python code to be able to build images where the
image tag can be prepended with a prefix, here arm_. This is preparatory
work to create the ARM build image pipeline, and reuse the existing
internal registry on porcepix to have x86 and ARM images coexist.

Fix various bugs in the build system to allow to build on a system with
as many cores as gracehopper.

Also, fix two programs (usim, nvram) to work correctly under ARM.
2025-03-24 14:45:12 +01:00
Robert Schmidt 5b07283003 Add ARM build pipeline to RAN-Container-Parent and documentation 2025-03-24 11:43:44 +01:00
Robert Schmidt 4ff8cf6c80 Push ARM build images to registry for arm_ prefix 2025-03-24 09:19:43 +01:00
Robert Schmidt 01d48c1d82 Add pull image with tag prefix and XML
After the parent commit, the registry might contain prefixed images.
This commit adds the functionality to pull such prefixed image. Since we
rename the pulled image (to have a consistent name, from whichever
registry we might pull), remove the prefix as well so that it can be
used with other CI functionality (remove image, use in test, ...)

Examples for renaming:
- pull from internal_registry for x86
  internal_registry/oai-gnb:branchA => oai-ci/oai-gnb:branchA
- pull from internal registry for ARM with "arm_" prefix
  internal_registry/oai-gnb:arm_branchA => oai-ci/oai-gnb:branchA
- pull from x86 other registry (e.g., openshift)
  openshift/namespace/oai-gnb:branchA => oai-ci/oai-gnb:branchA
2025-03-24 09:19:30 +01:00
Robert Schmidt d67d5793ce Add push image with tag prefix
The only currently viable way to push ARM images to our registry is to
use a custom tag prefix. Modify the python test code to specify such a
tag, and default to "" (no prefix).
2025-03-24 09:19:30 +01:00
Robert Schmidt 3e823b25c1 Add ARM-specific image-build and XML
After the preceding commits, it's now possible to build images on ARM.
Add a specific "native_arm" build kind to only build what we need as of
now (do not only call it "arm", as that would match the kind
"build_cross_arm64").

Add the corresponding XML. Pushing of images is disabled, as this does
not work as of now.
2025-03-24 09:19:30 +01:00
Robert Schmidt 3f5181d50d Match nvipc.zip through glob
The (existing) Aerial pipeline on devkit uses an older version of nvipc,
which is upgraded on gracehopper. Use a glob to match them equally,
which also aligns this code with the corresponding Dockerfile, which
already uses that glob.
2025-03-24 09:19:30 +01:00
Robert Schmidt 19932b10f6 Configurable infrastructure file for Ping and Iperf()
- Make configurable to override (to be used later in extended tests with
  new core class)
- Move ping-iperf test infra to tests/ directory
2025-03-21 16:51:56 +01:00
Robert Schmidt 4a9bb6dbe4 Ping from correct UE 2025-03-21 16:51:56 +01:00
Robert Schmidt 60094de81f Remove two unused/duplicate steps 2025-03-21 16:51:56 +01:00
Robert Schmidt 083765f7a7 Remove outdated/unused XML files 2025-03-21 16:51:56 +01:00
Robert Schmidt b29b60cdf8 Remove unused functions in epc.py 2025-03-20 10:30:31 +01:00
Robert Schmidt 32cd3a03e6 Remove porcepix-cn5g, there is no 5GC on that machine 2025-03-20 10:30:13 +01:00
Robert Schmidt 67ffa02416 Improve logging in cls_module.Module_UE: prints the same 2025-03-20 08:55:41 +01:00
Robert Schmidt c3e9e62f71 cls_cmd: printed commands are debug 2025-03-19 14:57:14 +01:00
Robert Schmidt 7f55a11045 Fix: when calling unknown test case class, fail pipeline 2025-03-19 14:49:22 +01:00
Jaroslava Fiedlerova c4551fecba Merge remote-tracking branch 'origin/fix-jenkins-message-formatting' into integration_2025_w11 (!3313)
Small fix for jenkins message formatting
2025-03-18 11:03:28 +01:00
Bartosz Podrygajlo f0c926306b Small fix for jenkins message formatting 2025-03-18 10:32:55 +01:00
Robert Schmidt 8cbfa7b797 Use absolute path for copy
Local_Cmd forces use to use absolute paths for copy operations (because
that makes more clear where files are being copied). Use the absolute
path to avoid the corresponding exception.
2025-03-18 09:21:25 +01:00
Robert Schmidt f70149933c Use getConnection() to allow build on localhost
Depending on the passed IP addr/host name, getConnection() will select
the right LocalCmd/RemoteCmd, which is better than hardcoded.
2025-03-18 09:21:24 +01:00
Bartosz Podrygajlo 2f09727811 Add a new CI label: nrUE
Added handling of the nrUE label which limits the amount of CI tests to run.
Only tests that use nr-uesoftmodem or phy simulators are triggered.
2025-03-17 17:09:05 +01:00
francescomani 10da6aa418 Merge remote-tracking branch 'origin/add-ci-test-msg3-c-rnti-ra' into integration_2025_w11 2025-03-17 16:55:07 +01:00
Guido Casati 7ba0613ae8 Add test for C-RNTI RA trigger to 24 PRB RFSIM CI pipeline 2025-03-17 16:54:18 +01:00
Jaroslava Fiedlerova b9a4ebd11f CI: increase timeout for OC RHEL builds 2025-03-13 10:01:32 +01:00
Jaroslava Fiedlerova 4f9a152f6b CI: remove timeout for OC CN deployments/undeployments
Default value of timeout is 5 minutes.
2025-03-13 10:01:25 +01:00
francescomani 7506d6343e Merge remote-tracking branch 'origin/f1-handover-minor-fixes' into integration_2025_w10 2025-03-10 09:17:05 +01:00
Guido Casati 501ac2c7d2 Add handover to rfsim F1 CI test
Added 3 way F1 handover test with data exchange in the F1 pipeline.
The major change is that the UE is acting as a server in the handover
scenarion, so it needs to comply with the changes in !3280.
2025-03-07 15:46:54 +01:00
francescomani 10060982c0 Merge remote-tracking branch 'origin/ue-long-prach' into integration_2025_w09 2025-03-01 16:34:48 +01:00
Sakthivel Velumani 94abbf247f Modified CI config file of NTN test
NTN test uses long PRACH format (format 0).
2025-02-25 11:58:41 -05:00
Jaroslava Fiedlerova b7c5e13e20 Merge remote-tracking branch 'origin/update_timing_phytest' into integration_2025_w08 (!3270)
Update of gNB-N300-Timing-Phytest threshold

Current results are in some cases well below the current thresholds. We should
periodically adapt them to actual values so that the test is meaningful.
2025-02-21 14:26:19 +01:00
Jaroslava Fiedlerova 01431a0e3f Merge remote-tracking branch 'origin/nrLDPC_coding_improvements_3' into integration_2025_w08 (!3227)
fix(nrLDPC_coding): timers in DL encoding, fix(ldpctest): Confusion in sizes

Main improvements:

1. fix(ldpctest): Confusion in sizes
   IMPORTANT: This fix makes that ldpctest now works with BG2 and K' != K!
   (Worth double checking with more cases than I did check with though)
   The variable block_length had an ambiguous role and was used as both K and
   Kprime. This was leading to arrays with wrong sizes and functions with wrong
   arguments. Now there is not anymore block_length but K and Kprime.
   Kprime can be set with the command line argument -l.
   There was also some problems with array allocation for segments with length
   not divisible by 8. A proper sizing with ((size_in_bits + 7) & ~7) / 8 was
   used.
   A proper masking of the last byte containing payload bits was also added to
   keep filler bits to 0 after random initialization.

2. fix(nrLDPC_coding): timers in DL encoding
   While timers were available for rate matching and interleaving in the new
   interface, these timers were not merged to rate matching and interleaving
   timers in nr_dlsch_coding.
2025-02-21 14:23:24 +01:00
Sagar Arora 5f2f907d53 chore(ci): change image rentention from 4weeks to 3weeks
Signed-off-by: Sagar Arora <sagar.arora@openairinterface.org>
2025-02-20 08:31:50 +01:00
francescomani 66d8cf0f13 update of timing test thresholds to reflect current values 2025-02-19 18:28:04 +01:00
Robert Schmidt 7d574ffcfb Merge remote-tracking branch 'origin/fix_ntn_leo' into integration_2025_w07 (!3194)
fix NTN LEO scenarios

- gNB: add support for NTN parameter ta-CommonDrift-r17
- NR UE: fix application of NTN TA information
- NR UE: add command line parameter ntn-initial-time-drift to compensate
  time drift during initial sync
- NR UE: fix writeTimestamp inconsistencies
- NR UE: add MAC state UE_RECEIVING_SIB ensuring to start RA only after
  successfully receiving SIBs
- rfsimulator: update earth radius for LEO simulation to match UE
  position in ue.conf file
- update conf files for NTN LEO scenario
- update description how to run NTN scenarios in RUNMODEM.md
- fix: ta-Common is a round-trip-time, not a one-way delay
- NR UE: simplify calculation of next_tx_slot_and_frame by moving up
  assignment of duration_rx_to_tx
- cellbarredNTN indicates notbarred in SIB1 if NTN access is available
- Removed b66 NTN and enabled B254 NTN conf file in CI
- NR UE: RRC layer now explicitly tells MAC layer when the RA procedure
  can be started
- move NTN LEO config to band 254 and update doc/RUNMODEM.md

Closes #901
2025-02-17 15:09:24 +01:00
Thomas Schlichter 0bc46a22c6 move NTN LEO config to band 254 and update doc/RUNMODEM.md 2025-02-14 17:04:47 +00:00
Raghavendra Dinavahi 48c8d67393 Removed b66 NTN and enabled B254 NTN conf file in CI 2025-02-14 17:04:47 +00:00
Thomas Schlichter f1ae1025ad fix: ta-Common is a round-trip-time, not a one-way delay 2025-02-14 17:03:56 +00:00
Thomas Schlichter cf0a1d6db4 update conf files for NTN LEO scenario
Also added a dedicated conf file for NTN LEO, that can be used for CI.
2025-02-14 17:03:56 +00:00