Skip to content

Commit 4cf7513

Browse files
author
codebot
committed
Update main
# Conflicts: # include/srsran/ran/nr_cgi_helpers.h # tests/unittests/phy/lower/modulation/ofdm_modulator_test_data.tar.gz # tests/unittests/phy/upper/channel_processors/pusch/pusch_demodulator_test_data.tar.gz # tests/unittests/phy/upper/equalization/channel_equalizer_test_data.tar.gz # tests/unittests/phy/upper/signal_processors/dmrs_pusch_estimator_test_data.tar.gz # tests/unittests/phy/upper/signal_processors/nzp_csi_rs_generator_test_data.tar.gz # tests/unittests/phy/upper/signal_processors/port_channel_estimator_test_data.tar.gz # tests/unittests/ran/bcd_helpers_test.cpp # tests/unittests/ran/nr_cgi_helpers_test.cpp
2 parents a804c5b + d8c4e70 commit 4cf7513

File tree

485 files changed

+9403
-3914
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

485 files changed

+9403
-3914
lines changed

.github/workflows/docker.yml

Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
name: Docker Builder
2+
on:
3+
push:
4+
branches:
5+
- main
6+
- test
7+
release:
8+
types: [published]
9+
10+
jobs:
11+
docker:
12+
runs-on: ubuntu-latest
13+
strategy:
14+
matrix:
15+
include:
16+
# --> split72
17+
# AMD AVX2
18+
- SUFFIX: release_avx2
19+
SPLIT: "split72"
20+
EXTRA_CMAKE_ARGS: -DAUTO_DETECT_ISA=Off
21+
ARCH: x86-64-v3
22+
TAG: amd64-avx2
23+
PLATFORM: amd64
24+
LIB: dpdk
25+
LIB_VERSION: "23.11"
26+
- SUFFIX: release_with_debug_avx2
27+
SPLIT: "split72"
28+
EXTRA_CMAKE_ARGS: -DAUTO_DETECT_ISA=Off -DFORCE_DEBUG_INFO=On
29+
ARCH: x86-64-v3
30+
TAG: amd64-avx2
31+
PLATFORM: amd64
32+
LIB: dpdk
33+
LIB_VERSION: "23.11"
34+
# AMD AVX512
35+
- SUFFIX: release_avx512
36+
SPLIT: "split72"
37+
EXTRA_CMAKE_ARGS: -DAUTO_DETECT_ISA=Off
38+
ARCH: x86-64-v4
39+
TAG: amd64-avx2-avx512
40+
PLATFORM: amd64
41+
LIB: dpdk
42+
LIB_VERSION: "23.11"
43+
- SUFFIX: release_with_debug_avx512
44+
SPLIT: "split72"
45+
EXTRA_CMAKE_ARGS: -DAUTO_DETECT_ISA=Off -DFORCE_DEBUG_INFO=On
46+
ARCH: x86-64-v4
47+
TAG: amd64-avx2-avx512
48+
PLATFORM: amd64
49+
LIB: dpdk
50+
LIB_VERSION: "23.11"
51+
# --> split8
52+
# AMD AVX2
53+
- SUFFIX: release_avx2
54+
SPLIT: "split8"
55+
EXTRA_CMAKE_ARGS: -DAUTO_DETECT_ISA=Off
56+
ARCH: x86-64-v3
57+
TAG: amd64-avx2
58+
PLATFORM: amd64
59+
LIB: uhd
60+
LIB_VERSION: "4.6.0.0"
61+
- SUFFIX: release_with_debug_avx2
62+
SPLIT: "split8"
63+
EXTRA_CMAKE_ARGS: -DAUTO_DETECT_ISA=Off -DFORCE_DEBUG_INFO=On
64+
ARCH: x86-64-v3
65+
TAG: amd64-avx2
66+
PLATFORM: amd64
67+
LIB: uhd
68+
LIB_VERSION: "4.6.0.0"
69+
env:
70+
NAME: srsran_${{ matrix.SPLIT }}_${{ matrix.SUFFIX }}
71+
environment: dockerhub
72+
steps:
73+
- name: Checkout code
74+
uses: actions/checkout@v4
75+
76+
- name: Set up QEMU
77+
uses: docker/setup-qemu-action@v3
78+
79+
- name: Set up Docker Buildx
80+
uses: docker/setup-buildx-action@v3
81+
82+
- name: Determine tags based on branch
83+
id: tags
84+
run: |
85+
BRANCH_NAME="${GITHUB_REF#refs/heads/}"
86+
DATE_TAG="${GITHUB_SHA:0:10}-$(date +'%Y-%m-%d')"
87+
RELEASE_NAME="${{ github.event.release.name }}"
88+
89+
if [ -n "$RELEASE_NAME" ]; then
90+
tags="${{ env.NAME }}:${DATE_TAG},${{ env.NAME }}:${RELEASE_NAME}"
91+
else
92+
if [ "$BRANCH_NAME" == "main" ]; then
93+
tags="${{ env.NAME }}:${DATE_TAG},${{ env.NAME }}:latest"
94+
elif [ "$BRANCH_NAME" == "test" ]; then
95+
tags="${{ env.NAME }}:${DATE_TAG},${{ env.NAME }}:next"
96+
fi
97+
fi
98+
echo "tags=$tags" >> $GITHUB_OUTPUT
99+
100+
- name: Login to Docker Hub
101+
uses: docker/[email protected]
102+
with:
103+
username: ${{ secrets.DOCKERHUB_USERNAME }}
104+
password: ${{ secrets.DOCKERHUB_TOKEN }}
105+
logout: true
106+
ecr: false
107+
108+
- name: Build and push
109+
uses: docker/build-push-action@v6
110+
with:
111+
push: true
112+
tags: ${{ steps.tags.outputs.tags }}
113+
file: ./docker/Dockerfile
114+
platforms: ${{ matrix.PLATFORM }}
115+
build-args: |
116+
NAME="srsran_${SPLIT}_${SUFFIX}"
117+
LIB=${{ matrix.LIB }}
118+
LIB_VERSION=${{ matrix.LIB_VERSION }}
119+
ARCH=${{ matrix.ARCH }}

.gitlab/ci/build.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -253,7 +253,7 @@ variables:
253253
valgrind)
254254
G_DEBUG=gc-friendly G_SLICE=always-malloc
255255
# Default timeout per test is 1500 (25 min)
256-
export CTEST_TIMEOUT=2700
256+
export CTEST_TIMEOUT=3600
257257
export CTEST_TEST_TIMEOUT=${CTEST_TIMEOUT}
258258
ctest_extra="-T memcheck -LE NO_MEMCHECK --timeout ${CTEST_TIMEOUT}"
259259
;;
@@ -1334,7 +1334,7 @@ debian 11 amd64 avx512:
13341334
COMPILER: clang
13351335
ENABLE_ASAN: "True"
13361336
TEST_MODE: default
1337-
- OS: [ubuntu-24.04, ubuntu-23.10, ubuntu-22.04]
1337+
- OS: [ubuntu-24.04]
13381338
SANITIZER: valgrind
13391339
COMPILER: gcc
13401340
TEST_MODE: valgrind

.gitlab/ci/e2e.yml

Lines changed: 34 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -147,17 +147,19 @@ e2e request and config validation:
147147
echo "srsGNB sources+build size is" $(du -hs .)
148148
# Remove any existing retina resource for this group
149149
- retina-delete-orchestration-network --user-name ^ci_${GROUP} --regex
150-
# Add extra secret env variables to the .env file
150+
# Add extra config env variables to the .env file
151151
- |
152152
echo "" >> .gitlab/ci/e2e/.env
153-
cat $RETINA_SECRET_ENV >> .gitlab/ci/e2e/.env
153+
cat $RETINA_CONFIG_ENV >> .gitlab/ci/e2e/.env
154+
155+
echo -e "\nGNB_BINARY_PATH=../../" >> .gitlab/ci/e2e/.env
156+
echo -e "\nGNB_REMOTE_PATH=$CI_PROJECT_DIR" >> .gitlab/ci/e2e/.env
157+
echo -e "\nis_executable=false" >> .gitlab/ci/e2e/.env
158+
154159
# Set username for retina
155160
- |
156161
cd tests/e2e
157162
export LOGNAME=ci_${GROUP}_${GITLAB_USER_LOGIN}
158-
# Change sharing gnb file for complete src + build (With gnb) folder
159-
- |
160-
sed -i "s|- local_path: ../../build/apps/gnb/gnb|- local_path: ../../|; s|remote_path: /usr/local/bin|remote_path: $CI_PROJECT_DIR|; s|is_executable: true|is_executable: false|" ${CI_PROJECT_DIR}/.gitlab/ci/e2e/retina_request_${TESTBED}.yml
161163
# Run Retina
162164
- |
163165
E2E_CMD="retina-launcher ${RETINA_LAUNCHER_ARGS} --retina-request=${CI_PROJECT_DIR}/.gitlab/ci/e2e/retina_request_${TESTBED}.yml ${PYTEST_ARGS} -k '${KEYWORDS}' -m '${MARKERS}' --register-parameter ue.all.log_level=$E2E_LOG_LEVEL gnb.all.log_level=$E2E_LOG_LEVEL ${RETINA_PARAM_ARGS}"
@@ -282,6 +284,33 @@ amari 4UE deb:
282284
- *txrx-lib
283285
- *retina-needs
284286

287+
amari 8UE:
288+
extends: .zmq
289+
variables:
290+
MARKERS: "zmq and not smoke"
291+
E2E_LOG_LEVEL: "info"
292+
RETINA_PARAM_ARGS: "gnb.all.pcap=True gnb.all.rlc_enable=False gnb.all.enable_integrity_protection=True"
293+
needs:
294+
- job: "basic relwithdeb"
295+
artifacts: true
296+
- *txrx-lib
297+
- *retina-needs
298+
parallel:
299+
matrix:
300+
- KEYWORDS:
301+
["reestablishment and sequentially", "handover and sequentially"]
302+
303+
amari 8UE beta:
304+
extends: amari 8UE
305+
parallel:
306+
matrix:
307+
- KEYWORDS:
308+
[
309+
"reestablishment and not sequentially",
310+
"handover and not sequentially",
311+
]
312+
allow_failure: true
313+
285314
amari 32UE:
286315
extends: .zmq
287316
variables:
@@ -305,13 +334,6 @@ amari 32UE:
305334
"iperf and tcp and not band:3",
306335
]
307336

308-
amari 8UE beta:
309-
extends: amari 32UE
310-
parallel:
311-
matrix:
312-
- KEYWORDS: ["reestablishment", "handover"]
313-
allow_failure: true
314-
315337
amari 32UE asan:
316338
extends: .zmq
317339
variables:

.gitlab/ci/e2e/.env

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
1+
GNB_REMOTE_PATH=/usr/local/bin/gnb
2+
GNB_IS_EXECUTABLE=true
13
SRSGNB_REGISTRY_URI=registry.gitlab.com/softwareradiosystems/srsgnb
24
RETINA_REGISTRY_PREFIX=registry.gitlab.com/softwareradiosystems/ci/retina
3-
RETINA_VERSION=0.49.18
5+
RETINA_VERSION=0.50.4
46
UBUNTU_VERSION=24.04
57
AMARISOFT_VERSION=2023-09-08
68
SRSUE_VERSION=23.11
79
OPEN5GS_VERSION=2.7.0
810
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
9-
METRICS_SERVER_VERSION=1.7.2
11+
METRICS_SERVER_VERSION=1.7.3
1012
DPDK_VERSION=23.11
1113
ZMQ_HOSTLABEL_0=kubernetes.io/hostname=k8s-worker-vm2
1214
ZMQ_HOSTLABEL_1=kubernetes.io/hostname=k8s-worker-vm2
15+
AMARISOFT_TXRX_BINARY_PATH=../../build_trx_srsran/libtrx_srsran.so
16+
GNB_BINARY_PATH=../../build/apps/gnb/gnb

.gitlab/ci/e2e/retina_request_android_b200.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,9 @@
4444
environment:
4545
- PATH: ${PATH}:/builds/softwareradiosystems/srsgnb/build/apps/gnb
4646
shared_files:
47-
- local_path: ../../build/apps/gnb/gnb
48-
remote_path: /usr/local/bin
49-
is_executable: true
47+
- local_path: ${GNB_BINARY_PATH}
48+
remote_path: ${GNB_REMOTE_PATH}
49+
is_executable: ${GNB_IS_EXECUTABLE}
5050

5151
- name: open5gs
5252
type: 5gc

.gitlab/ci/e2e/retina_request_android_n300.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@
3030
requirements:
3131
arch: amd64
3232
cpu:
33-
requests: 14
34-
limits: 14
33+
requests: 12
34+
limits: 12
3535
memory:
3636
requests: "20G"
3737
limits: "20G"
@@ -45,9 +45,9 @@
4545
environment:
4646
- PATH: ${PATH}:/builds/softwareradiosystems/srsgnb/build/apps/gnb
4747
shared_files:
48-
- local_path: ../../build/apps/gnb/gnb
49-
remote_path: /usr/local/bin
50-
is_executable: true
48+
- local_path: ${GNB_BINARY_PATH}
49+
remote_path: ${GNB_REMOTE_PATH}
50+
is_executable: ${GNB_IS_EXECUTABLE}
5151

5252
- name: open5gs
5353
type: 5gc

.gitlab/ci/e2e/retina_request_android_x300.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@
3030
requirements:
3131
arch: amd64
3232
cpu:
33-
requests: 14
34-
limits: 14
33+
requests: 12
34+
limits: 12
3535
memory:
3636
requests: "20G"
3737
limits: "20G"
@@ -45,9 +45,9 @@
4545
environment:
4646
- PATH: ${PATH}:/builds/softwareradiosystems/srsgnb/build/apps/gnb
4747
shared_files:
48-
- local_path: ../../build/apps/gnb/gnb
49-
remote_path: /usr/local/bin
50-
is_executable: true
48+
- local_path: ${GNB_BINARY_PATH}
49+
remote_path: ${GNB_REMOTE_PATH}
50+
is_executable: ${GNB_IS_EXECUTABLE}
5151

5252
- name: open5gs
5353
type: 5gc

.gitlab/ci/e2e/retina_request_rf_b200.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,8 @@
3535
requirements:
3636
arch: amd64
3737
cpu:
38-
requests: 14
39-
limits: 14
38+
requests: 12
39+
limits: 12
4040
memory:
4141
requests: "20G"
4242
limits: "20G"
@@ -49,9 +49,9 @@
4949
environment:
5050
- PATH: ${PATH}:/builds/softwareradiosystems/srsgnb/build/apps/gnb
5151
shared_files:
52-
- local_path: ../../build/apps/gnb/gnb
53-
remote_path: /usr/local/bin
54-
is_executable: true
52+
- local_path: ${GNB_BINARY_PATH}
53+
remote_path: ${GNB_REMOTE_PATH}
54+
is_executable: ${GNB_IS_EXECUTABLE}
5555

5656
- name: open5gs
5757
type: 5gc

.gitlab/ci/e2e/retina_request_test_mode.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,9 @@
2828
environment:
2929
- PATH: ${PATH}:/builds/softwareradiosystems/srsgnb/build/apps/gnb
3030
shared_files:
31-
- local_path: ../../build/apps/gnb/gnb
32-
remote_path: /usr/local/bin
33-
is_executable: true
31+
- local_path: ${GNB_BINARY_PATH}
32+
remote_path: ${GNB_REMOTE_PATH}
33+
is_executable: ${GNB_IS_EXECUTABLE}
3434

3535
- name: open5gs
3636
type: 5gc

.gitlab/ci/e2e/retina_request_viavi.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,9 @@
3333
- PATH: ${PATH}:/builds/softwareradiosystems/srsgnb/build/apps/gnb
3434
- LD_LIBRARY_PATH: /opt/dpdk/${DPDK_VERSION}/lib/x86_64-linux-gnu/
3535
shared_files:
36-
- local_path: ../../build/apps/gnb/gnb
37-
remote_path: /usr/local/bin
38-
is_executable: true
36+
- local_path: ${GNB_BINARY_PATH}
37+
remote_path: ${GNB_REMOTE_PATH}
38+
is_executable: ${GNB_IS_EXECUTABLE}
3939

4040
- name: metrics-server
4141
type: generic

0 commit comments

Comments
 (0)