From 8ca6a4a06e67b46717f0e373e05b29d2bfe80a6d Mon Sep 17 00:00:00 2001 From: Jaroslava Fiedlerova Date: Fri, 4 Apr 2025 14:13:34 +0200 Subject: [PATCH 01/15] Modify polartest, smallblocktest and ldpctest to return '0' on success - Updated polartest, smallblocktest, and ldpctest to check BLER and return appropriate status: - Returns '0' if BLER equals 0.000000 (indicating success). - Returns '1' for all other BLER values (indicating failure). - This change improves consistency in return values across the test physims. --- openair1/PHY/CODING/TESTBENCH/ldpctest.c | 8 +++++--- openair1/PHY/CODING/TESTBENCH/polartest.c | 7 +++++-- openair1/PHY/CODING/TESTBENCH/smallblocktest.c | 12 ++++++++---- 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/openair1/PHY/CODING/TESTBENCH/ldpctest.c b/openair1/PHY/CODING/TESTBENCH/ldpctest.c index 5912c9d0b4..a5479f788b 100644 --- a/openair1/PHY/CODING/TESTBENCH/ldpctest.c +++ b/openair1/PHY/CODING/TESTBENCH/ldpctest.c @@ -432,7 +432,7 @@ int main(int argc, char *argv[]) short max_iterations = 5; int n_segments = 1; // double rate=0.333; - + int ret = 1; int nom_rate = 1; int denom_rate = 3; double SNR0 = -2.0; @@ -618,8 +618,10 @@ int main(int argc, char *argv[]) dec_iter[i].n_iter_max); i = i + 1; - if (decoded_errors[i - 1] == 0) + if (decoded_errors[i - 1] == 0) { + ret = 0; break; + } } fclose(fd); LOG_M("ldpctestStats.m", "SNR", &dec_iter[0].snr, i, 1, 7); @@ -630,5 +632,5 @@ int main(int argc, char *argv[]) loader_reset(); logTerm(); - return (0); + return ret; } diff --git a/openair1/PHY/CODING/TESTBENCH/polartest.c b/openair1/PHY/CODING/TESTBENCH/polartest.c index beab44c689..e84a62775b 100644 --- a/openair1/PHY/CODING/TESTBENCH/polartest.c +++ b/openair1/PHY/CODING/TESTBENCH/polartest.c @@ -22,6 +22,7 @@ configmodule_interface_t *uniqCfg = NULL; int main(int argc, char *argv[]) { // Default simulation values (Aim for iterations = 1000000.) + int ret = 1; int decoder_int16 = 0; int itr, iterations = 1000, arguments, polarMessageType = 0; // 0=PBCH, 1=DCI, 2=UCI double SNRstart = -20.0, SNRstop = 0.0, SNRinc = 0.5; // dB @@ -387,8 +388,10 @@ int main(int argc, char *argv[]) (double)timeEncoder.diff / timeEncoder.trials / (get_cpu_freq_GHz() * 1000.0), (double)timeDecoder.diff / timeDecoder.trials / (get_cpu_freq_GHz() * 1000.0)); - if (blockErrorCumulative == 0 && bitErrorCumulative == 0) + if (blockErrorCumulative == 0 && bitErrorCumulative == 0) { + ret = 0; break; + } blockErrorCumulative = 0; bitErrorCumulative = 0; @@ -398,5 +401,5 @@ int main(int argc, char *argv[]) print_meas(&timeDecoder, "polar_decoder", NULL, NULL); if (logFlag) fclose(logFile); - return (0); + return ret; } diff --git a/openair1/PHY/CODING/TESTBENCH/smallblocktest.c b/openair1/PHY/CODING/TESTBENCH/smallblocktest.c index 3759b1eab7..a701a49d1a 100644 --- a/openair1/PHY/CODING/TESTBENCH/smallblocktest.c +++ b/openair1/PHY/CODING/TESTBENCH/smallblocktest.c @@ -15,6 +15,7 @@ int main(int argc, char *argv[]) reset_meas(&timeDecoder); randominit(0); + int ret = 1; int arguments, iterations = 1000, messageLength = 11; // int matlabDebug = 0; uint32_t testInput, encoderOutput, codingDifference, nBitError = 0, blockErrorState = 0, blockErrorCumulative = 0, @@ -86,6 +87,8 @@ int main(int argc, char *argv[]) uint16_t mask = 0x07ff >> (11 - messageLength); for (SNR = SNRstart; SNR <= SNRstop; SNR += SNRinc) { + blockErrorCumulative = 0; + bitErrorCumulative = 0; printf("SNR %f\n", SNR); SNR_lin = pow(10, SNR / 10.0); sigma = 1.0 / sqrt(SNR_lin); @@ -161,13 +164,14 @@ int main(int argc, char *argv[]) ((double)blockErrorCumulative / iterations), ((double)timeEncoder.diff / timeEncoder.trials) / (get_cpu_freq_GHz()), ((double)timeDecoder.diff / timeDecoder.trials) / (get_cpu_freq_GHz() * 1000.0)); - - blockErrorCumulative = 0; - bitErrorCumulative = 0; } print_meas(&timeEncoder, "smallblock_encoder", NULL, NULL); print_meas(&timeDecoder, "smallblock_decoder", NULL, NULL); - return (0); + if (blockErrorCumulative == 0) { + ret = 0; + } + + return ret; } From 2402f37271d98af7930d45238cb3ad6d7c846ea5 Mon Sep 17 00:00:00 2001 From: Jaroslava Fiedlerova Date: Mon, 7 Apr 2025 17:35:16 +0200 Subject: [PATCH 02/15] Modify nr_dlsim, nr_pbchsim and nr_pucchsim to return '0' on success - Change return value of nr_dlsim, nr_pbchsim and nr_pucchsim to: - Return '0' if test succeeds (indicated also by "PDSCH/PBCH/PUCCH test OK" in the test log). - Return '1' if test fails. --- openair1/SIMULATION/NR_PHY/dlsim.c | 7 +++---- openair1/SIMULATION/NR_PHY/pbchsim.c | 4 +++- openair1/SIMULATION/NR_PHY/pucchsim.c | 4 +++- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/openair1/SIMULATION/NR_PHY/dlsim.c b/openair1/SIMULATION/NR_PHY/dlsim.c index 8babb7598d..e36d50c6ad 100644 --- a/openair1/SIMULATION/NR_PHY/dlsim.c +++ b/openair1/SIMULATION/NR_PHY/dlsim.c @@ -943,8 +943,7 @@ printf("%d\n", slot); nr_ue_phy_config_request(&UE_mac->phy_config); //NR_COMMON_channels_t *cc = RC.nrmac[0]->common_channels; - int n_errs = 0; - + int ret = 1; initNamedTpool(gNBthreads, &gNB->threadPool, true, "gNB-tpool"); initNotifiedFIFO(&gNB->L1_tx_free); initNotifiedFIFO(&gNB->L1_tx_filled); @@ -1371,10 +1370,10 @@ printf("%d\n", slot); if (effRate > (eff_tp_check*TBS)) { printf("PDSCH test OK\n"); + ret = 0; break; } - n_errs = n_errors[0]; } // NSR free(Sched_INFO); @@ -1423,7 +1422,7 @@ printf("%d\n", slot); free(filename_csv); } - return n_errs; + return ret; } diff --git a/openair1/SIMULATION/NR_PHY/pbchsim.c b/openair1/SIMULATION/NR_PHY/pbchsim.c index ef92fe23b9..4fc6f788b7 100644 --- a/openair1/SIMULATION/NR_PHY/pbchsim.c +++ b/openair1/SIMULATION/NR_PHY/pbchsim.c @@ -146,6 +146,7 @@ int main(int argc, char **argv) // int subframe_offset; // char fname[40], vname[40]; int trial,n_trials=1,n_errors=0,n_errors_payload=0; + int ret_test = 1; uint8_t transmission_mode = 1,n_tx=1,n_rx=1; uint16_t Nid_cell=0; uint64_t SSB_positions=0x01; @@ -771,6 +772,7 @@ int main(int argc, char **argv) if (((float)n_errors/(float)n_trials <= target_error_rate) && (n_errors_payload==0)) { printf("PBCH test OK\n"); + ret_test = 0; break; } @@ -816,6 +818,6 @@ int main(int argc, char **argv) loader_reset(); logTerm(); - return(n_errors); + return ret_test; } diff --git a/openair1/SIMULATION/NR_PHY/pucchsim.c b/openair1/SIMULATION/NR_PHY/pucchsim.c index 96840c27b2..8c9f2961c4 100644 --- a/openair1/SIMULATION/NR_PHY/pucchsim.c +++ b/openair1/SIMULATION/NR_PHY/pucchsim.c @@ -109,6 +109,7 @@ int main(int argc, char **argv) //int subframe_offset; //char fname[40], vname[40]; int trial,n_trials=100,n_errors=0,ack_nack_errors=0,sr_errors=0; + int ret = 1; uint8_t transmission_mode = 1,n_tx=1,n_rx=1; uint16_t Nid_cell=0; uint64_t SSB_positions=0x01; @@ -758,6 +759,7 @@ int main(int argc, char **argv) printf("ACK/NACK: SNR=%f, n_trials=%d, n_bit_errors=%d\n",SNR,n_trials,ack_nack_errors); if((float)(ack_nack_errors+sr_errors)/(float)(n_trials)<=target_error_rate){ printf("PUCCH test OK\n"); + ret = 0; break; } } @@ -799,5 +801,5 @@ int main(int argc, char **argv) loader_reset(); logTerm(); - return(n_errors); + return ret; } From dec74058e52ccd3e88261e57047bf8a732f779e2 Mon Sep 17 00:00:00 2001 From: Jaroslava Fiedlerova Date: Wed, 14 May 2025 14:00:47 +0200 Subject: [PATCH 03/15] Disable DEBUG_UE_TIMING logs in 4g dlsim test Setting the DEBUG_UE_TIMING flag caused a flood of UE timing logs, resulting in dlsim output logs as large as 1.5MB per test in CI. This commit comments out the line where we set the flag to reduce log verbosity. --- openair1/SIMULATION/LTE_PHY/dlsim.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openair1/SIMULATION/LTE_PHY/dlsim.c b/openair1/SIMULATION/LTE_PHY/dlsim.c index 5cfb21f8b0..5e6140db9d 100644 --- a/openair1/SIMULATION/LTE_PHY/dlsim.c +++ b/openair1/SIMULATION/LTE_PHY/dlsim.c @@ -892,7 +892,7 @@ int main(int argc, char **argv) { set_glog_onlinelog(true); // enable these lines if you need debug info set_glog(loglvl); - SET_LOG_DEBUG(DEBUG_UE_TIMING); + // SET_LOG_DEBUG(DEBUG_UE_TIMING); // moreover you need to init itti with the following line // however itti will catch all signals, so ctrl-c won't work anymore // alternatively you can disable ITTI completely in CMakeLists.txt From 5312e9e43b37af4955d8e386dd39f9d2ff5d5986 Mon Sep 17 00:00:00 2001 From: Jaroslava Fiedlerova Date: Wed, 2 Apr 2025 16:47:00 +0200 Subject: [PATCH 04/15] Convert physims in cmake_targets/autotests/test_case_list.xml to ctest Convert physim testcases defined in cmake_targets/autotests/test_case_list.xml into CTest based tests. These test are activated when '-DENABLE_PHYSIM_TESTS=ON' CMake flag is set. Note: Tests for dlsim_tm4 are excluded, due to compilation issues. CTest evaluates success based on return code: '0' = pass, non-zero = fail. The following table outlines the physim executables, their success expressions (`expr_true`), and the return codes for success (`ret_success`) and failure (`ret_fail`). The `expr_true` is used in test_case_list.xml to check for test results. | test_exec | expr_true | ret_succ | ret_fail | | ------------- | -------------- | --------------- | ----------------- | | dlsim | passed | 0 | -1 | | ulsim | passed | 0 (ret) | 1 (ret) | | ldpctest | BLER 0.000000 | 0 | 1 | | polartest | BLER= 0.000000 | 0 | 1 | | nr_pbchsim | PBCH test OK | 0 | 1 | | nr_dlsim | PDSCH test OK | 0 | 1 | | smallblocktest| BLER= 0.000000 | 0 | 1 | | nr_ulschsim | PUSCH test OK | 0 (n_errors) | n_errors | | nr_pucchsim | PUCCH test OK | 0 | 1 | | nr_ulsim | PUSCH test OK | 0 (ret) | -1 (ret) | | nr_prachsim | PRACH test OK | 0 (prach_errors)| > 0 (prach_errors)| | nr_psbchsim | PSBCH test OK | 0 (errors) | > 0 (errors) | Add CMake flag "ENABLE_PHYSIM_TESTS=ON" when building OAI with "-P" or "--phy_simulators" option. This allows physim-related ctest to be executed from build directory. Add dependency on coding lib for all 4G physims --- CMakeLists.txt | 13 +- cmake_targets/build_oai | 1 + openair1/PHY/CODING/CMakeLists.txt | 4 + openair1/PHY/CODING/tests/CMakeLists.txt | 263 +++++++++++++++++++++++ 4 files changed, 278 insertions(+), 3 deletions(-) create mode 100644 openair1/PHY/CODING/tests/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index feb7e41a4f..c3f0f80e34 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2052,6 +2052,7 @@ foreach(myExe dlsim dlsim_tm7 ulsim pbchsim scansim mbmssim pdcchsim pucchsim pr pthread m rt CONFIG_LIB ${T_LIB} dl shlib_loader ) target_link_libraries(${myExe} PRIVATE asn1_lte_rrc_hdrs) + add_dependencies(${myExe} coding) endforeach(myExe) @@ -2104,12 +2105,18 @@ include(${OPENAIR1_DIR}/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/CMakeLists.txt) set(ENABLE_TESTS OFF CACHE STRING "Activate build of tests") set_property(CACHE ENABLE_TESTS PROPERTY TYPE BOOL) -if(ENABLE_TESTS) - # activates globally adding tests such that they can be run using ctest - enable_testing() +set(ENABLE_PHYSIM_TESTS OFF CACHE STRING "Activate build of physim tests") +set_property(CACHE ENABLE_PHYSIM_TESTS PROPERTY TYPE BOOL) + +if(ENABLE_TESTS OR ENABLE_PHYSIM_TESTS) # meta-target: each test is supposed to add_dependencies(tests ${NEWTEST}) # then, it is possible to build and execute all tests using "ninja tests && ctest" add_custom_target(tests) + # activates globally adding tests such that they can be run using ctest + enable_testing() +endif() + +if(ENABLE_TESTS) find_package(GTest) if (NOT GTest_FOUND) message(STATUS "GTest package not found, will download googletest automatically. To prevent that install google test on your system (libgtest-dev)") diff --git a/cmake_targets/build_oai b/cmake_targets/build_oai index 92dce6d1cd..5e9bfaf444 100755 --- a/cmake_targets/build_oai +++ b/cmake_targets/build_oai @@ -317,6 +317,7 @@ function main() { shift 2;; -P | --phy_simulators) SIMUS_PHY=1 + CMAKE_CMD="$CMAKE_CMD -DENABLE_PHYSIM_TESTS=ON" # TODO: fix: dlsim_tm4 pucchsim prachsim pdcchsim pbchsim mbmssim TARGET_LIST="$TARGET_LIST dlsim ulsim ldpctest polartest smallblocktest nr_pbchsim nr_dlschsim nr_ulschsim nr_dlsim nr_ulsim nr_pucchsim nr_prachsim nr_psbchsim" echo_info "Will compile dlsim, ulsim, ..." diff --git a/openair1/PHY/CODING/CMakeLists.txt b/openair1/PHY/CODING/CMakeLists.txt index 4eee35a2cd..b37ac19c17 100644 --- a/openair1/PHY/CODING/CMakeLists.txt +++ b/openair1/PHY/CODING/CMakeLists.txt @@ -95,3 +95,7 @@ if (ENABLE_LDPC_CUDA) endif() add_subdirectory(nrLDPC_coding) + +if(ENABLE_PHYSIM_TESTS) + add_subdirectory(tests) +endif() diff --git a/openair1/PHY/CODING/tests/CMakeLists.txt b/openair1/PHY/CODING/tests/CMakeLists.txt new file mode 100644 index 0000000000..fc008b861f --- /dev/null +++ b/openair1/PHY/CODING/tests/CMakeLists.txt @@ -0,0 +1,263 @@ +# Define a macro to add tests for different physical simulators +macro(add_physim_test test_gen test_exec test_description test_label) + # catch all the arguments past the last expected arqument and store them in the options_list + set(options_list ${ARGN}) + set(test_name physim.${test_gen}.${test_exec}.${test_description}) + add_test( + NAME ${test_name} + COMMAND ${test_exec} ${options_list} + COMMAND_EXPAND_LISTS + ) + set_tests_properties(${test_name} PROPERTIES + LABELS "${test_exec}: ${test_label};${test_exec}" + ENVIRONMENT "LD_LIBRARY_PATH=." + ) + add_dependencies(tests ${test_exec}) +endmacro() + +#################################################################################### +###### dlsim unit test ###### +#################################################################################### + +add_physim_test(4g dlsim basic.test1 "10 MHz, R2.FDD (MCS 5), EVA5, -1dB" -m=5 -g=F -s=-1 -w=1.0 -f=.2 -n=1500 -B=50 -c=2 -z=2 -Tperf=60) +add_physim_test(4g dlsim basic.test2 "1.4 MHz, R4.FDD (MCS 4), EVA5, 0dB (70%)" -m=4 -g=F -s=0 -w=1.0 -f=.2 -n=1500 -B=6 -c=4 -z=2 -Tperf=60) +add_physim_test(4g dlsim basic.test3 "10 MHz, R3.FDD (MCS 15), EVA5, 6.7dB (70%)" -m=15 -g=F -s=6.7 -w=1.0 -f=.2 -n=1500 -B=50 -c=2 -z=2 -Tperf=60) +add_physim_test(4g dlsim basic.test4 "5 MHz, R3-1.FDD (MCS 15), EVA5, 6.7dB (70%)" -m=15 -g=F -s=6.7 -w=1.0 -f=.2 -n=1500 -B=25 -c=2 -z=2 -Tperf=60) +add_physim_test(4g dlsim basic.test5 "10 MHz, R3-1.FDD (MCS 15), EVA5, 6.7dB (30%)" -m=15 -g=G -s=1.4 -w=1.0 -f=.2 -n=1500 -B=50 -c=2 -z=2 -Tperf=25) +add_physim_test(4g dlsim basic.test6 "5 MHz, R3-1.FDD (MCS 15), ETU70, 1.4 dB (30%)" -m=15 -g=G -s=1.4 -w=1.0 -f=.2 -n=1500 -B=25 -c=2 -z=2 -Tperf=25) +add_physim_test(4g dlsim basic.test7 "5 MHz, R6.FDD (MCS 25), EVA5, 17.4 dB (70%)" -m=25 -g=F -s=17.4 -w=1.0 -f=.2 -n=1500 -B=25 -c=3 -z=2 -Tperf=60) +add_physim_test(4g dlsim basic.test8 "5 MHz, R6-1.FDD (MCS 24,18 PRB), EVA5, 17.5dB (70%)" -m=25 -g=F -s=17.5 -w=1.0 -f=.2 -n=1500 -B=25 -c=3 -z=2 -r=1022 -Tperf=60) +add_physim_test(4g dlsim basic.test9 "10 MHz, R7.FDD (MCS 25), EVA5, 17.7dB (70%)" -m=26 -g=F -s=17.7 -w=1.0 -f=.2 -n=1500 -B=50 -c=2 -z=2 -Tperf=60) +add_physim_test(4g dlsim 100rb.tm2.test1 "20 MHz, R.9 FDD (MCS 26), EVA5, 17.6dB (70%)" -m=26 -g=F -s=17.6 -w=1.0 -f=.2 -n=1500 -B=100 -c=2 -z=2 -Tperf=60) +add_physim_test(4g dlsim 100rb.tm2.test2 "20 MHz, R.9-2 FDD (MCS 26, 17PRB), EVA5, 17.3dB (70%)" -m=26 -g=F -s=17.3 -w=1.0 -f=.2 -n=1500 -B=100 -c=2 -z=2 -r=1600 -Tperf=60) +add_physim_test(4g dlsim 100rb.tm2.test3 "20 MHz, R.9-1 FDD (MCS 26, 83 PRB), EVA5, 16.6dB (70%)" -m=26 -g=F -s=16.6 -w=1.0 -f=.2 -n=1500 -B=100 -c=2 -z=2 -r=1899 -Tperf=60) +add_physim_test(4g dlsim 100rb.tm2.test4 "10 MHz, R.11 FDD (MCS 14), EVA5, 6.8 dB (70%)" -m=14 -g=F -s=6.8 -w=1.0 -f=.2 -n=1500 -B=50 -c=2 -x=2 -y=2 -z=2 -Tperf=60) +add_physim_test(4g dlsim 100rb.tm2.test5 "5 MHz, R.11-2 FDD (MCS 13), EVA5, 5.9 dB (70%)" -m=13 -g=F -s=5.9 -w=1.0 -f=.2 -n=1500 -B=25 -c=3 -x=2 -y=2 -z=2 -Tperf=60) + +#################################################################################### +###### ulsim unit test ###### +#################################################################################### + +add_physim_test(4g ulsim test1 "5 MHz, FDD (MCS 5), AWGN, 6dB" -BnbRBs=25 -mcs=5 -yN_rx=1 -gchannel=N -xTransmission=1 -snr=6 -wsnrInterrupt=1.0 -e_snr_step=.1 -P -nb_frame=1500 -Tperf=70) +add_physim_test(4g ulsim test2 "5 MHz, FDD (MCS 16), AWGN , 12dB (70%)" -BnbRBs=25 -mcs=16 -yN_rx=1 -gchannel=N -xTransmission=1 -snr=12 -wsnrInterrupt=1.0 -e_snr_step=.1 -P -nb_frame=1500 -Tperf=70) +add_physim_test(4g ulsim test3 "10 MHz, R3.FDD (MCS 5), AWGN, 6dB (70%)" -BnbRBs=50 -mcs=5 -yN_rx=1 -gchannel=N -xTransmission=1 -snr=6 -wsnrInterrupt=1.0 -e_snr_step=.1 -P -nb_frame=1500 -Tperf=70) +add_physim_test(4g ulsim test4 "10 MHz, R3-1.FDD (MCS 16), AWGN, 12dB (70%)" -BnbRBs=50 -mcs=16 -yN_rx=1 -gchannel=N -xTransmission=1 -snr=12 -wsnrInterrupt=1.0 -e_snr_step=.1 -P -nb_frame=1500 -Tperf=70) +add_physim_test(4g ulsim test5 "20 MHz, FDD (MCS 5), AWGN, 6dB (70%)" -BnbRBs=100 -mcs=5 -yN_rx=1 -gchannel=N -xTransmission=1 -snr=6 -wsnrInterrupt=1.0 -e_snr_step=.1 -P -nb_frame=1500 -Tperf=70) +add_physim_test(4g ulsim test6 "20 MHz, FDD (MCS 16), AWGN, 12 dB (70%)" -BnbRBs=100 -mcs=16 -yN_rx=1 -gchannel=N -xTransmission=1 -snr=12 -wsnrInterrupt=1.0 -e_snr_step=.1 -P -nb_frame=1500 -Tperf=70) + +#################################################################################### +###### ldpctest unit test ###### +#################################################################################### + +add_physim_test(5g ldpctest test1 "block length = 3872, BG1" -l3872 -s10 -n300) +add_physim_test(5g ldpctest test2 "block length = 4224, BG1" -l4224 -s10 -n300) +add_physim_test(5g ldpctest test3 "block length = 4576, BG1" -l4576 -s10 -n300) +add_physim_test(5g ldpctest test4 "block length = 4928, BG1" -l4928 -s10 -n300) +add_physim_test(5g ldpctest test5 "block length = 5280, BG1" -l5280 -s10 -n300) +add_physim_test(5g ldpctest test6 "block length = 5632, BG1" -l5632 -s10 -n300) +add_physim_test(5g ldpctest test7 "block length = 6336, BG1" -l6336 -s10 -n300) +add_physim_test(5g ldpctest test8 "block length = 7040, BG1" -l7040 -s10 -n300) +add_physim_test(5g ldpctest test9 "block length = 7744, BG1" -l7744 -s10 -n300) +add_physim_test(5g ldpctest test10 "block length = 8448, BG1" -l8448 -s10 -n300) +add_physim_test(5g ldpctest test11 "block length = 1, BG2" -l1 -s10 -n300) +add_physim_test(5g ldpctest test12 "block length = 100, BG2" -l100 -s10 -n300) +add_physim_test(5g ldpctest test13 "block length = 193, BG2" -l193 -s10 -n300) +add_physim_test(5g ldpctest test14 "block length = 500, BG2" -l500 -s10 -n300) +add_physim_test(5g ldpctest test15 "block length = 561, BG2" -l561 -s10 -n300) +add_physim_test(5g ldpctest test16 "block length = 600, BG2" -l600 -s10 -n300) +add_physim_test(5g ldpctest test17 "block length = 641, BG2" -l641 -s10 -n300) +add_physim_test(5g ldpctest test18 "block length = 2000, BG1" -l2000 -s10 -n300) +add_physim_test(5g ldpctest test19 "block length = 3000, BG1" -l3000 -s10 -n300) +add_physim_test(5g ldpctest test20 "block length = 3840, BG1" -l3840 -s10 -n300) + +#################################################################################### +###### polartest unit test ###### +#################################################################################### + +add_physim_test(5g polartest test1 "PBCH polar test" -q -s-10 -f0) +add_physim_test(5g polartest test2 "DCI polar test" -q -s-10 -f0 -m1) +add_physim_test(5g polartest test3 "UCI polar test,6-bit CRC" -q -s-2 -f2 -m2 -k12) +add_physim_test(5g polartest test4 "UCI polar test,11-bit CRC" -q -s-2 -f2 -m2 -k20) + +#################################################################################### +###### nr_pbchsim unit test ###### +#################################################################################### + +add_physim_test(5g nr_pbchsim 106rb.test1 "PBCH-only, 106 PRB, NID 2" -s-11 -S-8 -n30 -R106 -N2) +add_physim_test(5g nr_pbchsim 106rb.test2 "PBCH and synchronization, 106PBR" -s-11 -S-8 -n30 -o8000 -I -R106) +add_physim_test(5g nr_pbchsim 106rb.test3 "PBCH and synchronization, 106PBR, SSB SC OFFSET 6" -s-11 -S-8 -n30 -R106 -c6) +add_physim_test(5g nr_pbchsim 217rb.test1 "PBCH-only, 217 PRB" -s-10 -S-8 -n30 -R217) +add_physim_test(5g nr_pbchsim 217rb.test2 "PBCH and synchronization, 217 RPB" -s-10 -S-8 -n30 -o8000 -I -R217) +add_physim_test(5g nr_pbchsim 273rb.test1 "PBCH-only, 273 PRB" -s-10 -S-8 -n30 -R273) +add_physim_test(5g nr_pbchsim 273rb.test2 "PBCH and synchronization, 273 PRB" -s-10 -S-8 -n30 -o8000 -I -R273) +add_physim_test(5g nr_pbchsim otherSCS.test1 "PBCH-only, 15Khz, 5Mhz" -s-10 -S-8 -n30 -m0 -R25) +add_physim_test(5g nr_pbchsim otherSCS.test2 "PBCH-only, 120Khz, 50Mhz" -s-10 -S-8 -n30 -m3 -R32) + +#################################################################################### +###### nr_dlsim unit test ###### +#################################################################################### + +add_physim_test(5g nr_dlsim basic.test1 "106 PRB" -n300 -R106 -b106 -s5) +add_physim_test(5g nr_dlsim basic.test2 "217 PRB" -n300 -R217 -b217 -s5) +add_physim_test(5g nr_dlsim basic.test3 "273 PRB" -n300 -R273 -b273 -s5) +add_physim_test(5g nr_dlsim basic.test4 "HARQ test 25% TP 4 rounds" -n300 -s1 -S2 -t25) +add_physim_test(5g nr_dlsim basic.test5 "HARQ test 33% TP 3 rounds" -n300 -s1 -S2 -t33) +add_physim_test(5g nr_dlsim basic.test6 "HARQ test 50% TP 2 rounds" -n300 -s5 -S7 -t50) +add_physim_test(5g nr_dlsim basic.test7 "25 PRBs, 15 kHz SCS" -n300 -m0 -e0 -R25 -b25 -i 2 1 0) +add_physim_test(5g nr_dlsim basic.test8 "32 PRBs, 120 kHz SCS" -n300 -s5 -m3 -R32 -b32) +add_physim_test(5g nr_dlsim offset.test1 "106 PRB 25 PDSCH-Offset" -n300 -R106 -a25 -s5) +add_physim_test(5g nr_dlsim offset.test2 "106 PRB 51 PDSCH-Offset" -n300 -R106 -a51 -s5) +add_physim_test(5g nr_dlsim offset.test3 "217 PRB 100 PDSCH-PRBs" -n300 -R217 -b100 -s5) +add_physim_test(5g nr_dlsim offset.test4 "217 PRB 80 PDSCH-Offset" -n300 -R217 -a80 -s5) +add_physim_test(5g nr_dlsim offset.test5 "217 PRB 100 PDSCH-PRBs 110 PDSCH-Offset" -n300 -R217 -a110 -s5 -b100) +add_physim_test(5g nr_dlsim mcs.mimo.test1 "106 PRBs 50 PDSCH-PRBs MCS Index 27" -n300 -e27 -s30) +add_physim_test(5g nr_dlsim mcs.mimo.test2 "106 PRBs 50 PDSCH-PRBs MCS Index 16" -n300 -e16 -s11 -S13) +add_physim_test(5g nr_dlsim mcs.mimo.test3 "106 MCS-TABLE 256 QAM MCS Index 26" -n300 -q1 -e26 -s30) +add_physim_test(5g nr_dlsim mcs.mimo.test4 "MCS 0, low SNR performance" -n300 -e0 -t95 -S-1.0 -i 2 1 0) +add_physim_test(5g nr_dlsim mcs.mimo.test5 "4x4 MIMO, 1 Layer" -n30 -s20 -U 3 0 0 2 -gA -x1 -y4 -z4) +add_physim_test(5g nr_dlsim mcs.mimo.test6 "4x4 MIMO, 2 Layers" -n30 -s20 -U 3 0 0 2 -gA -x2 -y4 -z4) +add_physim_test(5g nr_dlsim mcs.mimo.test7 "4x4 MIMO, 4 Layers" -n30 -s20 -U 3 0 0 2 -x4 -y4 -z4) +add_physim_test(5g nr_dlsim dmrs.ptrs.test1 "3 PTRS, 8 Interpolated Symbols" -n300 -s5 -T 2 2 2) +add_physim_test(5g nr_dlsim dmrs.ptrs.test2 "6 PTRS, 5 Interpolated Symbols" -n300 -s5 -T 2 1 2) +add_physim_test(5g nr_dlsim dmrs.ptrs.test3 "11 PTRS, 0 Interpolated Symbols" -n300 -s5 -T 2 0 4) +add_physim_test(5g nr_dlsim dmrs.ptrs.test4 "Mapping type A, 2 DMRS Symbols" -n300 -s5 -S7 -U 2 0 1) +add_physim_test(5g nr_dlsim dmrs.ptrs.test5 "Mapping type A, 3 DMRS Symbols" -n300 -s5 -S7 -U 2 0 2) +add_physim_test(5g nr_dlsim dmrs.ptrs.test6 "Mapping type B, 4 DMRS Symbols" -n300 -s5 -S7 -U 2 1 3) + +#################################################################################### +###### nr_dlschsim unit test ###### +#################################################################################### + +add_physim_test(5g nr_dlschsim test1 "106 PRBs" -R 106 -m9 -s13 -n300) +add_physim_test(5g nr_dlschsim test2 "217 PRBs" -R 217 -m15 -s15 -n300) +add_physim_test(5g nr_dlschsim test3 "273 PRBs" -R 273 -m19 -s20 -n300) + +#################################################################################### +###### smallblocktest unit test ###### +#################################################################################### + +add_physim_test(5g smallblocktest test1 "3 bits" -l 3 -s -4 -d 1 -i 10000) +add_physim_test(5g smallblocktest test2 "6 bits" -l 6 -s -4 -d 1 -i 10000) +add_physim_test(5g smallblocktest test3 "7 bits" -l 7 -s -4 -d 1 -i 10000) +add_physim_test(5g smallblocktest test4 "11 bits" -l 11 -s -4 -d 1 -i 10000) + +#################################################################################### +###### nr_ulschsim unit test ###### +#################################################################################### + +add_physim_test(5g nr_ulschsim test1 "106 PRBs" -R 106 -m9 -s13 -n300) +add_physim_test(5g nr_ulschsim test2 "217 PRBs" -R 217 -m15 -s15 -n300) +add_physim_test(5g nr_ulschsim test3 "273 PRBs" -R 273 -m19 -s20 -n300) +add_physim_test(5g nr_ulschsim test4 "106 PRBs 4-layer MIMO" -R 106 -m9 -s13 -n300 -y4 -z4 -W4) + +#################################################################################### +###### nr_pucchsim unit test ###### +#################################################################################### + +add_physim_test(5g nr_pucchsim test1 "Format 0 1-bit ACK miss 106 PRB" -R 106 -i 1 -P 0 -b 1 -s-2 -n3000) +add_physim_test(5g nr_pucchsim test2 "Format 0 2-bit ACK miss 106 PRB" -R 106 -i 1 -P 0 -b 2 -s-2 -n3000) +add_physim_test(5g nr_pucchsim test3 "Format 0 2-bit ACK miss, 1-bit SR 106 PRB" -R 106 -i 1 -P 0 -b 2 -s-2 -c -n3000) +add_physim_test(5g nr_pucchsim test4 "Format 2 3-bit 2/106 PRB" -R 106 -i 1 -P 2 -b 3 -s0 -n3000) +add_physim_test(5g nr_pucchsim test5 "Format 2 4-bit 2/106 PRB" -R 106 -i 1 -P 2 -b 4 -s0 -n3000) +add_physim_test(5g nr_pucchsim test6 "Format 2 5-bit 2/106 PRB" -R 106 -i 1 -P 2 -b 5 -s1 -n3000) +add_physim_test(5g nr_pucchsim test7 "Format 2 6-bit 2/106 PRB" -R 106 -i 1 -P 2 -b 6 -s2 -n3000) +add_physim_test(5g nr_pucchsim test8 "Format 2 7-bit 2/106 PRB" -R 106 -i 1 -P 2 -b 7 -s3 -n3000) +add_physim_test(5g nr_pucchsim test9 "Format 2 8-bit 2/106 PRB" -R 106 -i 1 -P 2 -b 8 -s4 -n3000) +add_physim_test(5g nr_pucchsim test10 "Format 2 9-bit 2/106 PRB" -R 106 -i 1 -P 2 -b 9 -s5 -n3000) +add_physim_test(5g nr_pucchsim test11 "Format 2 10-bit 2/106 PRB" -R 106 -i 1 -P 2 -b 10 -s6 -n3000) +add_physim_test(5g nr_pucchsim test12 "Format 2 11-bit 2/106 PRB" -R 106 -i 1 -P 2 -b 11 -s6 -n3000) +add_physim_test(5g nr_pucchsim test13 "Format 2 12-bit 4/106 PRB" -R 106 -i 1 -P 2 -q4 -b 12 -s-3 -n3000) +add_physim_test(5g nr_pucchsim test14 "Format 2 19-bit 4/106 PRB" -R 106 -i 1 -P 2 -q4 -b 19 -s-3 -n3000) +add_physim_test(5g nr_pucchsim test15 "Format 2 12-bit 8/106 PRB" -R 106 -i 1 -P 2 -q8 -b 12 -s-3 -n3000) +add_physim_test(5g nr_pucchsim test16 "Format 2 19-bit 8/106 PRB" -R 106 -i 1 -P 2 -q8 -b 19 -s-3 -n3000) +add_physim_test(5g nr_pucchsim test17 "Format 2 32-bit 8/106 PRB" -R 106 -i 1 -P 2 -q8 -b 32 -s-3 -n3000) +add_physim_test(5g nr_pucchsim test18 "Format 2 32-bit 16/106 PRB" -R 106 -i 1 -P 2 -q16 -b 32 -s-3 -n3000) +add_physim_test(5g nr_pucchsim test19 "Format 2 64-bit 16/106 PRB" -R 106 -i 1 -P 2 -q16 -b 64 -s-3 -n3000) +add_physim_test(5g nr_pucchsim test20 "Format 0 1-bit Ack miss 273 PRB" -R 273 -z8 -i 1 -P 0 -b 1 -s-2 -n3000) +add_physim_test(5g nr_pucchsim test21 "Format 0 2-bit Ack miss 273 PRB" -R 273 -z8 -i 1 -P 0 -b 2 -s-2 -n3000) +add_physim_test(5g nr_pucchsim test22 "Format 0 2-bit Ack miss+SR 273 PRB" -R 273 -z8 -i 1 -P 0 -b 2 -s-2 -c -n3000) +add_physim_test(5g nr_pucchsim test23 "Format 2 4-bit 2/273 PRB" -R 273 -z8 -i 1 -P 2 -b 4 -s-10 -n3000) +add_physim_test(5g nr_pucchsim test24 "Format 2 7-bit 2/273 PRB" -R 273 -z8 -i 1 -P 2 -b 7 -s3 -n3000) +add_physim_test(5g nr_pucchsim test25 "Format 2 11-bit 2/273 PRB" -R 273 -z8 -i 1 -P 2 -b 11 -s6 -n3000) +add_physim_test(5g nr_pucchsim test26 "Format 2 12-bit 8/273 PRB" -R 273 -z8 -i 1 -P 2 -q8 -b 12 -s-3 -n3000) +add_physim_test(5g nr_pucchsim test27 "Format 2 19-bit 8/273 PRB" -R 273 -z8 -i 1 -P 2 -q8 -b 19 -s-3 -n3000) +add_physim_test(5g nr_pucchsim test28 "Format 2 64-bit 16/273 PRB" -R 273 -z8 -i 1 -P 2 -q16 -b 64 -s-3 -n3000) +add_physim_test(5g nr_pucchsim test29 "Format 2 64-bit 16/273 PRB Delay 2us" -R 273 -z8 -i 1 -P 2 -q16 -b 64 -s-3 -d 2 -n3000) + +#################################################################################### +###### nr_ulsim unit test ###### +#################################################################################### + +add_physim_test(5g nr_ulsim misc.test1 "MCS 9 106 PRBs" -n300 -m9 -r106 -s5) +add_physim_test(5g nr_ulsim misc.test2 "MCS 16 50 PRBs" -n300 -m16 -s10) +add_physim_test(5g nr_ulsim misc.test3 "MCS 28 50 PRBs" -n300 -m28 -s20) +add_physim_test(5g nr_ulsim misc.test4 "MCS 27 50 PRBs 256QAM" -n300 -m27 -s25 -q1) +add_physim_test(5g nr_ulsim misc.test5 "MCS 9 217 PRBs" -n300 -m9 -R217 -r217 -s5) +add_physim_test(5g nr_ulsim misc.test6 "MCS 9 273 PRBs" -n300 -m9 -R273 -r273 -s5) +add_physim_test(5g nr_ulsim misc.test7 "PUSCH Type A, 2 DMRS Symbols" -n300 -s5 -U 0,1,1,1) +add_physim_test(5g nr_ulsim misc.test8 "PUSCH Type A, 3 DMRS, 4 PTRS, 5 Interpolated Symbols" -n300 -s5 -T 1,2 -U 0,2,1,1) +add_physim_test(5g nr_ulsim misc.test9 "PUSCH Type B, 3 DMRS, 2 PTRS, 7 Interpolated Symbols" -n300 -s5 -T 2,2 -U 1,2,1,1) +add_physim_test(5g nr_ulsim misc.test10 "PUSCH Type B, 3 DMRS, 2 PTRS, 3 Interpolated Symbols" -n300 -s5 -a4 -b8 -T 1,2 -U 1,3,1,1) +add_physim_test(5g nr_ulsim misc.test11 "25 PRBs, 15 kHz SCS" -n300 -u0 -m0 -R25 -r25 -i 1,0) +add_physim_test(5g nr_ulsim misc.test12 "32 PRBs, 120 kHz SCS" -n300 -s5 -r32 -R32 -u3) +add_physim_test(5g nr_ulsim misc.test13 "MCS 0, low SNR performance" -n300 -m0 -S -0.6 -i 1,0) +add_physim_test(5g nr_ulsim misc.test14 "MCS 28, 106 PRBs, Time shift 8" -n300 -m28 -R106 -r106 -t90 -s24 -S24 -d 8) +add_physim_test(5g nr_ulsim misc.test15 "SRS, SNR 40 dB" -n300 -s40 -E 1) +add_physim_test(5g nr_ulsim sc-fdma.test1 "SC-FDMA, 50 PRBs" -n300 -s5 -Z) +add_physim_test(5g nr_ulsim sc-fdma.test2 "SC-FDMA, 75 PRBs" -n300 -s5 -Z -r75) +add_physim_test(5g nr_ulsim sc-fdma.test3 "SC-FDMA, 216 PRBs" -n150 -s5 -Z -r216 -R217) +add_physim_test(5g nr_ulsim sc-fdma.test4 "SC-FDMA, 273 PRBs" -n150 -s5 -Z -r270 -R273) +add_physim_test(5g nr_ulsim sc-fdma.test5 "SC-FDMA, 3 DMRS" -n300 -s5 -Z -U 0,2,1,2) +add_physim_test(5g nr_ulsim mimo.test1 "MCS 19 50 PRBs 2 RX_Antenna" -n300 -m19 -s10 -S15 -z2) +add_physim_test(5g nr_ulsim mimo.test2 "MCS 9 106 PRBs MIMO 2 layers" -n300 -m9 -r106 -s8 -W2 -y2 -z2) +add_physim_test(5g nr_ulsim mimo.test3 "MCS 10 106 PRBs MIMO 2 layers" -n300 -m10 -r106 -s12 -W2 -y2 -z2) +add_physim_test(5g nr_ulsim mimo.test4 "MCS 19 106 PRBs MIMO 2 layers" -n300 -m19 -r106 -s22 -W2 -y2 -z2) +add_physim_test(5g nr_ulsim mimo.test5 "MCS 9 106 PRBs MIMO 4 layers" -n300 -m9 -r106 -s10 -W4 -y4 -z4) +add_physim_test(5g nr_ulsim 3gpp.test1 "3GPP G-FR1-A5-13, PUSCH Type A, 40 MHz BW, 30 kHz SCS, 2 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R106 -r106 -U 0,1,1,2 -z2 -s12.4 -S12.4) +add_physim_test(5g nr_ulsim 3gpp.test2 "3GPP G-FR1-A5-13, PUSCH Type A, 40 MHz BW, 30 kHz SCS, 4 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R106 -r106 -U 0,1,1,2 -z4 -s8.5 -S8.5) +add_physim_test(5g nr_ulsim 3gpp.test3 "3GPP G-FR1-A5-13, PUSCH Type A, 40 MHz BW, 30 kHz SCS, 8 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R106 -r106 -U 0,1,1,2 -z8 -s5.4 -S5.4) +add_physim_test(5g nr_ulsim 3gpp.test4 "3GPP G-FR1-A5-8, PUSCH Type B, 5 MHz BW, 15 kHz SCS, 2 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R25 -r25 -U 1,1,1,2 -z2 -s12.5 -S12.5) +add_physim_test(5g nr_ulsim 3gpp.test5 "3GPP G-FR1-A5-8, PUSCH Type B, 5 MHz BW, 15 kHz SCS, 4 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R25 -r25 -U 1,1,1,2 -z4 -s8.9 -S8.9) +add_physim_test(5g nr_ulsim 3gpp.test6 "3GPP G-FR1-A5-8, PUSCH Type B, 5 MHz BW, 15 kHz SCS, 8 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R25 -r25 -U 1,1,1,2 -z8 -s5.7 -S5.7) +add_physim_test(5g nr_ulsim 3gpp.test7 "3GPP G-FR1-A5-9, PUSCH Type B, 10 MHz BW, 15 kHz SCS, 2 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R52 -r52 -U 1,1,1,2 -z2 -s12.6 -S12.6) +add_physim_test(5g nr_ulsim 3gpp.test8 "3GPP G-FR1-A5-9, PUSCH Type B, 10 MHz BW, 15 kHz SCS, 4 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R52 -r52 -U 1,1,1,2 -z4 -s8.9 -S8.9) +add_physim_test(5g nr_ulsim 3gpp.test9 "3GPP G-FR1-A5-9, PUSCH Type B, 10 MHz BW, 15 kHz SCS, 8 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R52 -r52 -U 1,1,1,2 -z8 -s5.8 -S5.8) +add_physim_test(5g nr_ulsim 3gpp.test10 "3GPP G-FR1-A5-10, PUSCH Type B, 20 MHz BW, 15 kHz SCS, 2 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R106 -r106 -U 1,1,1,2 -z2 -s12.3 -S12.3) +add_physim_test(5g nr_ulsim 3gpp.test11 "3GPP G-FR1-A5-10, PUSCH Type B, 20 MHz BW, 15 kHz SCS, 4 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R106 -r106 -U 1,1,1,2 -z4 -s8.8 -S8.8) +add_physim_test(5g nr_ulsim 3gpp.test12 "3GPP G-FR1-A5-10, PUSCH Type B, 20 MHz BW, 15 kHz SCS, 8 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R106 -r106 -U 1,1,1,2 -z8 -s5.7 -S5.7) +add_physim_test(5g nr_ulsim 3gpp.test13 "3GPP G-FR1-A5-11, PUSCH Type B, 10 MHz BW, 30 kHz SCS, 2 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R24 -r24 -U 1,1,1,2 -z2 -s12.5 -S12.5) +add_physim_test(5g nr_ulsim 3gpp.test14 "3GPP G-FR1-A5-11, PUSCH Type B, 10 MHz BW, 30 kHz SCS, 4 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R24 -r24 -U 1,1,1,2 -z4 -s8.6 -S8.6) +add_physim_test(5g nr_ulsim 3gpp.test15 "3GPP G-FR1-A5-11, PUSCH Type B, 10 MHz BW, 30 kHz SCS, 8 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R24 -r24 -U 1,1,1,2 -z8 -s5.6 -S5.6) +add_physim_test(5g nr_ulsim 3gpp.test16 "3GPP G-FR1-A5-12, PUSCH Type B, 20 MHz BW, 30 kHz SCS, 2 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R51 -r51 -U 1,1,1,2 -z2 -s12.5 -S12.5) +add_physim_test(5g nr_ulsim 3gpp.test17 "3GPP G-FR1-A5-12, PUSCH Type B, 20 MHz BW, 30 kHz SCS, 4 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R51 -r51 -U 1,1,1,2 -z4 -s8.6 -S8.6) +add_physim_test(5g nr_ulsim 3gpp.test18 "3GPP G-FR1-A5-12, PUSCH Type B, 20 MHz BW, 30 kHz SCS, 8 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R51 -r51 -U 1,1,1,2 -z8 -s5.6 -S5.6) +add_physim_test(5g nr_ulsim 3gpp.test19 "3GPP G-FR1-A5-13, PUSCH Type B, 40 MHz BW, 30 kHz SCS, 2 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R106 -r106 -U 1,1,1,2 -z2 -s12.5 -S12.5) +add_physim_test(5g nr_ulsim 3gpp.test20 "3GPP G-FR1-A5-13, PUSCH Type B, 40 MHz BW, 30 kHz SCS, 4 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R106 -r106 -U 1,1,1,2 -z4 -s8.7 -S8.7) +add_physim_test(5g nr_ulsim 3gpp.test21 "3GPP G-FR1-A5-13, PUSCH Type B, 40 MHz BW, 30 kHz SCS, 8 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R106 -r106 -U 1,1,1,2 -z8 -s5.5 -S5.5) +add_physim_test(5g nr_ulsim 3gpp.test22 "3GPP G-FR1-A5-14, PUSCH Type B, 100 MHz BW, 30 kHz SCS, 2 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R273 -r273 -U 1,1,1,2 -z2 -s13.1 -S13.1) +add_physim_test(5g nr_ulsim 3gpp.test23 "3GPP G-FR1-A5-14, PUSCH Type B, 100 MHz BW, 30 kHz SCS, 4 RX Antennas Requirements Test" -n300 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R273 -r273 -U 1,1,1,2 -z4 -s9.2 -S9.2) +add_physim_test(5g nr_ulsim 3gpp.test24 "3GPP G-FR1-A5-14, PUSCH Type B, 100 MHz BW, 30 kHz SCS, 8 RX Antennas Requirements Test" -n300 -b14 -I8 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R273 -r273 -U 1,1,1,2 -z8 -s5.9 -S5.9) +add_physim_test(5g nr_ulsim 3gpp.test25 "3GPP G-FR1-A3-27, PUSCH Type B, 40 MHz BW, 30 kHz SCS, 2 RX Antennas Requirements Test, 2 layers" -n300 -b14 -I15 -i 0,1 -g B,l -t70 -u 1 -m2 -R106 -r106 -U 1,1,1,2 -W2 -y2 -z2 -s1.7 -S1.7) +add_physim_test(5g nr_ulsim 3gpp.test26 "3GPP G-FR1-A3-27, PUSCH Type B, 40 MHz BW, 30 kHz SCS, 4 RX Antennas Requirements Test, 2 layers" -n300 -b14 -I15 -i 0,1 -g B,l -t70 -u 1 -m2 -R106 -r106 -U 1,1,1,2 -W2 -y2 -z4 -s-2.1 -S-2.1) +add_physim_test(5g nr_ulsim 3gpp.test27 "3GPP G-FR1-A4-27, PUSCH Type B, 40 MHz BW, 30 kHz SCS, 2 RX Antennas Requirements Test, 2 layers" -n300 -b14 -I15 -i 0,1 -g C,l -t70 -u 1 -m16 -R106 -r106 -U 1,1,1,2 -W2 -y2 -z2 -s18.7 -S18.7) +add_physim_test(5g nr_ulsim 3gpp.test28 "3GPP G-FR1-A4-27, PUSCH Type B, 40 MHz BW, 30 kHz SCS, 4 RX Antennas Requirements Test, 2 layers" -n300 -b14 -I15 -i 0,1 -g C,l -t70 -u 1 -m16 -R106 -r106 -U 1,1,1,2 -W2 -y2 -z4 -s11.2 -S11.2) + +#################################################################################### +###### nr_prachsim unit test ###### +#################################################################################### + +add_physim_test(5g nr_prachsim test1 "30kHz SCS, 106 PRBs, Prach format A2" -a -s -30 -n 300 -p 63 -R 106) +add_physim_test(5g nr_prachsim test2 "30kHz SCS, 217 PRBs, Prach format A2" -a -s -30 -n 300 -p 63 -R 217) +add_physim_test(5g nr_prachsim test3 "30kHz SCS, 273 PRBs, Prach format A2" -a -s -30 -n 300 -p 63 -R 273) +add_physim_test(5g nr_prachsim test4 "30kHz SCS, 106 PRBs, Prach format 0" -a -s -30 -n 300 -p 63 -R 106 -c 4) +add_physim_test(5g nr_prachsim test5 "120kHz SCS, 32 PRBs, Prach format A2" -a -s -30 -n 300 -p 32 -R 32 -m 3 -c52) +add_physim_test(5g nr_prachsim test6 "120kHz SCS, 66 PRBs, Prach format A2" -a -s -30 -n 300 -p 32 -R 66 -m 3 -c52) +add_physim_test(5g nr_prachsim test7 "120kHz SCS, 66 PRBs, High Speed Enabled" -a -s -30 -n 300 -R 66 -m 3 -c52 -H) +add_physim_test(5g nr_prachsim test8 "15kHz SCS, 25 PRBs" -a -s -30 -n 300 -p 99 -R 25 -m 0) + +#################################################################################### +###### nr_psbchsim unit test ###### +#################################################################################### + +add_physim_test(5g nr_psbchsim test1 "SLSS Search" -I) +add_physim_test(5g nr_psbchsim test2 "PSBCH TxRx" -n 30) From f171778b689b0cff5a0dc09196e6319d693aaf23 Mon Sep 17 00:00:00 2001 From: Jaroslava Fiedlerova Date: Mon, 5 May 2025 15:17:53 +0200 Subject: [PATCH 05/15] Update physim Dockerfile for ctest support Set the CMAKE_RUNTIME_OUTPUT_DIRECTORY CMake option during the OAI build to control the location of runtime target files. This ensures that ctest can locate necessary executables after they are copied to the target Docker image. --- docker/Dockerfile.phySim.rhel9 | 43 ++++------------------------------ 1 file changed, 5 insertions(+), 38 deletions(-) diff --git a/docker/Dockerfile.phySim.rhel9 b/docker/Dockerfile.phySim.rhel9 index a651b2b31d..e9ccf68b00 100644 --- a/docker/Dockerfile.phySim.rhel9 +++ b/docker/Dockerfile.phySim.rhel9 @@ -38,7 +38,7 @@ RUN dnf install -y libasan libubsan RUN /bin/sh oaienv && \ cd cmake_targets && \ mkdir -p log && \ - ./build_oai --phy_simulators --ninja --build-tool-opt -k10 --sanitize --noavx512 -c --cmake-opt -DCMAKE_C_FLAGS=-Werror --cmake-opt -DCMAKE_CXX_FLAGS=-Werror + ./build_oai --phy_simulators --ninja --sanitize --build-tool-opt -k10 --noavx512 -c --cmake-opt -DCMAKE_C_FLAGS=-Werror --cmake-opt -DCMAKE_CXX_FLAGS=-Werror --cmake-opt -DCMAKE_RUNTIME_OUTPUT_DIRECTORY=/opt/oai-physim/bin #start from scratch for target executable FROM registry.access.redhat.com/ubi9/ubi:latest AS oai-physim @@ -53,41 +53,21 @@ RUN dnf update -y && \ procps-ng \ net-tools \ iputils \ + cmake \ bc \ iproute && \ echo "/usr/local/lib" > /etc/ld.so.conf.d/local-lib.conf && \ echo "/usr/local/lib64" >> /etc/ld.so.conf.d/local-lib.conf WORKDIR /opt/oai-physim/bin -COPY --from=phy-sim-build \ - /oai-ran/cmake_targets/ran_build/build/dlsim \ - /oai-ran/cmake_targets/ran_build/build/nr_dlsim \ - /oai-ran/cmake_targets/ran_build/build/nr_prachsim \ - /oai-ran/cmake_targets/ran_build/build/nr_ulschsim \ - /oai-ran/cmake_targets/ran_build/build/polartest \ - /oai-ran/cmake_targets/ran_build/build/ulsim \ - /oai-ran/cmake_targets/ran_build/build/ldpctest \ - /oai-ran/cmake_targets/ran_build/build/nr_dlschsim \ - /oai-ran/cmake_targets/ran_build/build/nr_pbchsim \ - /oai-ran/cmake_targets/ran_build/build/nr_psbchsim \ - /oai-ran/cmake_targets/ran_build/build/nr_pucchsim \ - /oai-ran/cmake_targets/ran_build/build/nr_ulsim \ - /oai-ran/cmake_targets/ran_build/build/smallblocktest \ - ./ +COPY --from=phy-sim-build /opt/oai-physim/bin/ /opt/oai-physim/bin/ COPY --from=phy-sim-build \ /oai-ran/cmake_targets/ran_build/build/libcoding.so \ /lib64/liblapacke.so.3 \ - /lib64/libX11.so.6 \ - /lib64/libXpm.so.4 \ - /lib64/libxcb.so.1 \ - /lib64/libXau.so.6 \ - /lib64/libforms.so.2 \ /lib64/libblas.so.3 \ /lib64/libcblas.so.3 \ /lib64/liblapack.so.3 \ - /lib64/libexslt.so.0 \ - /lib64/libxslt.so.1 \ /usr/lib64/libasan.so.6 \ /usr/lib64/libubsan.so.1 \ /oai-ran/cmake_targets/ran_build/build/libdfts.so \ @@ -114,24 +94,11 @@ RUN ldconfig && \ /usr/local/lib/libdfts.so \ /usr/local/lib/libldpc*.so -# Copy some executables -WORKDIR /usr/bin/ - -COPY --from=phy-sim-build \ - /usr/bin/killall \ - /usr/bin/xmlstarlet \ - ./ - # Copy the relevant configuration files for phySim WORKDIR /opt/oai-physim/ COPY --from=phy-sim-build \ - /oai-ran/cmake_targets/autotests/run_exec_autotests.bash \ - /oai-ran/cmake_targets/autotests/test_case_list.xml \ - /opt/oai-physim/cmake_targets/autotests/ -COPY --from=phy-sim-build \ - /oai-ran/cmake_targets/tools/build_helper \ - /oai-ran/cmake_targets/tools/test_helper \ - /opt/oai-physim/cmake_targets/tools/ + /oai-ran/cmake_targets/ran_build/build/openair1/PHY/CODING/tests/CTestTestfile.cmake \ + /opt/oai-physim/ #CMD ["sleep", "infinity"] From e878b9fbbce3ea06c167a99b54c5fc6a59af0e46 Mon Sep 17 00:00:00 2001 From: Jaroslava Fiedlerova Date: Mon, 12 May 2025 16:34:44 +0200 Subject: [PATCH 06/15] CI: remove helm charts for physim OC deployment To be replaced by ctest physim implementation in the following commit. --- charts/physims/Chart.yaml | 36 ----------- .../physims/charts/dlsim.100rb+tm2/Chart.yaml | 36 ----------- .../dlsim.100rb+tm2/templates/_helpers.tpl | 63 ------------------- .../charts/dlsim.100rb+tm2/templates/job.yaml | 47 -------------- .../charts/dlsim.100rb+tm2/values.yaml | 48 -------------- charts/physims/charts/dlsim.basic/Chart.yaml | 36 ----------- .../charts/dlsim.basic/templates/_helpers.tpl | 63 ------------------- .../charts/dlsim.basic/templates/job.yaml | 47 -------------- charts/physims/charts/dlsim.basic/values.yaml | 44 ------------- charts/physims/charts/ldpctest/Chart.yaml | 36 ----------- .../charts/ldpctest/templates/_helpers.tpl | 63 ------------------- .../charts/ldpctest/templates/job.yaml | 47 -------------- charts/physims/charts/ldpctest/values.yaml | 48 -------------- charts/physims/charts/nr-dlschsim/Chart.yaml | 36 ----------- .../charts/nr-dlschsim/templates/_helpers.tpl | 63 ------------------- .../charts/nr-dlschsim/templates/job.yaml | 47 -------------- charts/physims/charts/nr-dlschsim/values.yaml | 48 -------------- .../physims/charts/nr-dlsim.basic/Chart.yaml | 36 ----------- .../nr-dlsim.basic/templates/_helpers.tpl | 63 ------------------- .../charts/nr-dlsim.basic/templates/job.yaml | 47 -------------- .../physims/charts/nr-dlsim.basic/values.yaml | 48 -------------- .../charts/nr-dlsim.dmrs+ptrs/Chart.yaml | 36 ----------- .../nr-dlsim.dmrs+ptrs/templates/_helpers.tpl | 63 ------------------- .../nr-dlsim.dmrs+ptrs/templates/job.yaml | 47 -------------- .../charts/nr-dlsim.dmrs+ptrs/values.yaml | 48 -------------- .../charts/nr-dlsim.mcs+mimo/Chart.yaml | 36 ----------- .../nr-dlsim.mcs+mimo/templates/_helpers.tpl | 63 ------------------- .../nr-dlsim.mcs+mimo/templates/job.yaml | 47 -------------- .../charts/nr-dlsim.mcs+mimo/values.yaml | 48 -------------- .../physims/charts/nr-dlsim.offset/Chart.yaml | 36 ----------- .../nr-dlsim.offset/templates/_helpers.tpl | 63 ------------------- .../charts/nr-dlsim.offset/templates/job.yaml | 47 -------------- .../charts/nr-dlsim.offset/values.yaml | 48 -------------- .../charts/nr-pbchsim.106rb/Chart.yaml | 36 ----------- .../nr-pbchsim.106rb/templates/_helpers.tpl | 63 ------------------- .../nr-pbchsim.106rb/templates/job.yaml | 47 -------------- .../charts/nr-pbchsim.106rb/values.yaml | 48 -------------- .../charts/nr-pbchsim.217rb/Chart.yaml | 36 ----------- .../nr-pbchsim.217rb/templates/_helpers.tpl | 63 ------------------- .../nr-pbchsim.217rb/templates/job.yaml | 47 -------------- .../charts/nr-pbchsim.217rb/values.yaml | 48 -------------- .../charts/nr-pbchsim.273rb/Chart.yaml | 36 ----------- .../nr-pbchsim.273rb/templates/_helpers.tpl | 63 ------------------- .../nr-pbchsim.273rb/templates/job.yaml | 47 -------------- .../charts/nr-pbchsim.273rb/values.yaml | 48 -------------- .../physims/charts/nr-pbchsim.scs/Chart.yaml | 36 ----------- .../nr-pbchsim.scs/templates/_helpers.tpl | 63 ------------------- .../charts/nr-pbchsim.scs/templates/job.yaml | 47 -------------- .../physims/charts/nr-pbchsim.scs/values.yaml | 48 -------------- charts/physims/charts/nr-prachsim/Chart.yaml | 36 ----------- .../charts/nr-prachsim/templates/_helpers.tpl | 63 ------------------- .../charts/nr-prachsim/templates/job.yaml | 47 -------------- charts/physims/charts/nr-prachsim/values.yaml | 48 -------------- charts/physims/charts/nr-psbchsim/Chart.yaml | 36 ----------- .../charts/nr-psbchsim/templates/_helpers.tpl | 63 ------------------- .../charts/nr-psbchsim/templates/job.yaml | 47 -------------- charts/physims/charts/nr-psbchsim/values.yaml | 48 -------------- charts/physims/charts/nr-pucchsim/Chart.yaml | 36 ----------- .../charts/nr-pucchsim/templates/_helpers.tpl | 63 ------------------- .../charts/nr-pucchsim/templates/job.yaml | 47 -------------- charts/physims/charts/nr-pucchsim/values.yaml | 52 --------------- charts/physims/charts/nr-ulschsim/Chart.yaml | 36 ----------- .../charts/nr-ulschsim/templates/_helpers.tpl | 63 ------------------- .../charts/nr-ulschsim/templates/job.yaml | 47 -------------- charts/physims/charts/nr-ulschsim/values.yaml | 48 -------------- .../physims/charts/nr-ulsim.3gpp/Chart.yaml | 36 ----------- .../nr-ulsim.3gpp/templates/_helpers.tpl | 63 ------------------- .../charts/nr-ulsim.3gpp/templates/job.yaml | 47 -------------- .../physims/charts/nr-ulsim.3gpp/values.yaml | 48 -------------- .../physims/charts/nr-ulsim.mimo/Chart.yaml | 36 ----------- .../nr-ulsim.mimo/templates/_helpers.tpl | 63 ------------------- .../charts/nr-ulsim.mimo/templates/job.yaml | 47 -------------- .../physims/charts/nr-ulsim.mimo/values.yaml | 48 -------------- .../physims/charts/nr-ulsim.misc/Chart.yaml | 36 ----------- .../nr-ulsim.misc/templates/_helpers.tpl | 63 ------------------- .../charts/nr-ulsim.misc/templates/job.yaml | 47 -------------- .../physims/charts/nr-ulsim.misc/values.yaml | 48 -------------- .../charts/nr-ulsim.sc-fdma/Chart.yaml | 36 ----------- .../nr-ulsim.sc-fdma/templates/_helpers.tpl | 63 ------------------- .../nr-ulsim.sc-fdma/templates/job.yaml | 49 --------------- .../charts/nr-ulsim.sc-fdma/values.yaml | 48 -------------- charts/physims/charts/polartest/Chart.yaml | 36 ----------- .../charts/polartest/templates/_helpers.tpl | 63 ------------------- .../charts/polartest/templates/job.yaml | 47 -------------- charts/physims/charts/polartest/values.yaml | 48 -------------- .../physims/charts/smallblocktest/Chart.yaml | 36 ----------- .../smallblocktest/templates/_helpers.tpl | 63 ------------------- .../charts/smallblocktest/templates/job.yaml | 47 -------------- .../physims/charts/smallblocktest/values.yaml | 48 -------------- charts/physims/charts/ulsim/Chart.yaml | 36 ----------- .../charts/ulsim/templates/_helpers.tpl | 63 ------------------- .../physims/charts/ulsim/templates/job.yaml | 47 -------------- charts/physims/charts/ulsim/values.yaml | 48 -------------- charts/physims/templates/rbac.yaml | 26 -------- charts/physims/templates/serviceaccount.yaml | 4 -- charts/physims/values.yaml | 21 ------- 96 files changed, 4551 deletions(-) delete mode 100644 charts/physims/Chart.yaml delete mode 100644 charts/physims/charts/dlsim.100rb+tm2/Chart.yaml delete mode 100644 charts/physims/charts/dlsim.100rb+tm2/templates/_helpers.tpl delete mode 100644 charts/physims/charts/dlsim.100rb+tm2/templates/job.yaml delete mode 100644 charts/physims/charts/dlsim.100rb+tm2/values.yaml delete mode 100644 charts/physims/charts/dlsim.basic/Chart.yaml delete mode 100644 charts/physims/charts/dlsim.basic/templates/_helpers.tpl delete mode 100644 charts/physims/charts/dlsim.basic/templates/job.yaml delete mode 100644 charts/physims/charts/dlsim.basic/values.yaml delete mode 100644 charts/physims/charts/ldpctest/Chart.yaml delete mode 100644 charts/physims/charts/ldpctest/templates/_helpers.tpl delete mode 100644 charts/physims/charts/ldpctest/templates/job.yaml delete mode 100644 charts/physims/charts/ldpctest/values.yaml delete mode 100644 charts/physims/charts/nr-dlschsim/Chart.yaml delete mode 100644 charts/physims/charts/nr-dlschsim/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-dlschsim/templates/job.yaml delete mode 100644 charts/physims/charts/nr-dlschsim/values.yaml delete mode 100644 charts/physims/charts/nr-dlsim.basic/Chart.yaml delete mode 100644 charts/physims/charts/nr-dlsim.basic/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-dlsim.basic/templates/job.yaml delete mode 100644 charts/physims/charts/nr-dlsim.basic/values.yaml delete mode 100644 charts/physims/charts/nr-dlsim.dmrs+ptrs/Chart.yaml delete mode 100644 charts/physims/charts/nr-dlsim.dmrs+ptrs/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-dlsim.dmrs+ptrs/templates/job.yaml delete mode 100644 charts/physims/charts/nr-dlsim.dmrs+ptrs/values.yaml delete mode 100644 charts/physims/charts/nr-dlsim.mcs+mimo/Chart.yaml delete mode 100644 charts/physims/charts/nr-dlsim.mcs+mimo/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-dlsim.mcs+mimo/templates/job.yaml delete mode 100644 charts/physims/charts/nr-dlsim.mcs+mimo/values.yaml delete mode 100644 charts/physims/charts/nr-dlsim.offset/Chart.yaml delete mode 100644 charts/physims/charts/nr-dlsim.offset/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-dlsim.offset/templates/job.yaml delete mode 100644 charts/physims/charts/nr-dlsim.offset/values.yaml delete mode 100644 charts/physims/charts/nr-pbchsim.106rb/Chart.yaml delete mode 100644 charts/physims/charts/nr-pbchsim.106rb/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-pbchsim.106rb/templates/job.yaml delete mode 100644 charts/physims/charts/nr-pbchsim.106rb/values.yaml delete mode 100644 charts/physims/charts/nr-pbchsim.217rb/Chart.yaml delete mode 100644 charts/physims/charts/nr-pbchsim.217rb/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-pbchsim.217rb/templates/job.yaml delete mode 100644 charts/physims/charts/nr-pbchsim.217rb/values.yaml delete mode 100644 charts/physims/charts/nr-pbchsim.273rb/Chart.yaml delete mode 100644 charts/physims/charts/nr-pbchsim.273rb/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-pbchsim.273rb/templates/job.yaml delete mode 100644 charts/physims/charts/nr-pbchsim.273rb/values.yaml delete mode 100644 charts/physims/charts/nr-pbchsim.scs/Chart.yaml delete mode 100644 charts/physims/charts/nr-pbchsim.scs/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-pbchsim.scs/templates/job.yaml delete mode 100644 charts/physims/charts/nr-pbchsim.scs/values.yaml delete mode 100644 charts/physims/charts/nr-prachsim/Chart.yaml delete mode 100644 charts/physims/charts/nr-prachsim/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-prachsim/templates/job.yaml delete mode 100644 charts/physims/charts/nr-prachsim/values.yaml delete mode 100644 charts/physims/charts/nr-psbchsim/Chart.yaml delete mode 100644 charts/physims/charts/nr-psbchsim/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-psbchsim/templates/job.yaml delete mode 100644 charts/physims/charts/nr-psbchsim/values.yaml delete mode 100644 charts/physims/charts/nr-pucchsim/Chart.yaml delete mode 100644 charts/physims/charts/nr-pucchsim/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-pucchsim/templates/job.yaml delete mode 100644 charts/physims/charts/nr-pucchsim/values.yaml delete mode 100644 charts/physims/charts/nr-ulschsim/Chart.yaml delete mode 100644 charts/physims/charts/nr-ulschsim/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-ulschsim/templates/job.yaml delete mode 100644 charts/physims/charts/nr-ulschsim/values.yaml delete mode 100644 charts/physims/charts/nr-ulsim.3gpp/Chart.yaml delete mode 100644 charts/physims/charts/nr-ulsim.3gpp/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-ulsim.3gpp/templates/job.yaml delete mode 100644 charts/physims/charts/nr-ulsim.3gpp/values.yaml delete mode 100644 charts/physims/charts/nr-ulsim.mimo/Chart.yaml delete mode 100644 charts/physims/charts/nr-ulsim.mimo/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-ulsim.mimo/templates/job.yaml delete mode 100644 charts/physims/charts/nr-ulsim.mimo/values.yaml delete mode 100644 charts/physims/charts/nr-ulsim.misc/Chart.yaml delete mode 100644 charts/physims/charts/nr-ulsim.misc/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-ulsim.misc/templates/job.yaml delete mode 100644 charts/physims/charts/nr-ulsim.misc/values.yaml delete mode 100644 charts/physims/charts/nr-ulsim.sc-fdma/Chart.yaml delete mode 100644 charts/physims/charts/nr-ulsim.sc-fdma/templates/_helpers.tpl delete mode 100644 charts/physims/charts/nr-ulsim.sc-fdma/templates/job.yaml delete mode 100644 charts/physims/charts/nr-ulsim.sc-fdma/values.yaml delete mode 100644 charts/physims/charts/polartest/Chart.yaml delete mode 100644 charts/physims/charts/polartest/templates/_helpers.tpl delete mode 100644 charts/physims/charts/polartest/templates/job.yaml delete mode 100644 charts/physims/charts/polartest/values.yaml delete mode 100644 charts/physims/charts/smallblocktest/Chart.yaml delete mode 100644 charts/physims/charts/smallblocktest/templates/_helpers.tpl delete mode 100644 charts/physims/charts/smallblocktest/templates/job.yaml delete mode 100644 charts/physims/charts/smallblocktest/values.yaml delete mode 100644 charts/physims/charts/ulsim/Chart.yaml delete mode 100644 charts/physims/charts/ulsim/templates/_helpers.tpl delete mode 100644 charts/physims/charts/ulsim/templates/job.yaml delete mode 100644 charts/physims/charts/ulsim/values.yaml delete mode 100644 charts/physims/templates/rbac.yaml delete mode 100644 charts/physims/templates/serviceaccount.yaml delete mode 100644 charts/physims/values.yaml diff --git a/charts/physims/Chart.yaml b/charts/physims/Chart.yaml deleted file mode 100644 index 0a6abe4caa..0000000000 --- a/charts/physims/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-physim -description: A Helm chart for physical simulators network function - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 1.0.0 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulators - - RAN - - 4G - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/dlsim.100rb+tm2/Chart.yaml b/charts/physims/charts/dlsim.100rb+tm2/Chart.yaml deleted file mode 100644 index 4d7cea8e23..0000000000 --- a/charts/physims/charts/dlsim.100rb+tm2/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-dlsim-100rb-tm2 -description: A Helm subchart for dlsim network function ("100rb+tm2" tests) - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - dlsim - - RAN - - 4G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/dlsim.100rb+tm2/templates/_helpers.tpl b/charts/physims/charts/dlsim.100rb+tm2/templates/_helpers.tpl deleted file mode 100644 index ee2418aee1..0000000000 --- a/charts/physims/charts/dlsim.100rb+tm2/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-dlsim-100rb-tm2.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-dlsim-100rb-tm2.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-dlsim-100rb-tm2.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-dlsim-100rb-tm2.labels" -}} -helm.sh/chart: {{ include "oai-dlsim-100rb-tm2.chart" . }} -{{ include "oai-dlsim-100rb-tm2.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-dlsim-100rb-tm2.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-dlsim-100rb-tm2.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-dlsim-100rb-tm2.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-dlsim-100rb-tm2.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/dlsim.100rb+tm2/templates/job.yaml b/charts/physims/charts/dlsim.100rb+tm2/templates/job.yaml deleted file mode 100644 index 4fbac5304d..0000000000 --- a/charts/physims/charts/dlsim.100rb+tm2/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "dlsim.100rb+tm2" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.dlsim100rbtm2 }} - {{- end }} diff --git a/charts/physims/charts/dlsim.100rb+tm2/values.yaml b/charts/physims/charts/dlsim.100rb+tm2/values.yaml deleted file mode 100644 index aae621bd84..0000000000 --- a/charts/physims/charts/dlsim.100rb+tm2/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-dlsim-100rb+tm2 -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-dlsim-100rb-tm2" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/dlsim.basic/Chart.yaml b/charts/physims/charts/dlsim.basic/Chart.yaml deleted file mode 100644 index 8fadf3e6b2..0000000000 --- a/charts/physims/charts/dlsim.basic/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-dlsim-basic -description: A Helm subchart for dlsim network function ("basic" tests) - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - dlsim - - RAN - - 4G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/dlsim.basic/templates/_helpers.tpl b/charts/physims/charts/dlsim.basic/templates/_helpers.tpl deleted file mode 100644 index d6dac8be45..0000000000 --- a/charts/physims/charts/dlsim.basic/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-dlsim-basic.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-dlsim-basic.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-dlsim-basic.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-dlsim-basic.labels" -}} -helm.sh/chart: {{ include "oai-dlsim-basic.chart" . }} -{{ include "oai-dlsim-basic.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-dlsim-basic.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-dlsim-basic.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-dlsim-basic.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-dlsim-basic.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/dlsim.basic/templates/job.yaml b/charts/physims/charts/dlsim.basic/templates/job.yaml deleted file mode 100644 index fac60059f2..0000000000 --- a/charts/physims/charts/dlsim.basic/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "dlsim.basic" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.dlsimbasic }} - {{- end }} diff --git a/charts/physims/charts/dlsim.basic/values.yaml b/charts/physims/charts/dlsim.basic/values.yaml deleted file mode 100644 index ae197e12ea..0000000000 --- a/charts/physims/charts/dlsim.basic/values.yaml +++ /dev/null @@ -1,44 +0,0 @@ -# Default values for oai-dlsim-basic -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-dlsim-basic" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: - limits: - cpu: 100m - memory: 128Mi - requests: - cpu: 100m - memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/ldpctest/Chart.yaml b/charts/physims/charts/ldpctest/Chart.yaml deleted file mode 100644 index 667bd3d8aa..0000000000 --- a/charts/physims/charts/ldpctest/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-ldpctest -description: A Helm subchart for ldpctest network function - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - ldpctest - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/ldpctest/templates/_helpers.tpl b/charts/physims/charts/ldpctest/templates/_helpers.tpl deleted file mode 100644 index 018eaa5af5..0000000000 --- a/charts/physims/charts/ldpctest/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-ldpctest.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-ldpctest.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-ldpctest.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-ldpctest.labels" -}} -helm.sh/chart: {{ include "oai-ldpctest.chart" . }} -{{ include "oai-ldpctest.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-ldpctest.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-ldpctest.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-ldpctest.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-ldpctest.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/ldpctest/templates/job.yaml b/charts/physims/charts/ldpctest/templates/job.yaml deleted file mode 100644 index 4386d12a3e..0000000000 --- a/charts/physims/charts/ldpctest/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "ldpctest" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.ldpctest }} - {{- end }} diff --git a/charts/physims/charts/ldpctest/values.yaml b/charts/physims/charts/ldpctest/values.yaml deleted file mode 100644 index 0ff1153a2c..0000000000 --- a/charts/physims/charts/ldpctest/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-ldpctest. -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-ldpctest-sa" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-dlschsim/Chart.yaml b/charts/physims/charts/nr-dlschsim/Chart.yaml deleted file mode 100644 index 3837f0cd2b..0000000000 --- a/charts/physims/charts/nr-dlschsim/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-dlschsim -description: A Helm subchart for nr-dlschsim network function - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-dlschsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-dlschsim/templates/_helpers.tpl b/charts/physims/charts/nr-dlschsim/templates/_helpers.tpl deleted file mode 100644 index 6b6a5181e9..0000000000 --- a/charts/physims/charts/nr-dlschsim/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-dlschsim.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-dlschsim.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-dlschsim.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-dlschsim.labels" -}} -helm.sh/chart: {{ include "oai-nr-dlschsim.chart" . }} -{{ include "oai-nr-dlschsim.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-dlschsim.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-dlschsim.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-dlschsim.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-dlschsim.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-dlschsim/templates/job.yaml b/charts/physims/charts/nr-dlschsim/templates/job.yaml deleted file mode 100644 index 6d1a798cb8..0000000000 --- a/charts/physims/charts/nr-dlschsim/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_dlschsim" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrdlschsim }} - {{- end }} diff --git a/charts/physims/charts/nr-dlschsim/values.yaml b/charts/physims/charts/nr-dlschsim/values.yaml deleted file mode 100644 index a75437a0d6..0000000000 --- a/charts/physims/charts/nr-dlschsim/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-nr-dlschsim. -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-dlschsim-sa" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-dlsim.basic/Chart.yaml b/charts/physims/charts/nr-dlsim.basic/Chart.yaml deleted file mode 100644 index b2a090a4b2..0000000000 --- a/charts/physims/charts/nr-dlsim.basic/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-dlsim-basic -description: A Helm subchart for nr-dlsim network function ("basic" tests) - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-dlsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-dlsim.basic/templates/_helpers.tpl b/charts/physims/charts/nr-dlsim.basic/templates/_helpers.tpl deleted file mode 100644 index 733a367061..0000000000 --- a/charts/physims/charts/nr-dlsim.basic/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-dlsim-basic.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-dlsim-basic.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-dlsim-basic.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-dlsim-basic.labels" -}} -helm.sh/chart: {{ include "oai-nr-dlsim-basic.chart" . }} -{{ include "oai-nr-dlsim-basic.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-dlsim-basic.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-dlsim-basic.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-dlsim-basic.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-dlsim-basic.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-dlsim.basic/templates/job.yaml b/charts/physims/charts/nr-dlsim.basic/templates/job.yaml deleted file mode 100644 index cbe1a9cbbc..0000000000 --- a/charts/physims/charts/nr-dlsim.basic/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_dlsim.basic" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrdlsimbasic }} - {{- end }} diff --git a/charts/physims/charts/nr-dlsim.basic/values.yaml b/charts/physims/charts/nr-dlsim.basic/values.yaml deleted file mode 100644 index 88e5a2caaa..0000000000 --- a/charts/physims/charts/nr-dlsim.basic/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-nr-dlsim-basic -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-dlsim-basic" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-dlsim.dmrs+ptrs/Chart.yaml b/charts/physims/charts/nr-dlsim.dmrs+ptrs/Chart.yaml deleted file mode 100644 index c5f51341c4..0000000000 --- a/charts/physims/charts/nr-dlsim.dmrs+ptrs/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-dlsim-dmrs-ptrs -description: A Helm subchart for nr-dlsim network function ("dmrs+ptrs" tests) - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-dlsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-dlsim.dmrs+ptrs/templates/_helpers.tpl b/charts/physims/charts/nr-dlsim.dmrs+ptrs/templates/_helpers.tpl deleted file mode 100644 index 85bf9e860c..0000000000 --- a/charts/physims/charts/nr-dlsim.dmrs+ptrs/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-dlsim-dmrs-ptrs.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-dlsim-dmrs-ptrs.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-dlsim-dmrs-ptrs.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-dlsim-dmrs-ptrs.labels" -}} -helm.sh/chart: {{ include "oai-nr-dlsim-dmrs-ptrs.chart" . }} -{{ include "oai-nr-dlsim-dmrs-ptrs.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-dlsim-dmrs-ptrs.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-dlsim-dmrs-ptrs.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-dlsim-dmrs-ptrs.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-dlsim-dmrs-ptrs.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-dlsim.dmrs+ptrs/templates/job.yaml b/charts/physims/charts/nr-dlsim.dmrs+ptrs/templates/job.yaml deleted file mode 100644 index 77f8dd061d..0000000000 --- a/charts/physims/charts/nr-dlsim.dmrs+ptrs/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_dlsim.dmrs+ptrs" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrdlsimdmrsptrs }} - {{- end }} diff --git a/charts/physims/charts/nr-dlsim.dmrs+ptrs/values.yaml b/charts/physims/charts/nr-dlsim.dmrs+ptrs/values.yaml deleted file mode 100644 index 357e6c2861..0000000000 --- a/charts/physims/charts/nr-dlsim.dmrs+ptrs/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-nr-dlsim-dmrs+ptrs -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-dlsim-dmrs-ptrs" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-dlsim.mcs+mimo/Chart.yaml b/charts/physims/charts/nr-dlsim.mcs+mimo/Chart.yaml deleted file mode 100644 index 55ea194f07..0000000000 --- a/charts/physims/charts/nr-dlsim.mcs+mimo/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-dlsim-mcs-mimo -description: A Helm subchart for nr-dlsim network function ("mcs+mimo" tests) - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-dlsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-dlsim.mcs+mimo/templates/_helpers.tpl b/charts/physims/charts/nr-dlsim.mcs+mimo/templates/_helpers.tpl deleted file mode 100644 index 246383d370..0000000000 --- a/charts/physims/charts/nr-dlsim.mcs+mimo/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-dlsim-mcs-mimo.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-dlsim-mcs-mimo.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-dlsim-mcs-mimo.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-dlsim-mcs-mimo.labels" -}} -helm.sh/chart: {{ include "oai-nr-dlsim-mcs-mimo.chart" . }} -{{ include "oai-nr-dlsim-mcs-mimo.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-dlsim-mcs-mimo.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-dlsim-mcs-mimo.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-dlsim-mcs-mimo.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-dlsim-mcs-mimo.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-dlsim.mcs+mimo/templates/job.yaml b/charts/physims/charts/nr-dlsim.mcs+mimo/templates/job.yaml deleted file mode 100644 index 4625667c2b..0000000000 --- a/charts/physims/charts/nr-dlsim.mcs+mimo/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_dlsim.mcs+mimo" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrdlsimmcsmimo }} - {{- end }} diff --git a/charts/physims/charts/nr-dlsim.mcs+mimo/values.yaml b/charts/physims/charts/nr-dlsim.mcs+mimo/values.yaml deleted file mode 100644 index 5ef75a1672..0000000000 --- a/charts/physims/charts/nr-dlsim.mcs+mimo/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-nr-dlsim-mcs-mimo -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-dlsim-mcs-mimo" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-dlsim.offset/Chart.yaml b/charts/physims/charts/nr-dlsim.offset/Chart.yaml deleted file mode 100644 index e4fa9a4100..0000000000 --- a/charts/physims/charts/nr-dlsim.offset/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-dlsim-offset -description: A Helm subchart for nr-dlsim network function ("offset" tests) - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-dlsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-dlsim.offset/templates/_helpers.tpl b/charts/physims/charts/nr-dlsim.offset/templates/_helpers.tpl deleted file mode 100644 index 74417c21d9..0000000000 --- a/charts/physims/charts/nr-dlsim.offset/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-dlsim-offset.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-dlsim-offset.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-dlsim-offset.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-dlsim-offset.labels" -}} -helm.sh/chart: {{ include "oai-nr-dlsim-offset.chart" . }} -{{ include "oai-nr-dlsim-offset.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-dlsim-offset.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-dlsim-offset.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-dlsim-offset.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-dlsim-offset.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-dlsim.offset/templates/job.yaml b/charts/physims/charts/nr-dlsim.offset/templates/job.yaml deleted file mode 100644 index dabe3749e6..0000000000 --- a/charts/physims/charts/nr-dlsim.offset/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_dlsim.offset" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrdlsimoffset }} - {{- end }} diff --git a/charts/physims/charts/nr-dlsim.offset/values.yaml b/charts/physims/charts/nr-dlsim.offset/values.yaml deleted file mode 100644 index efef89ce4a..0000000000 --- a/charts/physims/charts/nr-dlsim.offset/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-nr-dlsim-offset -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-dlsim-offset" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-pbchsim.106rb/Chart.yaml b/charts/physims/charts/nr-pbchsim.106rb/Chart.yaml deleted file mode 100644 index ea93f8da58..0000000000 --- a/charts/physims/charts/nr-pbchsim.106rb/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-pbchsim-106rb -description: A Helm subchart for nr-pbchsim network function ("106rb" tests) - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-pbchsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-pbchsim.106rb/templates/_helpers.tpl b/charts/physims/charts/nr-pbchsim.106rb/templates/_helpers.tpl deleted file mode 100644 index 1ea88a4681..0000000000 --- a/charts/physims/charts/nr-pbchsim.106rb/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-pbchsim-106rb.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-pbchsim-106rb.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-pbchsim-106rb.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-pbchsim-106rb.labels" -}} -helm.sh/chart: {{ include "oai-nr-pbchsim-106rb.chart" . }} -{{ include "oai-nr-pbchsim-106rb.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-pbchsim-106rb.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-pbchsim-106rb.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-pbchsim-106rb.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-pbchsim-106rb.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-pbchsim.106rb/templates/job.yaml b/charts/physims/charts/nr-pbchsim.106rb/templates/job.yaml deleted file mode 100644 index c477116131..0000000000 --- a/charts/physims/charts/nr-pbchsim.106rb/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_pbchsim.106rb" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrpbschsim106rb }} - {{- end }} diff --git a/charts/physims/charts/nr-pbchsim.106rb/values.yaml b/charts/physims/charts/nr-pbchsim.106rb/values.yaml deleted file mode 100644 index 8f8104146a..0000000000 --- a/charts/physims/charts/nr-pbchsim.106rb/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-nr-pbchsim-106rb -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-pbchsim-106rb" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-pbchsim.217rb/Chart.yaml b/charts/physims/charts/nr-pbchsim.217rb/Chart.yaml deleted file mode 100644 index 74561a42e9..0000000000 --- a/charts/physims/charts/nr-pbchsim.217rb/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-pbchsim-217rb -description: A Helm subchart for nr-pbchsim network function ("217rb" tests) - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-pbchsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-pbchsim.217rb/templates/_helpers.tpl b/charts/physims/charts/nr-pbchsim.217rb/templates/_helpers.tpl deleted file mode 100644 index 28bb7fa4a0..0000000000 --- a/charts/physims/charts/nr-pbchsim.217rb/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-pbchsim-217rb.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-pbchsim-217rb.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-pbchsim-217rb.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-pbchsim-217rb.labels" -}} -helm.sh/chart: {{ include "oai-nr-pbchsim-217rb.chart" . }} -{{ include "oai-nr-pbchsim-217rb.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-pbchsim-217rb.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-pbchsim-217rb.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-pbchsim-217rb.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-pbchsim-217rb.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-pbchsim.217rb/templates/job.yaml b/charts/physims/charts/nr-pbchsim.217rb/templates/job.yaml deleted file mode 100644 index 70eeec8eda..0000000000 --- a/charts/physims/charts/nr-pbchsim.217rb/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_pbchsim.217rb" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrpbchsim217rb }} - {{- end }} diff --git a/charts/physims/charts/nr-pbchsim.217rb/values.yaml b/charts/physims/charts/nr-pbchsim.217rb/values.yaml deleted file mode 100644 index 96b3f860df..0000000000 --- a/charts/physims/charts/nr-pbchsim.217rb/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-nr-pbchsim-217rb -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-pbchsim-217rb" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-pbchsim.273rb/Chart.yaml b/charts/physims/charts/nr-pbchsim.273rb/Chart.yaml deleted file mode 100644 index 6fab0faad8..0000000000 --- a/charts/physims/charts/nr-pbchsim.273rb/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-pbchsim-273rb -description: A Helm subchart for nr-pbchsim network function ("273rb" tests) - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-pbchsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-pbchsim.273rb/templates/_helpers.tpl b/charts/physims/charts/nr-pbchsim.273rb/templates/_helpers.tpl deleted file mode 100644 index 2682e2f699..0000000000 --- a/charts/physims/charts/nr-pbchsim.273rb/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-pbchsim-273rb.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-pbchsim-273rb.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-pbchsim-273rb.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-pbchsim-273rb.labels" -}} -helm.sh/chart: {{ include "oai-nr-pbchsim-273rb.chart" . }} -{{ include "oai-nr-pbchsim-273rb.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-pbchsim-273rb.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-pbchsim-273rb.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-pbchsim-273rb.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-pbchsim-273rb.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-pbchsim.273rb/templates/job.yaml b/charts/physims/charts/nr-pbchsim.273rb/templates/job.yaml deleted file mode 100644 index ab002fe664..0000000000 --- a/charts/physims/charts/nr-pbchsim.273rb/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_pbchsim.273rb" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrpbchsim273rb }} - {{- end }} diff --git a/charts/physims/charts/nr-pbchsim.273rb/values.yaml b/charts/physims/charts/nr-pbchsim.273rb/values.yaml deleted file mode 100644 index 36b62e0146..0000000000 --- a/charts/physims/charts/nr-pbchsim.273rb/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-nr-pbchsim-273rb -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-pbchsim-273rb" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-pbchsim.scs/Chart.yaml b/charts/physims/charts/nr-pbchsim.scs/Chart.yaml deleted file mode 100644 index c590bfff38..0000000000 --- a/charts/physims/charts/nr-pbchsim.scs/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-pbchsim-scs -description: A Helm subchart for nr-pbchsim network function ("Other SCS" tests) - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-pbchsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-pbchsim.scs/templates/_helpers.tpl b/charts/physims/charts/nr-pbchsim.scs/templates/_helpers.tpl deleted file mode 100644 index 4734fc898e..0000000000 --- a/charts/physims/charts/nr-pbchsim.scs/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-pbchsim-scs.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-pbchsim-scs.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-pbchsim-scs.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-pbchsim-scs.labels" -}} -helm.sh/chart: {{ include "oai-nr-pbchsim-scs.chart" . }} -{{ include "oai-nr-pbchsim-scs.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-pbchsim-scs.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-pbchsim-scs.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-pbchsim-scs.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-pbchsim-scs.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-pbchsim.scs/templates/job.yaml b/charts/physims/charts/nr-pbchsim.scs/templates/job.yaml deleted file mode 100644 index 74077c2dfb..0000000000 --- a/charts/physims/charts/nr-pbchsim.scs/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_pbchsim.otherSCS" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrpbchsim273rb }} - {{- end }} diff --git a/charts/physims/charts/nr-pbchsim.scs/values.yaml b/charts/physims/charts/nr-pbchsim.scs/values.yaml deleted file mode 100644 index f7753924f1..0000000000 --- a/charts/physims/charts/nr-pbchsim.scs/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-nr-pbchsim-scs -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-pbchsim-scs" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-prachsim/Chart.yaml b/charts/physims/charts/nr-prachsim/Chart.yaml deleted file mode 100644 index 8c88587a7f..0000000000 --- a/charts/physims/charts/nr-prachsim/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-prachsim -description: A Helm subchart for nr-prachsim network function - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-prachsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-prachsim/templates/_helpers.tpl b/charts/physims/charts/nr-prachsim/templates/_helpers.tpl deleted file mode 100644 index 6362c72b2a..0000000000 --- a/charts/physims/charts/nr-prachsim/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-prachsim.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-prachsim.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-prachsim.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-prachsim.labels" -}} -helm.sh/chart: {{ include "oai-nr-prachsim.chart" . }} -{{ include "oai-nr-prachsim.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-prachsim.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-prachsim.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-prachsim.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-prachsim.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-prachsim/templates/job.yaml b/charts/physims/charts/nr-prachsim/templates/job.yaml deleted file mode 100644 index 050ee2f3bc..0000000000 --- a/charts/physims/charts/nr-prachsim/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_prachsim" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrprachsim }} - {{- end }} diff --git a/charts/physims/charts/nr-prachsim/values.yaml b/charts/physims/charts/nr-prachsim/values.yaml deleted file mode 100644 index 8404ea4192..0000000000 --- a/charts/physims/charts/nr-prachsim/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-nr-prachsim. -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-prachsim-sa" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-psbchsim/Chart.yaml b/charts/physims/charts/nr-psbchsim/Chart.yaml deleted file mode 100644 index 8f1af6d648..0000000000 --- a/charts/physims/charts/nr-psbchsim/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-psbchsim -description: A Helm subchart for nr-psbchsim network function - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-psbchsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-psbchsim/templates/_helpers.tpl b/charts/physims/charts/nr-psbchsim/templates/_helpers.tpl deleted file mode 100644 index ef7fc150b5..0000000000 --- a/charts/physims/charts/nr-psbchsim/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-psbchsim.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-psbchsim.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-psbchsim.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-psbchsim.labels" -}} -helm.sh/chart: {{ include "oai-nr-psbchsim.chart" . }} -{{ include "oai-nr-psbchsim.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-psbchsim.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-psbchsim.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-psbchsim.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-psbchsim.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-psbchsim/templates/job.yaml b/charts/physims/charts/nr-psbchsim/templates/job.yaml deleted file mode 100644 index 04c6a410cb..0000000000 --- a/charts/physims/charts/nr-psbchsim/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_psbchsim" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrpsbchsim }} - {{- end }} diff --git a/charts/physims/charts/nr-psbchsim/values.yaml b/charts/physims/charts/nr-psbchsim/values.yaml deleted file mode 100644 index b6fa992ccf..0000000000 --- a/charts/physims/charts/nr-psbchsim/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-nr-psbchsim -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-psbchsim" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-pucchsim/Chart.yaml b/charts/physims/charts/nr-pucchsim/Chart.yaml deleted file mode 100644 index bb0033175f..0000000000 --- a/charts/physims/charts/nr-pucchsim/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-pucchsim -description: A Helm subchart for nr-pucchsim network function - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-pucchsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-pucchsim/templates/_helpers.tpl b/charts/physims/charts/nr-pucchsim/templates/_helpers.tpl deleted file mode 100644 index 210ba26db2..0000000000 --- a/charts/physims/charts/nr-pucchsim/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-pucchsim.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-pucchsim.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-pucchsim.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-pucchsim.labels" -}} -helm.sh/chart: {{ include "oai-nr-pucchsim.chart" . }} -{{ include "oai-nr-pucchsim.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-pucchsim.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-pucchsim.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-pucchsim.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-pucchsim.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-pucchsim/templates/job.yaml b/charts/physims/charts/nr-pucchsim/templates/job.yaml deleted file mode 100644 index d9081bb926..0000000000 --- a/charts/physims/charts/nr-pucchsim/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_pucchsim" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrpucchsim }} - {{- end }} diff --git a/charts/physims/charts/nr-pucchsim/values.yaml b/charts/physims/charts/nr-pucchsim/values.yaml deleted file mode 100644 index 1c2c822088..0000000000 --- a/charts/physims/charts/nr-pucchsim/values.yaml +++ /dev/null @@ -1,52 +0,0 @@ -# Default values for oai-nr-pucchsim. -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-pucchsim-sa" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -service: - type: ClusterIP - port: 80 - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-ulschsim/Chart.yaml b/charts/physims/charts/nr-ulschsim/Chart.yaml deleted file mode 100644 index e2525f0032..0000000000 --- a/charts/physims/charts/nr-ulschsim/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-ulschsim -description: A Helm subchart for nr-ulschsim network function - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-ulschsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-ulschsim/templates/_helpers.tpl b/charts/physims/charts/nr-ulschsim/templates/_helpers.tpl deleted file mode 100644 index 9aa13a81f0..0000000000 --- a/charts/physims/charts/nr-ulschsim/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-ulschsim.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-ulschsim.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-ulschsim.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-ulschsim.labels" -}} -helm.sh/chart: {{ include "oai-nr-ulschsim.chart" . }} -{{ include "oai-nr-ulschsim.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-ulschsim.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-ulschsim.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-ulschsim.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-ulschsim.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-ulschsim/templates/job.yaml b/charts/physims/charts/nr-ulschsim/templates/job.yaml deleted file mode 100644 index b75963898b..0000000000 --- a/charts/physims/charts/nr-ulschsim/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_ulschsim" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrulschsim }} - {{- end }} diff --git a/charts/physims/charts/nr-ulschsim/values.yaml b/charts/physims/charts/nr-ulschsim/values.yaml deleted file mode 100644 index 770cb43bb1..0000000000 --- a/charts/physims/charts/nr-ulschsim/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-nr-ulschsim. -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-ulschsim-sa" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-ulsim.3gpp/Chart.yaml b/charts/physims/charts/nr-ulsim.3gpp/Chart.yaml deleted file mode 100644 index e2de26c5e8..0000000000 --- a/charts/physims/charts/nr-ulsim.3gpp/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-ulsim-3gpp -description: A Helm subchart for nr-ulsim network function ("3gpp" tests) - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-ulsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-ulsim.3gpp/templates/_helpers.tpl b/charts/physims/charts/nr-ulsim.3gpp/templates/_helpers.tpl deleted file mode 100644 index 4655516f35..0000000000 --- a/charts/physims/charts/nr-ulsim.3gpp/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-ulsim-3gpp.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-ulsim-3gpp.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-ulsim-3gpp.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-ulsim-3gpp.labels" -}} -helm.sh/chart: {{ include "oai-nr-ulsim-3gpp.chart" . }} -{{ include "oai-nr-ulsim-3gpp.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-ulsim-3gpp.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-ulsim-3gpp.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-ulsim-3gpp.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-ulsim.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-ulsim.3gpp/templates/job.yaml b/charts/physims/charts/nr-ulsim.3gpp/templates/job.yaml deleted file mode 100644 index 6b9d4a1a39..0000000000 --- a/charts/physims/charts/nr-ulsim.3gpp/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_ulsim.3gpp" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrulsim3gpp }} - {{- end }} diff --git a/charts/physims/charts/nr-ulsim.3gpp/values.yaml b/charts/physims/charts/nr-ulsim.3gpp/values.yaml deleted file mode 100644 index b2aedcba03..0000000000 --- a/charts/physims/charts/nr-ulsim.3gpp/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-nr-ulsim-3gpp -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-ulsim-3gpp" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-ulsim.mimo/Chart.yaml b/charts/physims/charts/nr-ulsim.mimo/Chart.yaml deleted file mode 100644 index b4a691f14a..0000000000 --- a/charts/physims/charts/nr-ulsim.mimo/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-ulsim-mimo -description: A Helm subchart for nr-ulsim network function ("mimo" tests) - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-ulsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-ulsim.mimo/templates/_helpers.tpl b/charts/physims/charts/nr-ulsim.mimo/templates/_helpers.tpl deleted file mode 100644 index ead3e5ca41..0000000000 --- a/charts/physims/charts/nr-ulsim.mimo/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-ulsim-mimo.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-ulsim-mimo.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-ulsim-mimo.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-ulsim-mimo.labels" -}} -helm.sh/chart: {{ include "oai-nr-ulsim-mimo.chart" . }} -{{ include "oai-nr-ulsim-mimo.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-ulsim-mimo.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-ulsim-mimo.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-ulsim-mimo.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-ulsim.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-ulsim.mimo/templates/job.yaml b/charts/physims/charts/nr-ulsim.mimo/templates/job.yaml deleted file mode 100644 index 337329a6fe..0000000000 --- a/charts/physims/charts/nr-ulsim.mimo/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_ulsim.mimo" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrulsimmimo }} - {{- end }} diff --git a/charts/physims/charts/nr-ulsim.mimo/values.yaml b/charts/physims/charts/nr-ulsim.mimo/values.yaml deleted file mode 100644 index b2dd42d3be..0000000000 --- a/charts/physims/charts/nr-ulsim.mimo/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-nr-ulsim-mimo -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-ulsim-mimo" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-ulsim.misc/Chart.yaml b/charts/physims/charts/nr-ulsim.misc/Chart.yaml deleted file mode 100644 index 6770f26b76..0000000000 --- a/charts/physims/charts/nr-ulsim.misc/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-ulsim-misc -description: A Helm subchart for nr-ulsim network function ("misc" tests) - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-ulsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-ulsim.misc/templates/_helpers.tpl b/charts/physims/charts/nr-ulsim.misc/templates/_helpers.tpl deleted file mode 100644 index 6b5906a8e7..0000000000 --- a/charts/physims/charts/nr-ulsim.misc/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-ulsim-misc.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-ulsim-misc.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-ulsim-misc.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-ulsim-misc.labels" -}} -helm.sh/chart: {{ include "oai-nr-ulsim-misc.chart" . }} -{{ include "oai-nr-ulsim-misc.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-ulsim-misc.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-ulsim-misc.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-ulsim-misc.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-ulsim.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-ulsim.misc/templates/job.yaml b/charts/physims/charts/nr-ulsim.misc/templates/job.yaml deleted file mode 100644 index 8a2feff183..0000000000 --- a/charts/physims/charts/nr-ulsim.misc/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_ulsim.misc" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrulsimmisc }} - {{- end }} diff --git a/charts/physims/charts/nr-ulsim.misc/values.yaml b/charts/physims/charts/nr-ulsim.misc/values.yaml deleted file mode 100644 index 8d15fca39e..0000000000 --- a/charts/physims/charts/nr-ulsim.misc/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-nr-ulsim-misc -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-ulsim-misc" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/nr-ulsim.sc-fdma/Chart.yaml b/charts/physims/charts/nr-ulsim.sc-fdma/Chart.yaml deleted file mode 100644 index c4460cd6a0..0000000000 --- a/charts/physims/charts/nr-ulsim.sc-fdma/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-nr-ulsim-sc-fdma -description: A Helm subchart for nr-ulsim network function ("sc-fdma" tests) - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - nr-ulsim - - RAN - - 5G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/nr-ulsim.sc-fdma/templates/_helpers.tpl b/charts/physims/charts/nr-ulsim.sc-fdma/templates/_helpers.tpl deleted file mode 100644 index b608389dc8..0000000000 --- a/charts/physims/charts/nr-ulsim.sc-fdma/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-nr-ulsim-sc-fdma.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-nr-ulsim-sc-fdma.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-nr-ulsim-sc-fdma.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-nr-ulsim-sc-fdma.labels" -}} -helm.sh/chart: {{ include "oai-nr-ulsim-sc-fdma.chart" . }} -{{ include "oai-nr-ulsim-sc-fdma.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-nr-ulsim-sc-fdma.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-nr-ulsim-sc-fdma.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-nr-ulsim-sc-fdma.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-nr-ulsim.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/nr-ulsim.sc-fdma/templates/job.yaml b/charts/physims/charts/nr-ulsim.sc-fdma/templates/job.yaml deleted file mode 100644 index 6915790c2c..0000000000 --- a/charts/physims/charts/nr-ulsim.sc-fdma/templates/job.yaml +++ /dev/null @@ -1,49 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - ports: - - containerPort: 80 - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "nr_ulsim.sc-fdma" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.nrulsimscfdma }} - {{- end }} diff --git a/charts/physims/charts/nr-ulsim.sc-fdma/values.yaml b/charts/physims/charts/nr-ulsim.sc-fdma/values.yaml deleted file mode 100644 index c617eeafec..0000000000 --- a/charts/physims/charts/nr-ulsim.sc-fdma/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-nr-ulsim-sc-fdma -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-nr-ulsim-sc-fdma" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/polartest/Chart.yaml b/charts/physims/charts/polartest/Chart.yaml deleted file mode 100644 index ae5f5ca263..0000000000 --- a/charts/physims/charts/polartest/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-polartest -description: A Helm subchart for polartest network function - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - polartest - - RAN - - 4G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/polartest/templates/_helpers.tpl b/charts/physims/charts/polartest/templates/_helpers.tpl deleted file mode 100644 index ce81dbe525..0000000000 --- a/charts/physims/charts/polartest/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-polartest.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-polartest.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-polartest.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-polartest.labels" -}} -helm.sh/chart: {{ include "oai-polartest.chart" . }} -{{ include "oai-polartest.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-polartest.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-polartest.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-polartest.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-polartest.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/polartest/templates/job.yaml b/charts/physims/charts/polartest/templates/job.yaml deleted file mode 100644 index e3850514d7..0000000000 --- a/charts/physims/charts/polartest/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "polartest" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.polartest }} - {{- end }} diff --git a/charts/physims/charts/polartest/values.yaml b/charts/physims/charts/polartest/values.yaml deleted file mode 100644 index 12386f02bc..0000000000 --- a/charts/physims/charts/polartest/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-polartest. -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-polartest-sa" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/smallblocktest/Chart.yaml b/charts/physims/charts/smallblocktest/Chart.yaml deleted file mode 100644 index 74092783ae..0000000000 --- a/charts/physims/charts/smallblocktest/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-smallblocktest -description: A Helm subchart for smallblocktest network function - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - smallblocktest - - RAN - - 4G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/smallblocktest/templates/_helpers.tpl b/charts/physims/charts/smallblocktest/templates/_helpers.tpl deleted file mode 100644 index a3c264b33e..0000000000 --- a/charts/physims/charts/smallblocktest/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-smallblocktest.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-smallblocktest.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-smallblocktest.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-smallblocktest.labels" -}} -helm.sh/chart: {{ include "oai-smallblocktest.chart" . }} -{{ include "oai-smallblocktest.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-smallblocktest.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-smallblocktest.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-smallblocktest.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-smallblocktest.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/smallblocktest/templates/job.yaml b/charts/physims/charts/smallblocktest/templates/job.yaml deleted file mode 100644 index 1b695fe670..0000000000 --- a/charts/physims/charts/smallblocktest/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "smallblocktest" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.smallblocktest }} - {{- end }} diff --git a/charts/physims/charts/smallblocktest/values.yaml b/charts/physims/charts/smallblocktest/values.yaml deleted file mode 100644 index 7f116091ac..0000000000 --- a/charts/physims/charts/smallblocktest/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-smallblocktest. -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-smallblocktest-sa" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/charts/ulsim/Chart.yaml b/charts/physims/charts/ulsim/Chart.yaml deleted file mode 100644 index 2311d729b4..0000000000 --- a/charts/physims/charts/ulsim/Chart.yaml +++ /dev/null @@ -1,36 +0,0 @@ -apiVersion: v1 -name: oai-ulsim -description: A Helm subchart for ulsim network function - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -version: 0.1.1 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. -appVersion: v1 - -keywords: - - Physical Simulator - - ulsim - - RAN - - 4G - -sources: - - https://gitlab.eurecom.fr/oai/openairinterface5g - -maintainers: - - name: OPENAIRINTERFACE - email: contact@openairinterface.org diff --git a/charts/physims/charts/ulsim/templates/_helpers.tpl b/charts/physims/charts/ulsim/templates/_helpers.tpl deleted file mode 100644 index 67b6500479..0000000000 --- a/charts/physims/charts/ulsim/templates/_helpers.tpl +++ /dev/null @@ -1,63 +0,0 @@ -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "oai-ulsim.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "oai-ulsim.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- if contains $name .Release.Name -}} -{{- .Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "oai-ulsim.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Common labels -*/}} -{{- define "oai-ulsim.labels" -}} -helm.sh/chart: {{ include "oai-ulsim.chart" . }} -{{ include "oai-ulsim.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end -}} - -{{/* -Selector labels -*/}} -{{- define "oai-ulsim.selectorLabels" -}} -app.kubernetes.io/name: {{ include "oai-ulsim.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - -{{/* -Create the name of the service account to use -*/}} -{{- define "oai-ulsim.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "oai-ulsim.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} diff --git a/charts/physims/charts/ulsim/templates/job.yaml b/charts/physims/charts/ulsim/templates/job.yaml deleted file mode 100644 index ca6c1be16c..0000000000 --- a/charts/physims/charts/ulsim/templates/job.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ .Chart.Name }} -spec: - template: - metadata: - labels: - app: physim - spec: - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- if .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - containers: - - name: physim - image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - {{- if .Values.global.resources.define}} - resources: - requests: - cpu: {{ .Values.global.resources.requests.cpu | quote }} - {{- end}} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - env: - - name: OPENAIR_DIR - value: /opt/oai-physim - command: ["/bin/sh", "-c"] - args: - - > - cmake_targets/autotests/run_exec_autotests.bash -g "ulsim" -d bin/ && - echo "FINISHED" && sleep infinity - dnsPolicy: ClusterFirst - restartPolicy: Never - schedulerName: default-scheduler - serviceAccountName: {{ .Values.global.serviceAccountName }} - terminationGracePeriodSeconds: 30 - {{- if .Values.global.nodeSelector}} - nodeSelector: - {{- toYaml .Values.global.nodeSelector | nindent 12 }} - {{- end }} - {{- if .Values.global.nodeName}} - nodeName: {{ .Values.global.nodeName.ulsim }} - {{- end }} diff --git a/charts/physims/charts/ulsim/values.yaml b/charts/physims/charts/ulsim/values.yaml deleted file mode 100644 index 94038fa6df..0000000000 --- a/charts/physims/charts/ulsim/values.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Default values for oai-ulsim. -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - -imagePullSecrets: [] - -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "oai-ulsim-sa" - -podSecurityContext: - runAsUser: 0 - runAsGroup: 0 - -securityContext: - privileged: false - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} diff --git a/charts/physims/templates/rbac.yaml b/charts/physims/templates/rbac.yaml deleted file mode 100644 index 989988baca..0000000000 --- a/charts/physims/templates/rbac.yaml +++ /dev/null @@ -1,26 +0,0 @@ -apiVersion: rbac.authorization.k8s.io/v1 -kind: Role -metadata: - name: {{ .Chart.Name }}-{{ .Release.Namespace }}-role -rules: -- apiGroups: - - security.openshift.io - resourceNames: - - anyuid - resources: - - securitycontextconstraints - verbs: - - use ---- -apiVersion: rbac.authorization.k8s.io/v1 -kind: RoleBinding -metadata: - name: {{ .Chart.Name }}-{{ .Release.Namespace }}-binding -subjects: -- kind: ServiceAccount - name: {{ .Values.global.serviceAccountName }} - namespace: {{ .Release.Namespace }} -roleRef: - kind: Role - name: {{ .Chart.Name }}-{{ .Release.Namespace }}-role - apiGroup: rbac.authorization.k8s.io diff --git a/charts/physims/templates/serviceaccount.yaml b/charts/physims/templates/serviceaccount.yaml deleted file mode 100644 index 0810702f4f..0000000000 --- a/charts/physims/templates/serviceaccount.yaml +++ /dev/null @@ -1,4 +0,0 @@ -apiVersion: v1 -kind: ServiceAccount -metadata: - name: oai-physim-sa #{{ .Values.global.serviceAccountName }} diff --git a/charts/physims/values.yaml b/charts/physims/values.yaml deleted file mode 100644 index 60a685179c..0000000000 --- a/charts/physims/values.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Default values for oai-physim. -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. -global: - serviceAccountName: oai-physim-sa - namespace: "OAICICD_PROJECT" - image: - registry: local - repository: image-registry.openshift-image-registry.svc:5000/oaicicd-ran/oai-physim - version: TAG - # pullPolicy: IfNotPresent or Never or Always - pullPolicy: Always - # removing the node selector - # will place on two nodes intel 3rd gen and 5th gen with RT kernel - nodeSelector: - type: ran - nodeName: '' - resources: - define: false - requests: - cpu: 1.5 From 2827eecfd9acaea56466d9ae5a07d82ca86aa167 Mon Sep 17 00:00:00 2001 From: Jaroslava Fiedlerova Date: Fri, 16 May 2025 14:10:20 +0200 Subject: [PATCH 07/15] Remove autotest physim test framework No longer used in CI, replaced by ctest testing. xmlstarlet not used anymore, can be removed from build_helper Closes #826 --- cmake_targets/autotests/README.txt | 76 --- .../autotests/run_exec_autotests.bash | 304 --------- cmake_targets/autotests/test_case_list.xml | 584 ------------------ cmake_targets/tools/build_helper | 2 - doc/physical-simulators.md | 99 --- 5 files changed, 1065 deletions(-) delete mode 100755 cmake_targets/autotests/README.txt delete mode 100755 cmake_targets/autotests/run_exec_autotests.bash delete mode 100755 cmake_targets/autotests/test_case_list.xml diff --git a/cmake_targets/autotests/README.txt b/cmake_targets/autotests/README.txt deleted file mode 100755 index 67d3cf9ba2..0000000000 --- a/cmake_targets/autotests/README.txt +++ /dev/null @@ -1,76 +0,0 @@ -OAI Test PLAN - -Obj.# Case# Test# Description - -01 51 Run PHY simulator tests -01 51 00 dlsim test cases (Test 1: 10 MHz, R2.FDD (MCS 5), EVA5, -1dB), - (Test 5: 1.4 MHz, R4.FDD (MCS 4), EVA5, 0dB (70%)), - (Test 6: 10 MHz, R3.FDD (MCS 15), EVA5, 6.7dB (70%)), - (Test 6b: 5 MHz, R3-1.FDD (MCS 15), EVA5, 6.7dB (70%)), - (Test 7: 5 MHz, R3-1.FDD (MCS 15), EVA5, 6.7dB (30%)), - (Test 7b: 5 MHz, R3-1.FDD (MCS 15), ETU70, 1.4 dB (30%)), - (Test 10: 5 MHz, R6.FDD (MCS 25), EVA5, 17.4 dB (70%)), - (Test 10b: 5 MHz, R6-1.FDD (MCS 24,18 PRB), EVA5, 17.5dB (70%)), - (Test 11: 10 MHz, R7.FDD (MCS 25), EVA5, 17.7dB (70%)) - (TM2 Test 1 10 MHz, R.11 FDD (MCS 14), EVA5, 6.8 dB (70%)), - (TM2 Test 1b 20 MHz, R.11-2 FDD (MCS 13), EVA5, 5.9 dB (70%)), -01 51 01 ulsim Test cases. (Test 1, 5 MHz, FDD (MCS 5), AWGN, 6dB), - (Test 2, 5 MHz, FDD (MCS 16), AWGN , 12dB (70%)), - (Test 3, 10 MHz, R3.FDD (MCS 5), AWGN, 6dB (70%)), - (Test 4, 10 MHz, R3-1.FDD (MCS 16), AWGN, 12dB (70%)), - (Test 5, 20 MHz, FDD (MCS 5), AWGN, 6dB (70%)), - (Test 6, 20 MHz, FDD (MCS 16), AWGN, 12 dB (70%)) -01 51 02 ldpc Test cases. (Test1: block length = 3872), - (Test2: block length = 4224), - (Test3: block length = 4576), - (Test4: block length = 4928), - (Test5: block length = 5280), - (Test6: block length = 5632), - (Test7: block length = 6336), - (Test8: block length = 7040), - (Test9: block length = 7744), - (Test10: block length = 8448) -01 51 03 polartest Test cases. (Test1: PBCH polar test), - (Test2: DCI polar test) -01 51 04 nr_pbchsim Test cases. (Test1: PBCH-only, 106 PRB), - (Test2: PBCH and synchronization, 106PBR), - (Test3: PBCH-only, 217 PRB), - (Test4: PBCH and synchronization, 217 RPB), - (Test5: PBCH-only, 273 PRB), - (Test6: PBCH and synchronization, 273 PRB) -01 51 05 nr_dlsim Test cases. (Test1: 106 PRB), - (Test2: 217 PRB), - (Test3: 273 PRB) -01 51 06 nr_dlschsim Test cases. (Test1: 106 PRB), - (Test2: 217 PRB), - (Test3: 273 PRB) -01 51 07 shortblocktest Test cases. (Test1: 3 bits), - (Test2: 6 bits), - (Test3: 7 bits), - (Test4: 11 bits) -01 51 08 nr_ulschsim Test cases. (Test1: 106 PRB), - (Test2: 217 PRB), - (Test3: 273 PRB) -01 51 09 nr_pucchsim Test cases. (Test1: Format 0 ACK miss 106 PRB), - (Test2: Format 1 ACK miss 106 PRB), - (Test3: Format 1 ACK miss 273 PRB), - (Test4: Format 1 NACKtoACK 106 PRB) -01 51 10 dlsim_tm4 test cases (Test 1: 10 MHz, R2.FDD (MCS 5), EVA5, -1dB), - (Test 5: 1.4 MHz, R4.FDD (MCS 4), EVA5, 0dB (70%)), - (Test 6: 10 MHz, R3.FDD (MCS 15), EVA5, 6.7dB (70%)), - (Test 6b: 5 MHz, R3-1.FDD (MCS 15), EVA5, 6.7dB (70%)), - (Test 7: 5 MHz, R3-1.FDD (MCS 15), EVA5, 6.7dB (30%)), - (Test 7b: 5 MHz, R3-1.FDD (MCS 15), ETU70, 1.4 dB (30%)), - (Test 10: 5 MHz, R6.FDD (MCS 25), EVA5, 17.4 dB (70%)), - (Test 10b: 5 MHz, R6-1.FDD (MCS 24,18 PRB), EVA5, 17.5dB (70%)), - (Test 11: 10 MHz, R7.FDD (MCS 25), EVA5, 17.7dB (70%)) - (TM2 Test 1 10 MHz, R.11 FDD (MCS 14), EVA5, 6.8 dB (70%)), - (TM2 Test 1b 20 MHz, R.11-2 FDD (MCS 13), EVA5, 5.9 dB (70%)), -01 51 11 nr_ulsim Test cases. (Test1: MCS 9 106 PRBs), - (Test2: MCS 16 50 PRBs), - (Test3: MCS 28 50 PRBs), - (Test4: MCS 9 217 PRBs), - (Test5: MCS 9 273 PRBs) -01 51 12 nr_prachsim Test cases.(Test1: 106 PRBs), - (Test2: 217 PRBs), - (Test3: 273 PRBs) diff --git a/cmake_targets/autotests/run_exec_autotests.bash b/cmake_targets/autotests/run_exec_autotests.bash deleted file mode 100755 index c531f62f9a..0000000000 --- a/cmake_targets/autotests/run_exec_autotests.bash +++ /dev/null @@ -1,304 +0,0 @@ -#!/bin/bash -#set -xv -#/* -# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more -# * contributor license agreements. See the NOTICE file distributed with -# * this work for additional information regarding copyright ownership. -# * The OpenAirInterface Software Alliance licenses this file to You under -# * the OAI Public License, Version 1.1 (the "License"); you may not use this file -# * except in compliance with the License. -# * You may obtain a copy of the License at -# * -# * http://www.openairinterface.org/?page_id=698 -# * -# * Unless required by applicable law or agreed to in writing, software -# * distributed under the License is distributed on an "AS IS" BASIS, -# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# * See the License for the specific language governing permissions and -# * limitations under the License. -# *------------------------------------------------------------------------------- -# * For more information about the OpenAirInterface (OAI) Software Alliance: -# * contact@openairinterface.org -# */ - -if [ -s $OPENAIR_DIR/cmake_targets/tools/build_helper ] ; then - source $OPENAIR_DIR/cmake_targets/tools/build_helper -else - echo "Error: no file in the file tree: is OPENAIR_DIR variable set?" - exit 1 -fi - -source $OPENAIR_DIR/cmake_targets/tools/test_helper - -tdir=$OPENAIR_DIR/cmake_targets/autotests -rm -fr $tdir/bin -mkdir -p $tdir/bin -results_file="$tdir/log/results_autotests.xml" - - -#\param $1 -> name of test case -#\param $2 -> name of executable -#\param $3 -> arguments for running the program -#\param $4 -> search expression -#\param $5 -> search expression which should NOT be found (for ex. segmentation fault) -#\param $6 -> number of runs -#\param $7 -> tags to help identify the test case for readability in output xml file -#\param $8 => test config file params to be modified -#\param $9 -> desc to help identify the test case for readability in output xml file - -function test_run() { - xUnit_start - test_case_name=$1 - log_dir=$tdir/log/$test_case_name - log_file=$log_dir/test.$1.log.txt - main_exec=$2 - exec_args=$3 - search_expr_array=("${!4}") - search_expr_negative=$5 - nruns=${6} - tags=${7} - test_config_file=${8} - desc=${9} - - xmlfile_testcase=$log_dir/test.$1.xml - #Temporary log file where execution log is stored. - temp_exec_log=$log_dir/temp_log.txt - export OPENAIR_LOGDIR=$log_dir - rm -fr $log_dir - mkdir -p $log_dir - - echo "" > $temp_exec_log - echo "start at $(date)" > "$log_file" - #echo "log_dir = $log_dir" - #echo "log_file = $log_file" - #echo "exec_file = $exec_file" - #echo "exec_args = $exec_args" - #echo "search_expr = $search_expr" - #echo "nruns = $nruns" - #echo "desc = $desc" - - tags_array=() - read -a tags_array <<<"$tags" - desc_array=() - readarray -t desc_array <<<"$desc" - - main_exec_args_array=() - readarray -t main_exec_args_array <<< "$exec_args" - - if [ ! -f $main_exec ]; then - echo_fatal "no executable $main_exec found" - fi - - tags_array_index=0 - for main_exec_args_array_index in "${main_exec_args_array[@]}" - do - global_result=PASS - result_string="" - PROPER_DESC=`echo ${desc_array[$tags_array_index]} | sed -e "s@^.*Test cases.*(Test@Test@" -e "s@^ *(@@" -e"s/)$//" -e "s/),$//"` - echo_info "$PROPER_DESC" - - for (( run_index=1; run_index <= $nruns; run_index++ )) - do - temp_exec_log="$log_dir/test.$test_case_name.${tags_array[$tags_array_index]}.run_$run_index" - echo "Executing test case $test_case_name.${tags_array[$tags_array_index]}, Run Index = $run_index, Execution Log file = $temp_exec_log" - - echo "-----------------------------------------------------------------------------" > "$temp_exec_log" - echo "" >> "$temp_exec_log" - echo "Executing $main_exec $main_exec_args_array_index at $(date)" >> "$temp_exec_log" - uname -a >> "$temp_exec_log" - time "$main_exec" $main_exec_args_array_index >> "$temp_exec_log" 2>&1 & - done - - wait - - for (( run_index=1; run_index <= $nruns; run_index++ )) - do - temp_exec_log="$log_dir/test.$test_case_name.${tags_array[$tags_array_index]}.run_$run_index" - echo "" >> $temp_exec_log 2>&1 - cat "$temp_exec_log" >> "$log_file" 2>&1 - - result=PASS - for search_expr in "${search_expr_array[@]}" - do - grep -Eq "$search_expr" $temp_exec_log || result=FAIL - done - - #If we find a negative search result then there is crash of program and test case is failed even if above condition is true - grep -q -iE "$search_expr_negative" $temp_exec_log && result=FAIL - - if [ "$result" != PASS ]; then - echo_error "$test_case_name.${tags_array[$tags_array_index]} RUN = $run_index Result = FAIL" - else - echo_success "$test_case_name.${tags_array[$tags_array_index]} RUN = $run_index Result = PASS" - fi - - result_string=$result_string" Run_$run_index =$result" - if [ $result != PASS ] ; then - global_result=FAIL - fi - - done #End of for loop (nindex) - - echo "END at $(date)" >> "$log_file" - - if [ "$global_result" != PASS ]; then - echo_error "execution $test_case_name.${tags_array[$tags_array_index]} {$PROPER_DESC} Run_Result = \"$result_string\" Result = FAIL" - xUnit_fail "execution" "$test_case_name.${tags_array[$tags_array_index]}" "FAIL" "$result_string" "$xmlfile_testcase" "$PROPER_DESC" - else - echo_success "execution $test_case_name.${tags_array[$tags_array_index]} {$PROPER_DESC} Run_Result = \"$result_string\" Result = PASS " - xUnit_success "execution" "$test_case_name.${tags_array[$tags_array_index]}" "PASS" "$result_string" "$xmlfile_testcase" "$PROPER_DESC" - fi - - let "tags_array_index++" - done -} - -dlog=$OPENAIR_DIR/cmake_targets/autotests/log -exec_dir=$OPENAIR_DIR/cmake_targets/ran_build/build -xml_conf="$OPENAIR_DIR/cmake_targets/autotests/test_case_list.xml" - -function print_help() { - echo_info ' -This program runs automated test cases -Options --c | --config - Set the configuration file to execute (default: $xml_conf) --d | --exec-dir - Set directory of executables (default: $exec_dir) --g | --run-group - Run test cases in a group. For example, ./run_exec_autotests "0101* 010102" --h | --help - This help -' -} - -function main () { -RUN_GROUP=0 -test_case_group="" -test_case_group_array=() -test_case_array=() - -until [ -z "$1" ]; do - case "$1" in - -c|--config) - xml_conf=$2 - echo "setting xml_conf to $xml_conf" - shift 2;; - -d|--exec-dir) - exec_dir=$2 - echo "setting exec_dir to $exec_dir" - shift 2;; - -g | --run-group) - RUN_GROUP=1 - test_case_group=$2 - test_case_group=`sed "s/\+/\*/g" <<< "${test_case_group}"` # Replace + with * for bash string substituion - echo_info "Will execute test cases only in group $test_case_group" - shift 2;; - -h | --help) - print_help - exit 1;; - *) - print_help - echo_fatal "Unknown option $1" - break;; - esac -done - -test_case_excl_list=`xmlstarlet sel -t -v "/testCaseList/TestCaseExclusionList" $xml_conf` -test_case_excl_list=`sed "s/\+/\*/g" <<< "$test_case_excl_list" ` # Replace + with * for bash string substituion -echo "Test Case Exclusion List = $test_case_excl_list " -read -a test_case_excl_array <<< "$test_case_excl_list" - -test_case_list=`xmlstarlet sel -T -t -m /testCaseList/testCase -s A:N:- "@id" -v "@id" -n $xml_conf` -echo "test_case_list = $test_case_list" -readarray -t test_case_array <<<"$test_case_list" - -read -a test_case_group_array <<< "$test_case_group" -for search_expr in "${test_case_array[@]}" - do - flag_run_test_case=0 - # search if this test case needs to be executed - if [ "$RUN_GROUP" -eq "1" ]; then - for search_group in "${test_case_group_array[@]}" - do - if [[ $search_expr == $search_group ]];then - flag_run_test_case=1 - echo_info "Test case $search_expr match found in group" - break - fi - done - else - flag_run_test_case=1 - fi - - for search_excl in "${test_case_excl_array[@]}" - do - if [[ $search_expr == $search_excl ]];then - flag_run_test_case=0 - echo_info "Test case $search_expr match found in test case excl group. Will skip the test case for execution..." - break - fi - done - - - #We skip this test case if it is not in the group list - if [ "$flag_run_test_case" -ne "1" ]; then - continue - fi - - name=$search_expr - desc=`xmlstarlet sel -t -v "/testCaseList/testCase[@id='$search_expr']/desc" $xml_conf` - main_exec=$exec_dir/`xmlstarlet sel -t -v "/testCaseList/testCase[@id='$search_expr']/main_exec" $xml_conf` - main_exec_args=`xmlstarlet sel -t -v "/testCaseList/testCase[@id='$search_expr']/main_exec_args" $xml_conf` - search_expr_true=`xmlstarlet sel -t -v "/testCaseList/testCase[@id='$search_expr']/search_expr_true" $xml_conf` - search_expr_false=`xmlstarlet sel -t -v "/testCaseList/testCase[@id='$search_expr']/search_expr_false" $xml_conf` - nruns=`xmlstarlet sel -t -v "/testCaseList/testCase[@id='$search_expr']/nruns" $xml_conf` - tags=`xmlstarlet sel -t -v "/testCaseList/testCase[@id='$search_expr']/tags" $xml_conf` - - echo "name = $name" - echo "Description = $desc" - echo "main_exec = $main_exec" - echo "main_exec_args = $main_exec_args" - echo "search_expr_true = $search_expr_true" - echo "search_expr_false = $search_expr_false" - echo "tags = $tags" - echo "nruns = $nruns" - - - search_array_true=() - - IFS=\" #set the shell field separator - set -f #dont try to glob - #set -- $search_expr_true #split on $IFS - for i in $search_expr_true - do echo "i = $i" - if [ -n "$i" ] && [ "$i" != " " ]; then - search_array_true+=("$i") - #echo "inside i = \"$i\" " - fi - done - unset IFS - - #echo "arg1 = ${search_array_true[0]}" - #echo " arg2 = ${search_array_true[1]}" - - test_run \ - "$name" \ - "$main_exec" \ - "$main_exec_args" \ - "search_array_true[@]" \ - "$search_expr_false" \ - "$nruns" \ - "$tags" \ - "$test_config_file" \ - "$desc" - - done -} - -uname -a - -main "$@" - -xUnit_write "$results_file" -echo "Test Results are written to $results_file" diff --git a/cmake_targets/autotests/test_case_list.xml b/cmake_targets/autotests/test_case_list.xml deleted file mode 100755 index 6d9d64bce2..0000000000 --- a/cmake_targets/autotests/test_case_list.xml +++ /dev/null @@ -1,584 +0,0 @@ - - - - - dlsim Test cases. (Test 1: 10 MHz, R2.FDD (MCS 5), EVA5, -1dB), - (Test 5: 1.4 MHz, R4.FDD (MCS 4), EVA5, 0dB (70%)), - (Test 6: 10 MHz, R3.FDD (MCS 15), EVA5, 6.7dB (70%)), - (Test 6b: 5 MHz, R3-1.FDD (MCS 15), EVA5, 6.7dB (70%)), - (Test 7: 10 MHz, R3-1.FDD (MCS 15), EVA5, 6.7dB (30%)), - (Test 7b: 5 MHz, R3-1.FDD (MCS 15), ETU70, 1.4 dB (30%)), - (Test 10: 5 MHz, R6.FDD (MCS 25), EVA5, 17.4 dB (70%)), - (Test 10b: 5 MHz, R6-1.FDD (MCS 24,18 PRB), EVA5, 17.5dB (70%)), - (Test 11: 10 MHz, R7.FDD (MCS 25), EVA5, 17.7dB (70%)) - dlsim - -m=5 -g=F -s=-1 -w=1.0 -f=.2 -n=500 -B=50 -c=2 -z=2 -Tperf=60 - -m=4 -g=F -s=0 -w=1.0 -f=.2 -n=500 -B=6 -c=4 -z=2 -Tperf=60 - -m=15 -g=F -s=6.7 -w=1.0 -f=.2 -n=500 -B=50 -c=2 -z=2 -Tperf=60 - -m=15 -g=F -s=6.7 -w=1.0 -f=.2 -n=500 -B=25 -c=2 -z=2 -Tperf=60 - -m=15 -g=G -s=1.4 -w=1.0 -f=.2 -n=500 -B=50 -c=2 -z=2 -Tperf=25 - -m=15 -g=G -s=1.4 -w=1.0 -f=.2 -n=500 -B=25 -c=2 -z=2 -Tperf=25 - -m=25 -g=F -s=17.4 -w=1.0 -f=.2 -n=500 -B=25 -c=3 -z=2 -Tperf=60 - -m=25 -g=F -s=17.5 -w=1.0 -f=.2 -n=500 -B=25 -c=3 -z=2 -r=1022 -Tperf=60 - -m=26 -g=F -s=17.7 -w=1.0 -f=.2 -n=500 -B=50 -c=2 -z=2 -Tperf=60 - test1 test5 test6 test6b test7 test7b test10 test10b test11 - "passed" - segmentation fault|assertion|exiting|fatal - 3 - - - - dlsim Test cases. (Test 15: 20 MHz, R.9 FDD (MCS 26), EVA5, 17.6dB (70%)), - (Test 15b: 20 MHz, R.9-2 FDD (MCS 26, 17PRB), EVA5, 17.3dB (70%)), - (Test 15c: 20 MHz, R.9-1 FDD (MCS 26, 83 PRB), EVA5, 16.6dB (70%)), - (TM2 Test 1: 10 MHz, R.11 FDD (MCS 14), EVA5, 6.8 dB (70%)), - (TM2 Test 1b: 5 MHz, R.11-2 FDD (MCS 13), EVA5, 5.9 dB (70%)) - dlsim - -m=26 -g=F -s=17.6 -w=1.0 -f=.2 -n=500 -B=100 -c=2 -z=2 -Tperf=60 - -m=26 -g=F -s=17.3 -w=1.0 -f=.2 -n=500 -B=100 -c=2 -z=2 -r=1600 -Tperf=60 - -m=26 -g=F -s=16.6 -w=1.0 -f=.2 -n=500 -B=100 -c=2 -z=2 -r=1899 -Tperf=60 - -m=14 -g=F -s=6.8 -w=1.0 -f=.2 -n=500 -B=50 -c=2 -x=2 -y=2 -z=2 -Tperf=60 - -m=13 -g=F -s=5.9 -w=1.0 -f=.2 -n=500 -B=25 -c=3 -x=2 -y=2 -z=2 -Tperf=60 - test15 test15b test15c TM2_test1 TM2_test1b - "passed" - segmentation fault|assertion|exiting|fatal - 3 - - - - ulsim Test cases. (Test 1: 5 MHz, FDD (MCS 5), AWGN, 6dB), - (Test 2: 5 MHz, FDD (MCS 16), AWGN , 12dB (70%)), - (Test 3: 10 MHz, R3.FDD (MCS 5), AWGN, 6dB (70%)), - (Test 4: 10 MHz, R3-1.FDD (MCS 16), AWGN, 12dB (70%)), - (Test 5: 20 MHz, FDD (MCS 5), AWGN, 6dB (70%)), - (Test 6: 20 MHz, FDD (MCS 16), AWGN, 12 dB (70%)) - ulsim - -BnbRBs=25 -mcs=5 -yN_rx=1 -gchannel=N -xTransmission=1 -snr=6 -wsnrInterrupt=1.0 -e_snr_step=.1 -P -nb_frame=500 -Tperf=70 - -BnbRBs=25 -mcs=16 -yN_rx=1 -gchannel=N -xTransmission=1 -snr=12 -wsnrInterrupt=1.0 -e_snr_step=.1 -P -nb_frame=500 -Tperf=70 - -BnbRBs=50 -mcs=5 -yN_rx=1 -gchannel=N -xTransmission=1 -snr=6 -wsnrInterrupt=1.0 -e_snr_step=.1 -P -nb_frame=500 -Tperf=70 - -BnbRBs=50 -mcs=16 -yN_rx=1 -gchannel=N -xTransmission=1 -snr=12 -wsnrInterrupt=1.0 -e_snr_step=.1 -P -nb_frame=500 -Tperf=70 - -BnbRBs=100 -mcs=5 -yN_rx=1 -gchannel=N -xTransmission=1 -snr=6 -wsnrInterrupt=1.0 -e_snr_step=.1 -P -nb_frame=500 -Tperf=70 - -BnbRBs=100 -mcs=16 -yN_rx=1 -gchannel=N -xTransmission=1 -snr=12 -wsnrInterrupt=1.0 -e_snr_step=.1 -P -nb_frame=500 -Tperf=70 - test1 test2 test3 test4 test5 test6 - "passed" - segmentation fault|assertion|exiting|fatal - 3 - - - - ldpc Test cases. (Test1: block length = 3872, BG1), - (Test2: block length = 4224, BG1), - (Test3: block length = 4576, BG1), - (Test4: block length = 4928, BG1), - (Test5: block length = 5280, BG1), - (Test6: block length = 5632, BG1), - (Test7: block length = 6336, BG1), - (Test8: block length = 7040, BG1), - (Test9: block length = 7744, BG1), - (Test10: block length = 8448, BG1), - (Test11: block length = 1, BG2), - (Test12: block length = 100, BG2), - (Test13: block length = 193, BG2), - (Test14: block length = 500, BG2), - (Test15: block length = 561, BG2), - (Test16: block length = 600, BG2), - (Test17: block length = 641, BG2), - (Test18: block length = 2000, BG2), - (Test19: block length = 3000, BG2), - (Test20: block length = 3840, BG2) - ldpctest - -l3872 -s10 -n100 - -l4224 -s10 -n100 - -l4576 -s10 -n100 - -l4928 -s10 -n100 - -l5280 -s10 -n100 - -l5632 -s10 -n100 - -l6336 -s10 -n100 - -l7040 -s10 -n100 - -l7744 -s10 -n100 - -l8448 -s10 -n100 - -l1 -s10 -n100 - -l100 -s10 -n100 - -l193 -s10 -n100 - -l500 -s10 -n100 - -l561 -s10 -n100 - -l600 -s10 -n100 - -l641 -s10 -n100 - -l2000 -s10 -n100 - -l3000 -s10 -n100 - -l3840 -s10 -n100 - test1 test2 test3 test4 test5 test6 test7 test8 test9 test10 test11 test12 test13 test14 test15 test16 test17 test18 test19 test20 - BLER 0.000000 - segmentation fault|assertion|exiting|fatal|differ - 3 - - - - polartest Test cases. (Test1: PBCH polar test), - (Test2: DCI polar test), - (Test3: UCI polar test,6-bit CRC), - (Test4: UCI polar test,11-bit CRC) - polartest - -q -s-10 -f0 - -q -s-10 -f0 -m1 - -q -s-2 -f2 -m2 -k12 - -q -s-2 -f2 -m2 -k20 - test1 test2 test3 test4 - BLER= 0.000000 - segmentation fault|assertion|exiting|fatal - 3 - - - - nr_pbchsim Test cases. (Test1: PBCH-only, 106 PRB, NID 2), - (Test2: PBCH and synchronization, 106PBR), - (Test3: PBCH and synchronization, 106PBR, SSB SC OFFSET 6) - nr_pbchsim - -s-11 -S-8 -n10 -R106 -N2 - -s-11 -S-8 -n10 -o8000 -I -R106 - -s-11 -S-8 -n10 -R106 -c6 - test1 test2 test3 - PBCH test OK - segmentation fault|assertion|exiting|fatal - 3 - - - - nr_pbchsim Test cases. (Test1: PBCH-only, 217 PRB), - (Test2: PBCH and synchronization, 217 RPB) - nr_pbchsim - -s-10 -S-8 -n10 -R217 - -s-10 -S-8 -n10 -o8000 -I -R217 - test1 test2 - PBCH test OK - segmentation fault|assertion|exiting|fatal - 3 - - - - nr_pbchsim Test cases. (Test1: PBCH-only, 273 PRB), - (Test2: PBCH and synchronization, 273 PRB) - nr_pbchsim - -s-10 -S-8 -n10 -R273 - -s-10 -S-8 -n10 -o8000 -I -R273 - test1 test2 - PBCH test OK - segmentation fault|assertion|exiting|fatal - 3 - - - - nr_pbchsim Test cases. (Test1: PBCH-only, 15Khz, 5Mhz), - (Test2: PBCH-only, 120Khz, 50Mhz) - nr_pbchsim - -s-10 -S-8 -n10 -m0 -R25 - -s-10 -S-8 -n10 -m3 -R32 - test1 test2 - PBCH test OK - segmentation fault|assertion|exiting|fatal - 3 - - - - nr_dlsim Test cases. (Test1: 106 PRB), - (Test2: 217 PRB), - (Test3: 273 PRB), - (Test4: HARQ test 25% TP 4 rounds), - (Test5: HARQ test 33% TP 3 rounds), - (Test6: HARQ test 50% TP 2 rounds), - (Test7: 25 PRBs, 15 kHz SCS), - (Test8: 32 PRBs, 120 kHz SCS) - nr_dlsim - -n100 -R106 -b106 -s5 - -n100 -R217 -b217 -s5 - -n100 -R273 -b273 -s5 - -n100 -s1 -S2 -t25 - -n100 -s1 -S2 -t33 - -n100 -s5 -S7 -t50 - -n100 -m0 -e0 -R25 -b25 -i 2 1 0 - -n100 -s5 -m3 -R32 -b32 - test1 test2 test3 test4 test5 test6 test7 test8 - PDSCH test OK - segmentation fault|assertion|exiting|fatal - 3 - - - - nr_dlsim Test cases. (Test1: 106 PRB 25 PDSCH-Offset), - (Test2: 106 PRB 51 PDSCH-Offset), - (Test3: 217 PRB 100 PDSCH-PRBs), - (Test4: 217 PRB 80 PDSCH-Offset), - (Test5: 217 PRB 100 PDSCH-PRBs 110 PDSCH-Offset) - nr_dlsim - -n100 -R106 -a25 -s5 - -n100 -R106 -a51 -s5 - -n100 -R217 -b100 -s5 - -n100 -R217 -a80 -s5 - -n100 -R217 -a110 -s5 -b100 - test1 test2 test3 test4 test5 - PDSCH test OK - segmentation fault|assertion|exiting|fatal - 3 - - - - nr_dlsim Test cases. (Test1: 106 PRBs 50 PDSCH-PRBs MCS Index 27), - (Test2: 106 PRBs 50 PDSCH-PRBs MCS Index 16), - (Test3: 106 MCS-TABLE 256 QAM MCS Index 26), - (Test4: MCS 0, low SNR performance), - (Test5: 4x4 MIMO, 1 Layer), - (Test6: 4x4 MIMO, 2 Layers), - (Test7: 4x4 MIMO, 4 Layers) - nr_dlsim - -n100 -e27 -s30 - -n100 -e16 -s11 -S13 - -n100 -q1 -e26 -s30 - -n100 -e0 -t95 -S-1.0 -i 2 1 0 - -n10 -s20 -U 3 0 0 2 -gA -x1 -y4 -z4 - -n10 -s20 -U 3 0 0 2 -gA -x2 -y4 -z4 - -n10 -s20 -U 3 0 0 2 -x4 -y4 -z4 - test1 test2 test3 test4 test5 test6 test7 - PDSCH test OK - segmentation fault|assertion|exiting|fatal - 3 - - - - nr_dlsim Test cases. (Test1: 3 PTRS, 8 Interpolated Symbols), - (Test2: 6 PTRS, 5 Interpolated Symbols), - (Test3: 11 PTRS, 0 Interpolated Symbols), - (Test4: Mapping type A, 2 DMRS Symbols), - (Test5: Mapping type A, 3 DMRS Symbols), - (Test6: Mapping type B, 4 DMRS Symbols) - nr_dlsim - -n100 -s5 -T 2 2 2 - -n100 -s5 -T 2 1 2 - -n100 -s5 -T 2 0 4 - -n100 -s5 -S7 -U 2 0 1 - -n100 -s5 -S7 -U 2 0 2 - -n100 -s5 -S7 -U 2 1 3 - test1 test2 test3 test4 test5 test6 - PDSCH test OK - segmentation fault|assertion|exiting|fatal - 3 - - - - nr_dlschsim Test cases. (Test1: 106 PRB), - (Test2: 217 PRB), - (Test3: 273 PRB) - nr_dlschsim - -R 106 -m9 -s13 -n100 - -R 217 -m15 -s15 -n100 - -R 273 -m19 -s20 -n100 - test1 test2 test3 - PDSCH test OK - segmentation fault|assertion|exiting|fatal - 3 - - - - shortblocktest Test cases. (Test1: 3 bits), - (Test2: 6 bits), - (Test3: 7 bits), - (Test4: 11 bits) - smallblocktest - -l 3 -s -4 -d 1 -i 10000 - -l 6 -s -4 -d 1 -i 10000 - -l 7 -s -4 -d 1 -i 10000 - -l 11 -s -4 -d 1 -i 10000 - test1 test2 test3 test4 - BLER= 0.000000 - segmentation fault|assertion|exiting|fatal - 3 - - - - - nr_ulschsim Test cases. (Test1: 106 PRBs), - (Test2: 217 PRBs), - (Test3: 273 PRBs) - (Test4: 106 PRBs 4-layer MIMO) - nr_ulschsim - -R 106 -m9 -s13 -n100 - -R 217 -m15 -s15 -n100 - -R 273 -m19 -s20 -n100 - -R 106 -m9 -s13 -n100 -y4 -z4 -W4 - test1 test2 test3 test4 - PUSCH test OK - segmentation fault|assertion|exiting|fatal - 3 - - - - nr_pucchsim Test cases. (Test1: Format 0 1-bit ACK miss 106 PRB), - (Test2: Format 0 2-bit ACK miss 106 PRB), - (Test3: Format 0 2-bit ACK miss, 1-bit SR 106 PRB), - (Test4: Format 2 3-bit 2/106 PRB), - (Test5: Format 2 4-bit 2/106 PRB), - (Test6: Format 2 5-bit 2/106 PRB), - (Test7: Format 2 6-bit 2/106 PRB), - (Test8: Format 2 7-bit 2/106 PRB), - (Test9: Format 2 8-bit 2/106 PRB), - (Test10: Format 2 9-bit 2/106 PRB), - (Test11: Format 2 10-bit 2/106 PRB), - (Test12: Format 2 11-bit 2/106 PRB), - (Test13: Format 2 12-bit 4/106 PRB), - (Test14: Format 2 19-bit 4/106 PRB), - (Test15: Format 2 12-bit 8/106 PRB), - (Test16: Format 2 19-bit 8/106 PRB), - (Test17: Format 2 32-bit 8/106 PRB), - (Test18: Format 2 32-bit 16/106 PRB), - (Test19: Format 2 64-bit 16/106 PRB), - (Test20: Format 0 1-bit Ack miss 273 PRB), - (Test21: Format 0 2-bit Ack miss 273 PRB), - (Test22: Format 0 2-bit Ack miss+SR 273 PRB), - (Test23: Format 2 4-bit 2/273 PRB), - (Test24: Format 2 7-bit 2/273 PRB), - (Test25: Format 2 11-bit 2/273 PRB), - (Test26: Format 2 12-bit 8/273 PRB), - (Test27: Format 2 19-bit 8/273 PRB), - (Test28: Format 2 64-bit 16/273 PRB), - (Test29: Format 2 64-bit 16/273 PRB Delay 2us) - nr_pucchsim - -R 106 -i 1 -P 0 -b 1 -s-2 -n1000 - -R 106 -i 1 -P 0 -b 2 -s-2 -n1000 - -R 106 -i 1 -P 0 -b 2 -s-2 -c -n1000 - -R 106 -i 1 -P 2 -b 3 -s0 -n1000 - -R 106 -i 1 -P 2 -b 4 -s0 -n1000 - -R 106 -i 1 -P 2 -b 5 -s1 -n1000 - -R 106 -i 1 -P 2 -b 6 -s2 -n1000 - -R 106 -i 1 -P 2 -b 7 -s3 -n1000 - -R 106 -i 1 -P 2 -b 8 -s4 -n1000 - -R 106 -i 1 -P 2 -b 9 -s5 -n1000 - -R 106 -i 1 -P 2 -b 10 -s6 -n1000 - -R 106 -i 1 -P 2 -b 11 -s6 -n1000 - -R 106 -i 1 -P 2 -q4 -b 12 -s-3 -n1000 - -R 106 -i 1 -P 2 -q4 -b 19 -s-3 -n1000 - -R 106 -i 1 -P 2 -q8 -b 12 -s-3 -n1000 - -R 106 -i 1 -P 2 -q8 -b 19 -s-3 -n1000 - -R 106 -i 1 -P 2 -q8 -b 32 -s-3 -n1000 - -R 106 -i 1 -P 2 -q16 -b 32 -s-3 -n1000 - -R 106 -i 1 -P 2 -q16 -b 64 -s-3 -n1000 - -R 273 -z8 -i 1 -P 0 -b 1 -s-2 -n1000 - -R 273 -z8 -i 1 -P 0 -b 2 -s-2 -n1000 - -R 273 -z8 -i 1 -P 0 -b 2 -s-2 -c -n1000 - -R 273 -z8 -i 1 -P 2 -b 4 -s-10 -n1000 - -R 273 -z8 -i 1 -P 2 -b 7 -s3 -n1000 - -R 273 -z8 -i 1 -P 2 -b 11 -s6 -n1000 - -R 273 -z8 -i 1 -P 2 -q8 -b 12 -s-3 -n1000 - -R 273 -z8 -i 1 -P 2 -q8 -b 19 -s-3 -n1000 - -R 273 -z8 -i 1 -P 2 -q16 -b 64 -s-3 -n1000 - -R 273 -z8 -i 1 -P 2 -q16 -b 64 -s-3 -d 2 -n1000 - test1 test2 test3 test4 test5 test6 test7 test8 test9 test10 test11 test12 test13 test14 test15 test16 test17 test18 test19 test20 test21 test22 test23 test24 test25 test26 test27 test28 test29 - PUCCH test OK - segmentation fault|assertion|exiting|fatal - 3 - - - - - dlsim_tm4 test cases (Test 1: 10 MHz, R2.FDD (MCS 5), EVA5, -1dB), - (Test 5: 1.4 MHz, R4.FDD (MCS 4), EVA5, 0dB (70%)), - (Test 6, 10 MHz, R3.FDD (MCS 15), EVA5, 6.7dB (70%)), - (Test 6b, 5 MHz, R3-1.FDD (MCS 15), EVA5, 6.7dB (70%)), - (Test 7, 5 MHz, R3-1.FDD (MCS 15), EVA5, 6.7dB (30%)), - (Test 7b, 5 MHz, R3-1.FDD (MCS 15), ETU70, 1.4 dB (30%)), - (Test 10, 5 MHz, R6.FDD (MCS 25), EVA5, 17.4 dB (70%)), - (Test 10b, 5 MHz, R6-1.FDD (MCS 24,18 PRB), EVA5, 17.5dB (70%)), - (Test 11, 10 MHz, R7.FDD (MCS 25), EVA5, 17.7dB (70%)) - (TM2 Test 1 10 MHz, R.11 FDD (MCS 14), EVA5, 6.8 dB (70%)), - (TM2 Test 1b 20 MHz, R.11-2 FDD (MCS 13), EVA5, 5.9 dB (70%)), - - $OPENAIR_DIR/cmake_targets/lte-simulators/build/dlsim_tm4 - -m5 -gF -s-1 -w1.0 -f.2 -n500 -B50 -c2 -z2 -O70 - -m4 -gF -s0 -w1.0 -f.2 -n500 -B6 -c4 -z2 -O70 - -m15 -gF -s6.7 -w1.0 -f.2 -n500 -B50 -c2 -z2 -O70 - -m14 -gF -s6.7 -w1.0 -f.2 -n500 -B25 -c3 -z2 -O70 - -m15 -gG -s6.7 -w1.0 -f.2 -n500 -B50 -c2 -z2 -O30 - -m14 -gG -s1.4 -w1.0 -f.2 -n500 -B25 -c3 -z2 -O30 - -m25 -gF -s17.4 -w1.0 -f.2 -n500 -B25 -c3 -z2 -O70 - -m25 -gF -s17.5 -w1.0 -f.2 -n500 -B25 -c3 -z2 -r1022 -O70 - -m26 -gF -s17.7 -w1.0 -f.2 -n500 -B50 -c2 -z2 -O70 - -m14 -gF -s6.8 -w1.0 -f.2 -n500 -B50 -c2 -x2 -y2 -z2 -O70 - -m13 -gF -s5.9 -w1.0 -f.2 -n500 -B25 -c3 -x2 -y2 -z2 -O70 - test1 test5 test6 test6b test7 test7b test10 test10b test11 TM2_test1 TM2_test1b - "passed" - segmentation fault|assertion|exiting|fatal - 3 - - - - nr_ulsim Test cases. (Test1: MCS 9 106 PRBs), - (Test2: MCS 16 50 PRBs), - (Test3: MCS 28 50 PRBs), - (Test4: MCS 27 50 PRBs 256QAM), - (Test5: MCS 9 217 PRBs), - (Test6: MCS 9 273 PRBs), - (Test7: PUSCH Type A, 2 DMRS Symbols), - (Test8: PUSCH Type A, 3 DMRS, 4 PTRS, 5 Interpolated Symbols), - (Test9: PUSCH Type B, 3 DMRS, 2 PTRS, 7 Interpolated Symbols), - (Test10: PUSCH Type B, 3 DMRS, 2 PTRS, 3 Interpolated Symbols), - (Test11: 25 PRBs, 15 kHz SCS), - (Test12: 32 PRBs, 120 kHz SCS), - (Test13: MCS 0, low SNR performance) - (Test14: MCS 28, 106 PRBs, Time shift 8) - (Test15: SRS, SNR 40 dB) - nr_ulsim - -n100 -m9 -r106 -s5 - -n100 -m16 -s10 - -n100 -m28 -s20 - -n100 -m27 -s25 -q1 - -n100 -m9 -R217 -r217 -s5 - -n100 -m9 -R273 -r273 -s5 - -n100 -s5 -U 0,1,1,1 - -n100 -s5 -T 1,2 -U 0,2,1,1 - -n100 -s5 -T 2,2 -U 1,2,1,1 - -n100 -s5 -a4 -b8 -T 1,2 -U 1,3,1,1 - -n100 -u0 -m0 -R25 -r25 -i 1,0 - -n100 -s5 -r32 -R32 -u3 - -n100 -m0 -S -0.6 -i 1,0 - -n100 -m 28 -R106 -r106 -t90 -s24 -S24 -d 8 - -n100 -s40 -E 1 - test1 test2 test3 test4 test5 test6 test7 test8 test9 test10 test11 test12 test13 test14 test15 - PUSCH test OK - segmentation fault|assertion|exiting|fatal - 3 - - - - nr_ulsim Test cases. (Test1: SC-FDMA, 50 PRBs), - (Test2: SC-FDMA, 75 PRBs), - (Test3: SC-FDMA, 216 PRBs), - (Test4: SC-FDMA, 273 PRBs), - (Test5: SC-FDMA, 3 DMRS) - nr_ulsim - -n100 -s5 -Z - -n100 -s5 -Z -r75 - -n50 -s5 -Z -r216 -R217 - -n50 -s5 -Z -r270 -R273 - -n100 -s5 -Z -U 0,2,1,2 - test1 test2 test3 test4 test5 - PUSCH test OK - segmentation fault|assertion|exiting|fatal - 3 - - - - nr_ulsim Test cases. (Test1: MCS 19 50 PRBs 2 RX_Antenna), - (Test2: MCS 9 106 PRBs MIMO 2 layers), - (Test3: MCS 10 106 PRBs MIMO 2 layers), - (Test4: MCS 19 106 PRBs MIMO 2 layers), - (Test5: MCS 9 106 PRBs MIMO 4 layers) - nr_ulsim - -n100 -m19 -s10 -S15 -z2 - -n100 -m9 -r106 -s8 -W2 -y2 -z2 - -n100 -m10 -r106 -s12 -W2 -y2 -z2 - -n100 -m19 -r106 -s22 -W2 -y2 -z2 - -n100 -m9 -r106 -s10 -W4 -y4 -z4 - test1 test2 test3 test4 test5 - PUSCH test OK - segmentation fault|assertion|exiting|fatal - 3 - - - - nr_ulsim Test cases. (Test1: 3GPP G-FR1-A5-13, PUSCH Type A, 40 MHz BW, 30 kHz SCS, 2 RX Antennas Requirements Test), - (Test2: 3GPP G-FR1-A5-13, PUSCH Type A, 40 MHz BW, 30 kHz SCS, 4 RX Antennas Requirements Test), - (Test3: 3GPP G-FR1-A5-13, PUSCH Type A, 40 MHz BW, 30 kHz SCS, 8 RX Antennas Requirements Test), - (Test4: 3GPP G-FR1-A5-8, PUSCH Type B, 5 MHz BW, 15 kHz SCS, 2 RX Antennas Requirements Test), - (Test5: 3GPP G-FR1-A5-8, PUSCH Type B, 5 MHz BW, 15 kHz SCS, 4 RX Antennas Requirements Test), - (Test6: 3GPP G-FR1-A5-8, PUSCH Type B, 5 MHz BW, 15 kHz SCS, 8 RX Antennas Requirements Test), - (Test7: 3GPP G-FR1-A5-9, PUSCH Type B, 10 MHz BW, 15 kHz SCS, 2 RX Antennas Requirements Test), - (Test8: 3GPP G-FR1-A5-9, PUSCH Type B, 10 MHz BW, 15 kHz SCS, 4 RX Antennas Requirements Test), - (Test9: 3GPP G-FR1-A5-9, PUSCH Type B, 10 MHz BW, 15 kHz SCS, 8 RX Antennas Requirements Test), - (Test10: 3GPP G-FR1-A5-10, PUSCH Type B, 20 MHz BW, 15 kHz SCS, 2 RX Antennas Requirements Test), - (Test11: 3GPP G-FR1-A5-10, PUSCH Type B, 20 MHz BW, 15 kHz SCS, 4 RX Antennas Requirements Test), - (Test12: 3GPP G-FR1-A5-10, PUSCH Type B, 20 MHz BW, 15 kHz SCS, 8 RX Antennas Requirements Test), - (Test13: 3GPP G-FR1-A5-11, PUSCH Type B, 10 MHz BW, 30 kHz SCS, 2 RX Antennas Requirements Test), - (Test14: 3GPP G-FR1-A5-11, PUSCH Type B, 10 MHz BW, 30 kHz SCS, 4 RX Antennas Requirements Test), - (Test15: 3GPP G-FR1-A5-11, PUSCH Type B, 10 MHz BW, 30 kHz SCS, 8 RX Antennas Requirements Test), - (Test16: 3GPP G-FR1-A5-12, PUSCH Type B, 20 MHz BW, 30 kHz SCS, 2 RX Antennas Requirements Test), - (Test17: 3GPP G-FR1-A5-12, PUSCH Type B, 20 MHz BW, 30 kHz SCS, 4 RX Antennas Requirements Test), - (Test18: 3GPP G-FR1-A5-12, PUSCH Type B, 20 MHz BW, 30 kHz SCS, 8 RX Antennas Requirements Test), - (Test19: 3GPP G-FR1-A5-13, PUSCH Type B, 40 MHz BW, 30 kHz SCS, 2 RX Antennas Requirements Test), - (Test20: 3GPP G-FR1-A5-13, PUSCH Type B, 40 MHz BW, 30 kHz SCS, 4 RX Antennas Requirements Test), - (Test21: 3GPP G-FR1-A5-13, PUSCH Type B, 40 MHz BW, 30 kHz SCS, 8 RX Antennas Requirements Test), - (Test22: 3GPP G-FR1-A5-14, PUSCH Type B, 100 MHz BW, 30 kHz SCS, 2 RX Antennas Requirements Test), - (Test23: 3GPP G-FR1-A5-14, PUSCH Type B, 100 MHz BW, 30 kHz SCS, 4 RX Antennas Requirements Test), - (Test24: 3GPP G-FR1-A5-14, PUSCH Type B, 100 MHz BW, 30 kHz SCS, 8 RX Antennas Requirements Test), - (Test25: 3GPP G-FR1-A3-27, PUSCH Type B, 40 MHz BW, 30 kHz SCS, 2 RX Antennas Requirements Test, 2 layers), - (Test26: 3GPP G-FR1-A3-27, PUSCH Type B, 40 MHz BW, 30 kHz SCS, 4 RX Antennas Requirements Test, 2 layers), - (Test27: 3GPP G-FR1-A4-27, PUSCH Type B, 40 MHz BW, 30 kHz SCS, 2 RX Antennas Requirements Test, 2 layers), - (Test28: 3GPP G-FR1-A4-27, PUSCH Type B, 40 MHz BW, 30 kHz SCS, 4 RX Antennas Requirements Test, 2 layers) - nr_ulsim - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R106 -r106 -U 0,1,1,2 -z2 -s12.4 -S12.4 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R106 -r106 -U 0,1,1,2 -z4 -s8.5 -S8.5 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R106 -r106 -U 0,1,1,2 -z8 -s5.4 -S5.4 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R25 -r25 -U 1,1,1,2 -z2 -s12.5 -S12.5 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R25 -r25 -U 1,1,1,2 -z4 -s8.9 -S8.9 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R25 -r25 -U 1,1,1,2 -z8 -s5.7 -S5.7 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R52 -r52 -U 1,1,1,2 -z2 -s12.6 -S12.6 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R52 -r52 -U 1,1,1,2 -z4 -s8.9 -S8.9 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R52 -r52 -U 1,1,1,2 -z8 -s5.8 -S5.8 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R106 -r106 -U 1,1,1,2 -z2 -s12.3 -S12.3 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R106 -r106 -U 1,1,1,2 -z4 -s8.8 -S8.8 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 0 -m20 -R106 -r106 -U 1,1,1,2 -z8 -s5.7 -S5.7 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R24 -r24 -U 1,1,1,2 -z2 -s12.5 -S12.5 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R24 -r24 -U 1,1,1,2 -z4 -s8.6 -S8.6 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R24 -r24 -U 1,1,1,2 -z8 -s5.6 -S5.6 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R51 -r51 -U 1,1,1,2 -z2 -s12.5 -S12.5 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R51 -r51 -U 1,1,1,2 -z4 -s8.6 -S8.6 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R51 -r51 -U 1,1,1,2 -z8 -s5.6 -S5.6 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R106 -r106 -U 1,1,1,2 -z2 -s12.5 -S12.5 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R106 -r106 -U 1,1,1,2 -z4 -s8.7 -S8.7 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R106 -r106 -U 1,1,1,2 -z8 -s5.5 -S5.5 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R273 -r273 -U 1,1,1,2 -z2 -s13.1 -S13.1 - -n100 -b14 -I7 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R273 -r273 -U 1,1,1,2 -z4 -s9.2 -S9.2 - -n100 -b14 -I8 -i 0,1 -g A,l,10 -t70 -u 1 -m20 -R273 -r273 -U 1,1,1,2 -z8 -s5.9 -S5.9 - -n100 -b14 -I15 -i 0,1 -g B,l -t70 -u 1 -m2 -R106 -r106 -U 1,1,1,2 -W2 -y2 -z2 -s1.7 -S1.7 - -n100 -b14 -I15 -i 0,1 -g B,l -t70 -u 1 -m2 -R106 -r106 -U 1,1,1,2 -W2 -y2 -z4 -s-2.1 -S-2.1 - -n100 -b14 -I15 -i 0,1 -g C,l -t70 -u 1 -m16 -R106 -r106 -U 1,1,1,2 -W2 -y2 -z2 -s18.7 -S18.7 - -n100 -b14 -I15 -i 0,1 -g C,l -t70 -u 1 -m16 -R106 -r106 -U 1,1,1,2 -W2 -y2 -z4 -s11.2 -S11.2 - test1 test2 test3 test4 test5 test6 test7 test8 test9 test10 test11 test12 test13 test14 test15 test16 test17 test18 test19 test20 test21 test22 test23 test24 test25 test26 test27 test28 - PUSCH test OK - segmentation fault|assertion|exiting|fatal - 3 - - - - nr_prachsim Test cases. (Test1: 30kHz SCS, 106 PRBs, Prach format A2), - (Test2: 30kHz SCS, 217 PRBs, Prach format A2), - (Test3: 30kHz SCS, 273 PRBs, Prach format A2), - (Test4: 30kHz SCS, 106 PRBs, Prach format 0), - (Test5: 120kHz SCS, 32 PRBs, Prach format A2), - (Test6: 120kHz SCS, 66 PRBs, Prach format A2), - (Test7: 120kHz SCS, 66 PRBs, High Speed Enabled), - (Test8: 15kHz SCS, 25 PRBs) - nr_prachsim - -a -s -30 -n 100 -p 63 -R 106 - -a -s -30 -n 100 -p 63 -R 217 - -a -s -30 -n 100 -p 63 -R 273 - -a -s -30 -n 100 -p 63 -R 106 -c 4 - -a -s -30 -n 100 -p 32 -R 32 -m 3 -c52 - -a -s -30 -n 100 -p 32 -R 66 -m 3 -c52 - -a -s -30 -n 100 -R 66 -m 3 -c52 -H - -a -s -30 -n 100 -p 99 -R 25 -m 0 - test1 test2 test3 test4 test5 test6 test7 test8 - PRACH test OK - segmentation fault|assertion|exiting|fatal - 3 - - - - NR-Sidelink PSBCH test cases. (Test1: SLSS Search), - (Test2: PSBCH TxRx) - nr_psbchsim - -I - -n 10 - test1 test2 - PSBCH test OK - segmentation fault|assertion|exiting|fatal - 3 - - diff --git a/cmake_targets/tools/build_helper b/cmake_targets/tools/build_helper index e6f7c0076a..264e26d890 100755 --- a/cmake_targets/tools/build_helper +++ b/cmake_targets/tools/build_helper @@ -550,7 +550,6 @@ check_install_additional_tools (){ libforms-bin \ libforms-dev \ libxft-dev \ - xmlstarlet \ libpcre3-dev \ libssh-dev \ libxml2-dev" @@ -563,7 +562,6 @@ check_install_additional_tools (){ libXft-devel \ xforms \ xforms-devel \ - xmlstarlet \ pcre-devel \ libssh-devel \ libxml2-devel" diff --git a/doc/physical-simulators.md b/doc/physical-simulators.md index f52b2e371d..f06c7a67d9 100644 --- a/doc/physical-simulators.md +++ b/doc/physical-simulators.md @@ -32,104 +32,5 @@ These are the simulators known to work properly and tested in CI: `nr_pbchsim`, `nr_prachsim`, `nr_pucchsim`, `polartest`, `smallblocktest`, `nr_psbchsim` (sidelink) -# How to run - -You first have to build simulators: - -```bash -cd openairinterface5g/ -. oaienv # important for the run_exec_autotests.bash script -cd cmake_targets/ -./build_oai --ninja -P -``` - -This builds the simulators in the default build directory `ran_build/build` -(all paths given here are relative to `cmake_targets/` in the root of -`openairinterface5g/`). To run all simulators in this default build directory -of above `build_oai` invocation, run the `run_exec_autotests.bash` script: -```bash -autotests/run_exec_autotests.bash -``` - -This runs all simulations as defined in `autotests/test_case_list.xml`. - -To run a group of tests, you can specify the group using `-g`. You can also -specify the build directory, after building the simulators, which, for the -default directory, is: - -```bash -autotests/run_exec_autotests.bash -g "nr_dlsim.basic" -d ran_build/build/ -``` - -This will run the `nr_dlsim.basic` group, as listed in -`autotests/test_case_list.xml`. - -## How to interpret the output - -From the output, you can see the invoked tests, its parameters, and the log files. -Example: - -``` -[user@oai cmake_targets]$ autotests/run_exec_autotests.bash -g "nr_dlsim.basic" -d ran_build/build/ -[...] -Test case nr_dlsim.basic match found in group -name = nr_dlsim.basic -Description = nr_dlsim Test cases. (Test1: 106 PRB), - (Test2: 217 PRB), - (Test3: 273 PRB), - (Test4: HARQ test 25% TP 4 rounds), - (Test5: HARQ test 33% TP 3 rounds), - (Test6: HARQ test 50% TP 2 rounds), - (Test7: 25 PRBs, 15 kHz SCS) -main_exec = ran_build/build//nr_dlsim -main_exec_args = -n100 -R106 -b106 -s5 - -n100 -R217 -b217 -s5 - -n100 -R273 -b273 -s5 - -n100 -s1 -S2 -t25 - -n100 -s1 -S2 -t33 - -n100 -s5 -S7 -t50 - -n100 -m0 -e0 -R25 -b25 -i 2 1 0 -search_expr_true = PDSCH test OK -search_expr_false = segmentation fault|assertion|exiting|fatal -tags = test1 test2 test3 test4 test5 test6 test7 -nruns = 3 -i = PDSCH test OK -Test1: 106 PRB -Executing test case nr_dlsim.basic.test1, Run Index = 1, Execution Log file = /home/oai/openairinterface5g/cmake_targets/autotests/log/nr_dlsim.basic/test.nr_dlsim.basic.test1.run_1 -Executing test case nr_dlsim.basic.test1, Run Index = 2, Execution Log file = /home/oai/openairinterface5g/cmake_targets/autotests/log/nr_dlsim.basic/test.nr_dlsim.basic.test1.run_2 -Executing test case nr_dlsim.basic.test1, Run Index = 3, Execution Log file = /home/oai/openairinterface5g/cmake_targets/autotests/log/nr_dlsim.basic/test.nr_dlsim.basic.test1.run_3 -[...] -nr_dlsim.basic.test1 RUN = 1 Result = PASS -nr_dlsim.basic.test1 RUN = 2 Result = PASS -nr_dlsim.basic.test1 RUN = 3 Result = PASS -execution nr_dlsim.basic.test1 {Test1: 106 PRB} Run_Result = " Run_1 =PASS Run_2 =PASS Run_3 =PASS" Result = PASS -``` - -You see: -- the `Description` of the test cases (here, 7 tests) -- the executable that is used, and the parameters (`main_exec` and - `main_exec_args`), for instance `-n100 -R106 -b106 -s5` for `Test1` -- what is the condition for a successful test -- where are the log files -- if the tests passed or not `PASS`, otherwise `FAIL` and a summary for the - three runs. - -## How to change the parameters - -You can modify the parameters in `autotests/test_case_list.xml`. To learn about -their meaning, run the simulator manually with flag `-h` ("help"). For -instance, for the above run, it would be - -```bash -ran_build/build/nr_dlsim -h -``` - -## How to change the code - -You can modify the source files to adapt to your needs. For instance, for -`nr_dlsim` above, refer to file `openair1/SIMULATION/NR_PHY/dlsim.c`. - -# CI - These tests are run in this pipeline: [RAN-PhySim-Cluster](https://jenkins-oai.eurecom.fr/job/RAN-PhySim-Cluster/). From 986db77b88c7d02c66419a4c84e2f38e161f7d36 Mon Sep 17 00:00:00 2001 From: Jaroslava Fiedlerova Date: Fri, 16 May 2025 14:18:18 +0200 Subject: [PATCH 08/15] CI: add helm charts for 4G and 5G OC deployments with ctest --- charts/physims-4g/Chart.yaml | 36 +++++++++++ .../physims-4g/charts/physims.4g/Chart.yaml | 35 +++++++++++ .../charts/physims.4g/templates/_helpers.tpl | 63 +++++++++++++++++++ .../charts/physims.4g/templates/job.yaml | 48 ++++++++++++++ .../physims-4g/charts/physims.4g/values.yaml | 48 ++++++++++++++ charts/physims-4g/templates/rbac.yaml | 26 ++++++++ .../physims-4g/templates/serviceaccount.yaml | 4 ++ charts/physims-4g/values.yaml | 21 +++++++ charts/physims-5g/Chart.yaml | 36 +++++++++++ .../physims-5g/charts/physims.5g/Chart.yaml | 35 +++++++++++ .../charts/physims.5g/templates/_helpers.tpl | 63 +++++++++++++++++++ .../charts/physims.5g/templates/job.yaml | 48 ++++++++++++++ .../physims-5g/charts/physims.5g/values.yaml | 48 ++++++++++++++ charts/physims-5g/templates/rbac.yaml | 26 ++++++++ .../physims-5g/templates/serviceaccount.yaml | 4 ++ charts/physims-5g/values.yaml | 21 +++++++ 16 files changed, 562 insertions(+) create mode 100644 charts/physims-4g/Chart.yaml create mode 100644 charts/physims-4g/charts/physims.4g/Chart.yaml create mode 100644 charts/physims-4g/charts/physims.4g/templates/_helpers.tpl create mode 100644 charts/physims-4g/charts/physims.4g/templates/job.yaml create mode 100644 charts/physims-4g/charts/physims.4g/values.yaml create mode 100644 charts/physims-4g/templates/rbac.yaml create mode 100644 charts/physims-4g/templates/serviceaccount.yaml create mode 100644 charts/physims-4g/values.yaml create mode 100644 charts/physims-5g/Chart.yaml create mode 100644 charts/physims-5g/charts/physims.5g/Chart.yaml create mode 100644 charts/physims-5g/charts/physims.5g/templates/_helpers.tpl create mode 100644 charts/physims-5g/charts/physims.5g/templates/job.yaml create mode 100644 charts/physims-5g/charts/physims.5g/values.yaml create mode 100644 charts/physims-5g/templates/rbac.yaml create mode 100644 charts/physims-5g/templates/serviceaccount.yaml create mode 100644 charts/physims-5g/values.yaml diff --git a/charts/physims-4g/Chart.yaml b/charts/physims-4g/Chart.yaml new file mode 100644 index 0000000000..0a6abe4caa --- /dev/null +++ b/charts/physims-4g/Chart.yaml @@ -0,0 +1,36 @@ +apiVersion: v1 +name: oai-physim +description: A Helm chart for physical simulators network function + +# A chart can be either an 'application' or a 'library' chart. +# +# Application charts are a collection of templates that can be packaged into versioned archives +# to be deployed. +# +# Library charts provide useful utilities or functions for the chart developer. They're included as +# a dependency of application charts to inject those utilities and functions into the rendering +# pipeline. Library charts do not define any templates and therefore cannot be deployed. +type: application + +icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png + +# This is the chart version. This version number should be incremented each time you make changes +# to the chart and its templates, including the app version. +version: 1.0.0 + +# This is the version number of the application being deployed. This version number should be +# incremented each time you make changes to the application. +appVersion: v1 + +keywords: + - Physical Simulators + - RAN + - 4G + - 5G + +sources: + - https://gitlab.eurecom.fr/oai/openairinterface5g + +maintainers: + - name: OPENAIRINTERFACE + email: contact@openairinterface.org diff --git a/charts/physims-4g/charts/physims.4g/Chart.yaml b/charts/physims-4g/charts/physims.4g/Chart.yaml new file mode 100644 index 0000000000..bd10179fc5 --- /dev/null +++ b/charts/physims-4g/charts/physims.4g/Chart.yaml @@ -0,0 +1,35 @@ +apiVersion: v1 +name: oai-physims-4g +description: A Helm subchart for 4G physims network function + +# A chart can be either an 'application' or a 'library' chart. +# +# Application charts are a collection of templates that can be packaged into versioned archives +# to be deployed. +# +# Library charts provide useful utilities or functions for the chart developer. They're included as +# a dependency of application charts to inject those utilities and functions into the rendering +# pipeline. Library charts do not define any templates and therefore cannot be deployed. +type: application + +icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png + +# This is the chart version. This version number should be incremented each time you make changes +# to the chart and its templates, including the app version. +version: 0.1.1 + +# This is the version number of the application being deployed. This version number should be +# incremented each time you make changes to the application. +appVersion: v1 + +keywords: + - Physical Simulator + - RAN + - 4G + +sources: + - https://gitlab.eurecom.fr/oai/openairinterface5g + +maintainers: + - name: OPENAIRINTERFACE + email: contact@openairinterface.org diff --git a/charts/physims-4g/charts/physims.4g/templates/_helpers.tpl b/charts/physims-4g/charts/physims.4g/templates/_helpers.tpl new file mode 100644 index 0000000000..2f6253d744 --- /dev/null +++ b/charts/physims-4g/charts/physims.4g/templates/_helpers.tpl @@ -0,0 +1,63 @@ +{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "oai-physims-4g.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "oai-physims-4g.fullname" -}} +{{- if .Values.fullnameOverride -}} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- $name := default .Chart.Name .Values.nameOverride -}} +{{- if contains $name .Release.Name -}} +{{- .Release.Name | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} +{{- end -}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "oai-physims-4g.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Common labels +*/}} +{{- define "oai-physims-4g.labels" -}} +helm.sh/chart: {{ include "oai-physims-4g.chart" . }} +{{ include "oai-physims-4g.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end -}} + +{{/* +Selector labels +*/}} +{{- define "oai-physims-4g.selectorLabels" -}} +app.kubernetes.io/name: {{ include "oai-physims-4g.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end -}} + +{{/* +Create the name of the service account to use +*/}} +{{- define "oai-physims-4g.serviceAccountName" -}} +{{- if .Values.serviceAccount.create -}} + {{ default (include "oai-physims-4g.fullname" .) .Values.serviceAccount.name }} +{{- else -}} + {{ default "default" .Values.serviceAccount.name }} +{{- end -}} +{{- end -}} diff --git a/charts/physims-4g/charts/physims.4g/templates/job.yaml b/charts/physims-4g/charts/physims.4g/templates/job.yaml new file mode 100644 index 0000000000..03bf54a9ee --- /dev/null +++ b/charts/physims-4g/charts/physims.4g/templates/job.yaml @@ -0,0 +1,48 @@ +apiVersion: batch/v1 +kind: Job +metadata: + name: {{ .Chart.Name }} +spec: + template: + metadata: + labels: + app: physim + spec: + securityContext: + {{- toYaml .Values.podSecurityContext | nindent 8 }} + {{- if .Values.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 8 }} + {{- end }} + containers: + - name: physim + image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + {{- if .Values.global.resources.define}} + resources: + requests: + cpu: {{ .Values.global.resources.requests.cpu | quote }} + {{- end}} + securityContext: + {{- toYaml .Values.securityContext | nindent 12 }} + env: + - name: OPENAIR_DIR + value: /opt/oai-physim + command: ["/bin/sh", "-c"] + args: + - > + ctest -R 4g --show-only=json-v1 >> physims-4g-tests.json && + ctest -R 4g -j$(nproc) --output-junit physims-4g-run.xml --test-output-size-passed 100000 --test-output-size-failed 100000 ; + echo "FINISHED" && sleep 15 + dnsPolicy: ClusterFirst + restartPolicy: Never + schedulerName: default-scheduler + serviceAccountName: {{ .Values.global.serviceAccountName }} + terminationGracePeriodSeconds: 30 + {{- if .Values.global.nodeSelector}} + nodeSelector: + {{- toYaml .Values.global.nodeSelector | nindent 12 }} + {{- end }} + {{- if .Values.global.nodeName}} + nodeName: {{ .Values.global.nodeName.physims5g }} + {{- end }} diff --git a/charts/physims-4g/charts/physims.4g/values.yaml b/charts/physims-4g/charts/physims.4g/values.yaml new file mode 100644 index 0000000000..52b751afd6 --- /dev/null +++ b/charts/physims-4g/charts/physims.4g/values.yaml @@ -0,0 +1,48 @@ +# Default values for oai-physims-4g +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +replicaCount: 1 + +image: + # pullPolicy: IfNotPresent or Never or Always + pullPolicy: Always + +imagePullSecrets: [] + +nameOverride: "" +fullnameOverride: "" + +serviceAccount: + # Specifies whether a service account should be created + create: true + # Annotations to add to the service account + annotations: {} + # The name of the service account to use. + # If not set and create is true, a name is generated using the fullname template + name: "oai-physims-4g" + +podSecurityContext: + runAsUser: 0 + runAsGroup: 0 + +securityContext: + privileged: false + +resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + +nodeSelector: {} + +tolerations: [] + +affinity: {} diff --git a/charts/physims-4g/templates/rbac.yaml b/charts/physims-4g/templates/rbac.yaml new file mode 100644 index 0000000000..989988baca --- /dev/null +++ b/charts/physims-4g/templates/rbac.yaml @@ -0,0 +1,26 @@ +apiVersion: rbac.authorization.k8s.io/v1 +kind: Role +metadata: + name: {{ .Chart.Name }}-{{ .Release.Namespace }}-role +rules: +- apiGroups: + - security.openshift.io + resourceNames: + - anyuid + resources: + - securitycontextconstraints + verbs: + - use +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: RoleBinding +metadata: + name: {{ .Chart.Name }}-{{ .Release.Namespace }}-binding +subjects: +- kind: ServiceAccount + name: {{ .Values.global.serviceAccountName }} + namespace: {{ .Release.Namespace }} +roleRef: + kind: Role + name: {{ .Chart.Name }}-{{ .Release.Namespace }}-role + apiGroup: rbac.authorization.k8s.io diff --git a/charts/physims-4g/templates/serviceaccount.yaml b/charts/physims-4g/templates/serviceaccount.yaml new file mode 100644 index 0000000000..0810702f4f --- /dev/null +++ b/charts/physims-4g/templates/serviceaccount.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +kind: ServiceAccount +metadata: + name: oai-physim-sa #{{ .Values.global.serviceAccountName }} diff --git a/charts/physims-4g/values.yaml b/charts/physims-4g/values.yaml new file mode 100644 index 0000000000..ce9ff32c90 --- /dev/null +++ b/charts/physims-4g/values.yaml @@ -0,0 +1,21 @@ +# Default values for oai-physim. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. +global: + serviceAccountName: oai-physim-sa + namespace: "OAICICD_PROJECT" + image: + registry: local + repository: image-registry.openshift-image-registry.svc:5000/oaicicd-core-for-ci-ran/oai-physim + version: TAG + # pullPolicy: IfNotPresent or Never or Always + pullPolicy: Always + # removing the node selector + # will place on two nodes intel 3rd gen and 5th gen with RT kernel + nodeSelector: + type: ran + nodeName: '' + resources: + define: false + requests: + cpu: 1.5 diff --git a/charts/physims-5g/Chart.yaml b/charts/physims-5g/Chart.yaml new file mode 100644 index 0000000000..0a6abe4caa --- /dev/null +++ b/charts/physims-5g/Chart.yaml @@ -0,0 +1,36 @@ +apiVersion: v1 +name: oai-physim +description: A Helm chart for physical simulators network function + +# A chart can be either an 'application' or a 'library' chart. +# +# Application charts are a collection of templates that can be packaged into versioned archives +# to be deployed. +# +# Library charts provide useful utilities or functions for the chart developer. They're included as +# a dependency of application charts to inject those utilities and functions into the rendering +# pipeline. Library charts do not define any templates and therefore cannot be deployed. +type: application + +icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png + +# This is the chart version. This version number should be incremented each time you make changes +# to the chart and its templates, including the app version. +version: 1.0.0 + +# This is the version number of the application being deployed. This version number should be +# incremented each time you make changes to the application. +appVersion: v1 + +keywords: + - Physical Simulators + - RAN + - 4G + - 5G + +sources: + - https://gitlab.eurecom.fr/oai/openairinterface5g + +maintainers: + - name: OPENAIRINTERFACE + email: contact@openairinterface.org diff --git a/charts/physims-5g/charts/physims.5g/Chart.yaml b/charts/physims-5g/charts/physims.5g/Chart.yaml new file mode 100644 index 0000000000..4da4ad2faa --- /dev/null +++ b/charts/physims-5g/charts/physims.5g/Chart.yaml @@ -0,0 +1,35 @@ +apiVersion: v1 +name: oai-physims-5g +description: A Helm subchart for 5G physims network function + +# A chart can be either an 'application' or a 'library' chart. +# +# Application charts are a collection of templates that can be packaged into versioned archives +# to be deployed. +# +# Library charts provide useful utilities or functions for the chart developer. They're included as +# a dependency of application charts to inject those utilities and functions into the rendering +# pipeline. Library charts do not define any templates and therefore cannot be deployed. +type: application + +icon: http://www.openairinterface.org/wp-content/uploads/2015/06/cropped-oai_final_logo.png + +# This is the chart version. This version number should be incremented each time you make changes +# to the chart and its templates, including the app version. +version: 0.1.1 + +# This is the version number of the application being deployed. This version number should be +# incremented each time you make changes to the application. +appVersion: v1 + +keywords: + - Physical Simulator + - RAN + - 5G + +sources: + - https://gitlab.eurecom.fr/oai/openairinterface5g + +maintainers: + - name: OPENAIRINTERFACE + email: contact@openairinterface.org diff --git a/charts/physims-5g/charts/physims.5g/templates/_helpers.tpl b/charts/physims-5g/charts/physims.5g/templates/_helpers.tpl new file mode 100644 index 0000000000..f18b616e58 --- /dev/null +++ b/charts/physims-5g/charts/physims.5g/templates/_helpers.tpl @@ -0,0 +1,63 @@ +{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "oai-physims-5g.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "oai-physims-5g.fullname" -}} +{{- if .Values.fullnameOverride -}} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- $name := default .Chart.Name .Values.nameOverride -}} +{{- if contains $name .Release.Name -}} +{{- .Release.Name | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} +{{- end -}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "oai-physims-5g.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Common labels +*/}} +{{- define "oai-physims-5g.labels" -}} +helm.sh/chart: {{ include "oai-physims-5g.chart" . }} +{{ include "oai-physims-5g.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end -}} + +{{/* +Selector labels +*/}} +{{- define "oai-physims-5g.selectorLabels" -}} +app.kubernetes.io/name: {{ include "oai-physims-5g.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end -}} + +{{/* +Create the name of the service account to use +*/}} +{{- define "oai-physims-5g.serviceAccountName" -}} +{{- if .Values.serviceAccount.create -}} + {{ default (include "oai-physims-5g.fullname" .) .Values.serviceAccount.name }} +{{- else -}} + {{ default "default" .Values.serviceAccount.name }} +{{- end -}} +{{- end -}} diff --git a/charts/physims-5g/charts/physims.5g/templates/job.yaml b/charts/physims-5g/charts/physims.5g/templates/job.yaml new file mode 100644 index 0000000000..7becb17f17 --- /dev/null +++ b/charts/physims-5g/charts/physims.5g/templates/job.yaml @@ -0,0 +1,48 @@ +apiVersion: batch/v1 +kind: Job +metadata: + name: {{ .Chart.Name }} +spec: + template: + metadata: + labels: + app: physim + spec: + securityContext: + {{- toYaml .Values.podSecurityContext | nindent 8 }} + {{- if .Values.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 8 }} + {{- end }} + containers: + - name: physim + image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.version }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + {{- if .Values.global.resources.define}} + resources: + requests: + cpu: {{ .Values.global.resources.requests.cpu | quote }} + {{- end}} + securityContext: + {{- toYaml .Values.securityContext | nindent 12 }} + env: + - name: OPENAIR_DIR + value: /opt/oai-physim + command: ["/bin/sh", "-c"] + args: + - > + ctest -R 5g --show-only=json-v1 >> physims-5g-tests.json && + ctest -R 5g -j$(nproc) --output-junit physims-5g-run.xml --test-output-size-passed 100000 --test-output-size-failed 100000 ; + echo "FINISHED" && sleep 20 + dnsPolicy: ClusterFirst + restartPolicy: Never + schedulerName: default-scheduler + serviceAccountName: {{ .Values.global.serviceAccountName }} + terminationGracePeriodSeconds: 30 + {{- if .Values.global.nodeSelector}} + nodeSelector: + {{- toYaml .Values.global.nodeSelector | nindent 12 }} + {{- end }} + {{- if .Values.global.nodeName}} + nodeName: {{ .Values.global.nodeName.physims5g }} + {{- end }} diff --git a/charts/physims-5g/charts/physims.5g/values.yaml b/charts/physims-5g/charts/physims.5g/values.yaml new file mode 100644 index 0000000000..eb97064ebf --- /dev/null +++ b/charts/physims-5g/charts/physims.5g/values.yaml @@ -0,0 +1,48 @@ +# Default values for oai-physims-5g +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +replicaCount: 1 + +image: + # pullPolicy: IfNotPresent or Never or Always + pullPolicy: Always + +imagePullSecrets: [] + +nameOverride: "" +fullnameOverride: "" + +serviceAccount: + # Specifies whether a service account should be created + create: true + # Annotations to add to the service account + annotations: {} + # The name of the service account to use. + # If not set and create is true, a name is generated using the fullname template + name: "oai-physims-5g" + +podSecurityContext: + runAsUser: 0 + runAsGroup: 0 + +securityContext: + privileged: false + +resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + +nodeSelector: {} + +tolerations: [] + +affinity: {} diff --git a/charts/physims-5g/templates/rbac.yaml b/charts/physims-5g/templates/rbac.yaml new file mode 100644 index 0000000000..989988baca --- /dev/null +++ b/charts/physims-5g/templates/rbac.yaml @@ -0,0 +1,26 @@ +apiVersion: rbac.authorization.k8s.io/v1 +kind: Role +metadata: + name: {{ .Chart.Name }}-{{ .Release.Namespace }}-role +rules: +- apiGroups: + - security.openshift.io + resourceNames: + - anyuid + resources: + - securitycontextconstraints + verbs: + - use +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: RoleBinding +metadata: + name: {{ .Chart.Name }}-{{ .Release.Namespace }}-binding +subjects: +- kind: ServiceAccount + name: {{ .Values.global.serviceAccountName }} + namespace: {{ .Release.Namespace }} +roleRef: + kind: Role + name: {{ .Chart.Name }}-{{ .Release.Namespace }}-role + apiGroup: rbac.authorization.k8s.io diff --git a/charts/physims-5g/templates/serviceaccount.yaml b/charts/physims-5g/templates/serviceaccount.yaml new file mode 100644 index 0000000000..0810702f4f --- /dev/null +++ b/charts/physims-5g/templates/serviceaccount.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +kind: ServiceAccount +metadata: + name: oai-physim-sa #{{ .Values.global.serviceAccountName }} diff --git a/charts/physims-5g/values.yaml b/charts/physims-5g/values.yaml new file mode 100644 index 0000000000..ce9ff32c90 --- /dev/null +++ b/charts/physims-5g/values.yaml @@ -0,0 +1,21 @@ +# Default values for oai-physim. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. +global: + serviceAccountName: oai-physim-sa + namespace: "OAICICD_PROJECT" + image: + registry: local + repository: image-registry.openshift-image-registry.svc:5000/oaicicd-core-for-ci-ran/oai-physim + version: TAG + # pullPolicy: IfNotPresent or Never or Always + pullPolicy: Always + # removing the node selector + # will place on two nodes intel 3rd gen and 5th gen with RT kernel + nodeSelector: + type: ran + nodeName: '' + resources: + define: false + requests: + cpu: 1.5 From dad8814bdf2ea7e957dfe92fa4f95f1181a83971 Mon Sep 17 00:00:00 2001 From: Jaroslava Fiedlerova Date: Fri, 16 May 2025 14:30:51 +0200 Subject: [PATCH 09/15] CI: Add functions for OC Physim deployment and analysis --- ci-scripts/cls_analysis.py | 67 ++++++++++++++++++++++++- ci-scripts/cls_cluster.py | 37 ++++++++++++++ ci-scripts/cls_oai_html.py | 22 ++++---- ci-scripts/scripts/oc-deploy-physims.sh | 33 ++++++++++++ 4 files changed, 148 insertions(+), 11 deletions(-) create mode 100755 ci-scripts/scripts/oc-deploy-physims.sh diff --git a/ci-scripts/cls_analysis.py b/ci-scripts/cls_analysis.py index 25d9b0c659..ac591b52fb 100644 --- a/ci-scripts/cls_analysis.py +++ b/ci-scripts/cls_analysis.py @@ -20,8 +20,11 @@ # */ #--------------------------------------------------------------------- -import logging import re +import os + +import xml.etree.ElementTree as ET +import json # Define the mapping of physim_test values to search patterns PHYSIM_PATTERN_MAPPING = { @@ -80,3 +83,65 @@ class Analysis(): msg = f'{time1_match.group(1)}: {time1_match.group(2)} us\n{time2_match.group(1)}: {time2_match.group(2)} us exceeds a limit of {threshold} us' return success,msg + + def analyze_oc_physim(result_junit, details_json): + try: + tree = ET.parse(result_junit) + root = tree.getroot() + nb_tests = int(root.attrib["tests"]) + nb_failed = int(root.attrib["failures"]) + except ET.ParseError as e: + return False, False, f'Could not parse XML log file {result_junit}: {e}' + except FileNotFoundError as e: + return False, False, f'JUnit XML log file {result_junit} not found: {e}' + except Exception as e: + return False, False, f'While parsing JUnit XML log file: exception: {e}' + + try: + with open(details_json) as f: + j = json.load(f) + # prepare JSON for easier access of strings + json_test_desc = {} + for e in j["tests"]: + json_test_desc[e["name"]] = e + + except json.JSONDecodeError as e: + return False, False, f'Could not decode JSON log file {details_json}: {e}' + except FileNotFoundError as e: + return False, False, f'Physim JSON log file {details_json} not found: {e}' + except Exception as e: + return False, False, f'While parsing physim JSON log file: exception: {e}' + + test_result = {} + for test in root: # for each test + test_name = test.attrib["name"] + test_exec = json_test_desc[test_name]["properties"][1]["value"][0] + desc = json_test_desc[test_name]["properties"][1]["value"][1] + # get runtime and checks + test_check = test.attrib["status"] == "run" + time = round(float(test.attrib["time"]), 1) + time_check = time < 150 + output = test.findtext("system-out") + output_check = "exceeds the threshold" not in output + # collect logs + log_dir = f'../cmake_targets/log/{test_exec}' + os.makedirs(log_dir, exist_ok=True) + with open(f'{log_dir}/{test_name}.log', 'w') as f: + f.write(output) + # prepare result and info + info = f"Runtime: {f'{time:.3f}'[:5]} s" + resultstr = 'PASS' if (test_check and time_check and output_check) else 'FAIL' + if test_check: + if not output_check: + info += " Test log exceeds maximal allowed length 100 kB" + if not time_check: + info += " Test exceeds 150s" + if not (time_check and output_check): + nb_failed += 1 # time threshold/output length error, not counted for by ctest as of now + test_result[test_name] = [desc, info, resultstr] + + test_summary = {} + test_summary['Nbtests'] = nb_tests + test_summary['Nbpass'] = nb_tests - nb_failed + test_summary['Nbfail'] = nb_failed + return nb_failed == 0, test_summary, test_result diff --git a/ci-scripts/cls_cluster.py b/ci-scripts/cls_cluster.py index ed7c638195..7e88c6b07b 100644 --- a/ci-scripts/cls_cluster.py +++ b/ci-scripts/cls_cluster.py @@ -31,8 +31,10 @@ import logging import re import time +import os import cls_oai_html +import cls_analysis import constants as CONST import helpreadme as HELP import cls_containerize @@ -457,3 +459,38 @@ class Cluster: HTML.CreateHtmlNextTabHeaderTestRow(collectInfo, imageSize) return status + + def deploy_oc_physim(self, HTML, oc_release, svr_id): + if self.ranRepository == '' or self.ranBranch == '' or self.ranCommitID == '': + HELP.GenericHelp(CONST.Version) + raise ValueError(f'Insufficient Parameter: ranRepository {self.ranRepository} ranBranch {self.ranBranch} ranCommitID {self.ranCommitID}') + image_tag = cls_containerize.CreateTag(self.ranCommitID, self.ranBranch, self.ranAllowMerge) + logging.debug(f'Running physims from server: {svr_id}') + script = "scripts/oc-deploy-physims.sh" + options = f"oaicicd-core-for-ci-ran {oc_release} {image_tag} {self.eNBSourceCodePath}" + ret = cls_cmd.runScript(svr_id, script, 600, options) + logging.debug(f'"{script}" finished with code {ret.returncode}, output:\n{ret.stdout}') + log_dir = f'{os.getcwd()}/../cmake_targets/log' + os.makedirs(log_dir, exist_ok=True) + result_junit = f'{oc_release}-run.xml' + details_json = f'{oc_release}-tests.json' + with cls_cmd.getConnection(svr_id) as ssh: + ssh.copyin(src=f'{self.eNBSourceCodePath}/ci-scripts/{details_json}', tgt=f'{log_dir}/{details_json}') + ssh.copyin(src=f'{self.eNBSourceCodePath}/ci-scripts/{result_junit}', tgt=f'{log_dir}/{result_junit}') + ssh.copyin(src=f'{self.eNBSourceCodePath}/ci-scripts/physim_log.txt', tgt=f'{log_dir}/physim_log.txt') + ssh.copyin(src=f'{self.eNBSourceCodePath}/ci-scripts/physim_pods_summary.txt', tgt=f'{log_dir}/physim_pods_summary.txt') + ssh.copyin(src=f'{self.eNBSourceCodePath}/ci-scripts/LastTestsFailed.log', tgt=f'{log_dir}/LastTestsFailed.log') + test_status, test_summary, test_result = cls_analysis.Analysis.analyze_oc_physim(f'{log_dir}/{result_junit}', f'{log_dir}/{details_json}') + if test_summary: + if test_status: + HTML.CreateHtmlTestRow('N/A', 'OK', CONST.ALL_PROCESSES_OK) + HTML.CreateHtmlTestRowPhySimTestResult(test_summary, test_result) + logging.info('\u001B[1m Physical Simulator Pass\u001B[0m') + else: + HTML.CreateHtmlTestRow('Some test(s) failed!', 'KO', CONST.OC_PHYSIM_DEPLOY_FAIL) + HTML.CreateHtmlTestRowPhySimTestResult(test_summary, test_result) + logging.error('\u001B[1m Physical Simulator Fail\u001B[0m') + else: + HTML.CreateHtmlTestRowQueue('Physical simulator failed', 'KO', [test_result]) + logging.error('\u001B[1m Physical Simulator Fail\u001B[0m') + return test_status diff --git a/ci-scripts/cls_oai_html.py b/ci-scripts/cls_oai_html.py index 8e99b20de7..478cbd1860 100644 --- a/ci-scripts/cls_oai_html.py +++ b/ci-scripts/cls_oai_html.py @@ -564,13 +564,13 @@ class HTMLManagement(): self.htmlFile.write(' Nb Pass\n') self.htmlFile.write(' \n') self.htmlFile.write(' \n') - self.htmlFile.write(' physim_test.txt \n') + self.htmlFile.write(' physim_log.txt \n') self.htmlFile.write(' ' + str(testSummary['Nbtests']) + ' \n') if testSummary['Nbfail'] == 0: - self.htmlFile.write(' ' + str(testSummary['Nbfail']) + ' \n') + self.htmlFile.write(' ' + str(testSummary['Nbfail']) + '\n') else: - self.htmlFile.write(' ' + str(testSummary['Nbfail']) + ' \n') - self.htmlFile.write(' ' + str(testSummary['Nbpass']) + ' \n') + self.htmlFile.write(' ' + str(testSummary['Nbfail']) + '\n') + self.htmlFile.write(' ' + str(testSummary['Nbpass']) + ' \n') self.htmlFile.write(' \n') self.htmlFile.write(' \n') self.htmlFile.write(' ---- PHYSIM TEST DETAIL INFO---- \n') @@ -578,22 +578,24 @@ class HTMLManagement(): self.htmlFile.write(' \n') self.htmlFile.write(' Test Name\n') self.htmlFile.write(' Test Description\n') - self.htmlFile.write(' Result\n') + self.htmlFile.write(' Test Status\n') + self.htmlFile.write(' Info\n') self.htmlFile.write(' \n') y = '' for key, value in testResult.items(): x = key.split(".") - if x[0] != y: + if x[2] != y: self.htmlFile.write(' \n') - self.htmlFile.write(' "' + x[0] + '" series \n') + self.htmlFile.write(' "' + x[2] + '" series \n') self.htmlFile.write(' \n') - y = x[0] + y = x[2] self.htmlFile.write(' \n') self.htmlFile.write(' ' + key + ' \n') self.htmlFile.write(' ' + value[0] + '\n') if 'PASS' in value: - self.htmlFile.write(' ' + value[1] + '\n') + self.htmlFile.write(' ' + value[2] + '\n') else: - self.htmlFile.write(' ' + value[1] + '\n') + self.htmlFile.write(' ' + value[2] + '\n') + self.htmlFile.write(' ' + value[1] + '\n') self.htmlFile.close() diff --git a/ci-scripts/scripts/oc-deploy-physims.sh b/ci-scripts/scripts/oc-deploy-physims.sh new file mode 100755 index 0000000000..ddb2e964ef --- /dev/null +++ b/ci-scripts/scripts/oc-deploy-physims.sh @@ -0,0 +1,33 @@ +#!/bin/bash + +set -e + +function die() { echo $@; exit 1; } +[ $# -eq 4 ] || die "usage: $0 " + +OC_NS=${1} +OC_RELEASE=${2} +IMG_TAG=${3} +OAI_DIR=${4} + +cat /opt/oc-password | oc login -u oaicicd --server https://api.oai.cs.eurecom.fr:6443 > /dev/null +oc project ${OC_NS} > /dev/null +oc tag oaicicd-ran/oai-physim:${IMG_TAG} ${OC_NS}/oai-physim:${IMG_TAG} +helm install ${OC_RELEASE} ${OAI_DIR}/charts/${OC_RELEASE} --set global.image.version=${IMG_TAG} --wait +POD_ID=$(oc get pods | grep oai-${OC_RELEASE} | awk '{print $1}') +sleep 10 +echo "Monitoring logs for 'FINISHED' in pod '$POD_ID'" +oc logs -f -n ${OC_NS} "$POD_ID" | while read -r line; do + if [[ "$line" == *"FINISHED"* ]]; then + echo "'FINISHED' detected in logs. Copying logs..." + oc logs -n ${OC_NS} "$POD_ID" >> ${OAI_DIR}/ci-scripts/physim_log.txt + oc describe pod $POD_ID >> ${OAI_DIR}/ci-scripts/physim_pods_summary.txt + oc cp "$POD_ID":/opt/oai-physim/Testing/Temporary/LastTestsFailed.log ${OAI_DIR}/ci-scripts/LastTestsFailed.log + oc cp "$POD_ID":/opt/oai-physim/${OC_RELEASE}-tests.json ${OAI_DIR}/ci-scripts/${OC_RELEASE}-tests.json + oc cp "$POD_ID":/opt/oai-physim/${OC_RELEASE}-run.xml ${OAI_DIR}/ci-scripts/${OC_RELEASE}-run.xml + break + fi +done +helm uninstall ${OC_RELEASE} --wait +oc delete istag oai-physim:${IMG_TAG} -n ${OC_NS} +oc logout > /dev/null From b3a3ed70e68dd33828d7adb2e5b9c8e2c91f868f Mon Sep 17 00:00:00 2001 From: Jaroslava Fiedlerova Date: Mon, 12 May 2025 16:54:36 +0200 Subject: [PATCH 10/15] CI: Create separate XML files for 4G and 5G physims --- ...eploy_run.xml => physim_4g_deploy_run.xml} | 16 +++++-- ci-scripts/xml_files/physim_5g_deploy_run.xml | 47 +++++++++++++++++++ 2 files changed, 60 insertions(+), 3 deletions(-) rename ci-scripts/xml_files/{physim_deploy_run.xml => physim_4g_deploy_run.xml} (72%) create mode 100644 ci-scripts/xml_files/physim_5g_deploy_run.xml diff --git a/ci-scripts/xml_files/physim_deploy_run.xml b/ci-scripts/xml_files/physim_4g_deploy_run.xml similarity index 72% rename from ci-scripts/xml_files/physim_deploy_run.xml rename to ci-scripts/xml_files/physim_4g_deploy_run.xml index 63152c1fb5..f8fb8781d5 100644 --- a/ci-scripts/xml_files/physim_deploy_run.xml +++ b/ci-scripts/xml_files/physim_4g_deploy_run.xml @@ -25,13 +25,23 @@ Physical Simulators Check wrench - 010201 + 800813 + 010201 - + + Create_Workspace + Create new Workspace + 0 + 0 + + + Deploy_Run_PhySim - Deploy and run physical simulator on openshift + Deploy and run physical simulator on openshift + physims-4g + avra diff --git a/ci-scripts/xml_files/physim_5g_deploy_run.xml b/ci-scripts/xml_files/physim_5g_deploy_run.xml new file mode 100644 index 0000000000..bd8bb0a121 --- /dev/null +++ b/ci-scripts/xml_files/physim_5g_deploy_run.xml @@ -0,0 +1,47 @@ + + + build-tab + Physical Simulators Check + wrench + + 800813 + 010201 + + + + + Create_Workspace + Create new Workspace + 0 + 0 + + + + Deploy_Run_PhySim + Deploy and run physical simulator on openshift + physims-5g + avra + + + From 77f2a2b678521b1b9e9a664276d6ff83b8058d23 Mon Sep 17 00:00:00 2001 From: Jaroslava Fiedlerova Date: Fri, 16 May 2025 14:36:01 +0200 Subject: [PATCH 11/15] CI: remove global PHYSIM and PhySim class The cls_physim1.py is no longer needed. Function for physim deployment has been migrated to the Cluster class. Log analysis functionality has been moved to the Analysis class. --- ci-scripts/args_parse.py | 14 +- ci-scripts/cls_physim1.py | 286 -------------------------------------- ci-scripts/main.py | 9 +- 3 files changed, 5 insertions(+), 304 deletions(-) delete mode 100644 ci-scripts/cls_physim1.py diff --git a/ci-scripts/args_parse.py b/ci-scripts/args_parse.py index 4bb999bd9d..cb3cd6a4ed 100644 --- a/ci-scripts/args_parse.py +++ b/ci-scripts/args_parse.py @@ -41,7 +41,7 @@ import constants as CONST #----------------------------------------------------------- -def ArgsParse(argvs,CiTestObj,RAN,HTML,CONTAINERS,HELP,SCA,PHYSIM,CLUSTER): +def ArgsParse(argvs,CiTestObj,RAN,HTML,CONTAINERS,HELP,SCA,CLUSTER): py_param_file_present = False @@ -84,7 +84,6 @@ def ArgsParse(argvs,CiTestObj,RAN,HTML,CONTAINERS,HELP,SCA,PHYSIM,CLUSTER): HTML.ranRepository=matchReg.group(1) CONTAINERS.ranRepository=matchReg.group(1) SCA.ranRepository=matchReg.group(1) - PHYSIM.ranRepository=matchReg.group(1) CLUSTER.ranRepository=matchReg.group(1) elif re.match(r'^\-\-eNB_AllowMerge=(.+)$|^\-\-ranAllowMerge=(.+)$', myArgv, re.IGNORECASE): if re.match(r'^\-\-eNB_AllowMerge=(.+)$', myArgv, re.IGNORECASE): @@ -98,7 +97,6 @@ def ArgsParse(argvs,CiTestObj,RAN,HTML,CONTAINERS,HELP,SCA,PHYSIM,CLUSTER): HTML.ranAllowMerge=True CONTAINERS.ranAllowMerge=True SCA.ranAllowMerge=True - PHYSIM.ranAllowMerge=True CLUSTER.ranAllowMerge=True elif re.match(r'^\-\-eNBBranch=(.+)$|^\-\-ranBranch=(.+)$', myArgv, re.IGNORECASE): if re.match(r'^\-\-eNBBranch=(.+)$', myArgv, re.IGNORECASE): @@ -110,7 +108,6 @@ def ArgsParse(argvs,CiTestObj,RAN,HTML,CONTAINERS,HELP,SCA,PHYSIM,CLUSTER): HTML.ranBranch=matchReg.group(1) CONTAINERS.ranBranch=matchReg.group(1) SCA.ranBranch=matchReg.group(1) - PHYSIM.ranBranch=matchReg.group(1) CLUSTER.ranBranch=matchReg.group(1) elif re.match(r'^\-\-eNBCommitID=(.*)$|^\-\-ranCommitID=(.*)$', myArgv, re.IGNORECASE): if re.match(r'^\-\-eNBCommitID=(.*)$', myArgv, re.IGNORECASE): @@ -122,7 +119,6 @@ def ArgsParse(argvs,CiTestObj,RAN,HTML,CONTAINERS,HELP,SCA,PHYSIM,CLUSTER): HTML.ranCommitID=matchReg.group(1) CONTAINERS.ranCommitID=matchReg.group(1) SCA.ranCommitID=matchReg.group(1) - PHYSIM.ranCommitID=matchReg.group(1) CLUSTER.ranCommitID=matchReg.group(1) elif re.match(r'^\-\-eNBTargetBranch=(.*)$|^\-\-ranTargetBranch=(.*)$', myArgv, re.IGNORECASE): if re.match(r'^\-\-eNBTargetBranch=(.*)$', myArgv, re.IGNORECASE): @@ -134,7 +130,6 @@ def ArgsParse(argvs,CiTestObj,RAN,HTML,CONTAINERS,HELP,SCA,PHYSIM,CLUSTER): HTML.ranTargetBranch=matchReg.group(1) CONTAINERS.ranTargetBranch=matchReg.group(1) SCA.ranTargetBranch=matchReg.group(1) - PHYSIM.ranTargetBranch=matchReg.group(1) CLUSTER.ranTargetBranch=matchReg.group(1) elif re.match(r'^\-\-eNBIPAddress=(.+)$|^\-\-eNB[1-2]IPAddress=(.+)$', myArgv, re.IGNORECASE): if re.match(r'^\-\-eNBIPAddress=(.+)$', myArgv, re.IGNORECASE): @@ -142,7 +137,6 @@ def ArgsParse(argvs,CiTestObj,RAN,HTML,CONTAINERS,HELP,SCA,PHYSIM,CLUSTER): RAN.eNBIPAddress=matchReg.group(1) CONTAINERS.eNBIPAddress=matchReg.group(1) SCA.eNBIPAddress=matchReg.group(1) - PHYSIM.eNBIPAddress=matchReg.group(1) CLUSTER.eNBIPAddress=matchReg.group(1) elif re.match(r'^\-\-eNB1IPAddress=(.+)$', myArgv, re.IGNORECASE): matchReg = re.match(r'^\-\-eNB1IPAddress=(.+)$', myArgv, re.IGNORECASE) @@ -158,7 +152,6 @@ def ArgsParse(argvs,CiTestObj,RAN,HTML,CONTAINERS,HELP,SCA,PHYSIM,CLUSTER): RAN.eNBUserName=matchReg.group(1) CONTAINERS.eNBUserName=matchReg.group(1) SCA.eNBUserName=matchReg.group(1) - PHYSIM.eNBUserName=matchReg.group(1) CLUSTER.eNBUserName=matchReg.group(1) elif re.match(r'^\-\-eNB1UserName=(.+)$', myArgv, re.IGNORECASE): matchReg = re.match(r'^\-\-eNB1UserName=(.+)$', myArgv, re.IGNORECASE) @@ -174,7 +167,6 @@ def ArgsParse(argvs,CiTestObj,RAN,HTML,CONTAINERS,HELP,SCA,PHYSIM,CLUSTER): RAN.eNBPassword=matchReg.group(1) CONTAINERS.eNBPassword=matchReg.group(1) SCA.eNBPassword=matchReg.group(1) - PHYSIM.eNBPassword=matchReg.group(1) CLUSTER.eNBPassword=matchReg.group(1) elif re.match(r'^\-\-eNB1Password=(.+)$', myArgv, re.IGNORECASE): matchReg = re.match(r'^\-\-eNB1Password=(.+)$', myArgv, re.IGNORECASE) @@ -190,7 +182,6 @@ def ArgsParse(argvs,CiTestObj,RAN,HTML,CONTAINERS,HELP,SCA,PHYSIM,CLUSTER): RAN.eNBSourceCodePath=matchReg.group(1) CONTAINERS.eNBSourceCodePath=matchReg.group(1) SCA.eNBSourceCodePath=matchReg.group(1) - PHYSIM.eNBSourceCodePath=matchReg.group(1) CLUSTER.eNBSourceCodePath=matchReg.group(1) elif re.match(r'^\-\-eNB1SourceCodePath=(.+)$', myArgv, re.IGNORECASE): matchReg = re.match(r'^\-\-eNB1SourceCodePath=(.+)$', myArgv, re.IGNORECASE) @@ -236,15 +227,12 @@ def ArgsParse(argvs,CiTestObj,RAN,HTML,CONTAINERS,HELP,SCA,PHYSIM,CLUSTER): CiTestObj.finalStatus = True elif re.match(r'^\-\-OCUserName=(.+)$', myArgv, re.IGNORECASE): matchReg = re.match(r'^\-\-OCUserName=(.+)$', myArgv, re.IGNORECASE) - PHYSIM.OCUserName = matchReg.group(1) CLUSTER.OCUserName = matchReg.group(1) elif re.match(r'^\-\-OCPassword=(.+)$', myArgv, re.IGNORECASE): matchReg = re.match(r'^\-\-OCPassword=(.+)$', myArgv, re.IGNORECASE) - PHYSIM.OCPassword = matchReg.group(1) CLUSTER.OCPassword = matchReg.group(1) elif re.match(r'^\-\-OCProjectName=(.+)$', myArgv, re.IGNORECASE): matchReg = re.match(r'^\-\-OCProjectName=(.+)$', myArgv, re.IGNORECASE) - PHYSIM.OCProjectName = matchReg.group(1) CLUSTER.OCProjectName = matchReg.group(1) elif re.match(r'^\-\-OCUrl=(.+)$', myArgv, re.IGNORECASE): matchReg = re.match(r'^\-\-OCUrl=(.+)$', myArgv, re.IGNORECASE) diff --git a/ci-scripts/cls_physim1.py b/ci-scripts/cls_physim1.py deleted file mode 100644 index 97aa9d6dff..0000000000 --- a/ci-scripts/cls_physim1.py +++ /dev/null @@ -1,286 +0,0 @@ -#/* -# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more -# * contributor license agreements. See the NOTICE file distributed with -# * this work for additional information regarding copyright ownership. -# * The OpenAirInterface Software Alliance licenses this file to You under -# * the OAI Public License, Version 1.1 (the "License"); you may not use this file -# * except in compliance with the License. -# * You may obtain a copy of the License at -# * -# * http://www.openairinterface.org/?page_id=698 -# * -# * Unless required by applicable law or agreed to in writing, software -# * distributed under the License is distributed on an "AS IS" BASIS, -# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# * See the License for the specific language governing permissions and -# * limitations under the License. -# *------------------------------------------------------------------------------- -# * For more information about the OpenAirInterface (OAI) Software Alliance: -# * contact@openairinterface.org -# */ -#--------------------------------------------------------------------- -# Python for CI of OAI-eNB + COTS-UE -# -# Required Python Version -# Python 3.x -# -# Required Python Package -# pexpect -#--------------------------------------------------------------------- - -#----------------------------------------------------------- -# Import -#----------------------------------------------------------- -import logging -import os -import re -import time -import subprocess -import sys - -import sshconnection as SSH -import cls_oai_html -import constants as CONST -import helpreadme as HELP - -class PhySim: - def __init__(self): - self.eNBIpAddr = "" - self.eNBUserName = "" - self.eNBPassword = "" - self.OCUserName = "" - self.OCPassword = "" - self.OCProjectName = "" - self.eNBSourceCodePath = "" - self.ranRepository = "" - self.ranBranch = "" - self.ranCommitID= "" - self.ranAllowMerge= False - self.ranTargetBranch= "" - self.testResult = {} - self.testSummary = {} - self.testStatus = False - -#-----------------$ -#PUBLIC Methods$ -#-----------------$ - - def Deploy_PhySim(self, HTML): - if self.ranRepository == '' or self.ranBranch == '' or self.ranCommitID == '': - HELP.GenericHelp(CONST.Version) - sys.exit('Insufficient Parameter') - lIpAddr = self.eNBIPAddress - lUserName = self.eNBUserName - lPassWord = self.eNBPassword - lSourcePath = self.eNBSourceCodePath - ocUserName = self.OCUserName - ocPassword = self.OCPassword - ocProjectName = self.OCProjectName - - if lIpAddr == '' or lUserName == '' or lPassWord == '' or lSourcePath == '' or ocUserName == '' or ocPassword == '' or ocProjectName == '': - HELP.GenericHelp(CONST.Version) - sys.exit('Insufficient Parameter') - logging.debug('Building on server: ' + lIpAddr) - mySSH = SSH.SSHConnection() - mySSH.open(lIpAddr, lUserName, lPassWord) - - self.testCase_id = HTML.testCase_id - - # on RedHat/CentOS .git extension is mandatory - result = re.search('([a-zA-Z0-9\:\-\.\/])+\.git', self.ranRepository) - if result is not None: - full_ran_repo_name = self.ranRepository.replace('git/', 'git') - else: - full_ran_repo_name = self.ranRepository + '.git' - mySSH.command('rm -Rf ' + lSourcePath, '\$', 30) - mySSH.command('mkdir -p ' + lSourcePath, '\$', 5) - mySSH.command('cd ' + lSourcePath, '\$', 5) - mySSH.command('if [ ! -e .git ]; then stdbuf -o0 git clone ' + full_ran_repo_name + ' .; else stdbuf -o0 git fetch --prune; fi', '\$', 600) - # Raphael: here add a check if git clone or git fetch went smoothly - mySSH.command('git config user.email "jenkins@openairinterface.org"', '\$', 5) - mySSH.command('git config user.name "OAI Jenkins"', '\$', 5) - - mySSH.command('git clean -x -d -ff', '\$', 30) - mySSH.command('mkdir -p cmake_targets/log', '\$', 5) - # if the commit ID is provided use it to point to it - if self.ranCommitID != '': - mySSH.command('git checkout -f ' + self.ranCommitID, '\$', 30) - if self.ranAllowMerge: - branchName = self.ranBranch.replace('/','-') - imageTag = f'{branchName}-{self.ranCommitID[0:8]}' - if self.ranTargetBranch == '': - if (self.ranBranch != 'develop') and (self.ranBranch != 'origin/develop'): - mySSH.command('git merge --ff origin/develop -m "Temporary merge for CI"', '\$', 30) - else: - logging.debug('Merging with the target branch: ' + self.ranTargetBranch) - mySSH.command('git merge --ff origin/' + self.ranTargetBranch + ' -m "Temporary merge for CI"', '\$', 30) - else: - imageTag = f'develop-{self.ranCommitID[0:8]}' - - # logging to OC Cluster and then switch to corresponding project - mySSH.command(f'oc login -u {ocUserName} -p {ocPassword} --server https://api.oai.cs.eurecom.fr:6443', '\$', 30) - if mySSH.getBefore().count('Login successful.') == 0: - logging.error('\u001B[1m OC Cluster Login Failed\u001B[0m') - mySSH.close() - HTML.CreateHtmlTestRow('N/A', 'KO', CONST.OC_LOGIN_FAIL) - return False - else: - logging.debug('\u001B[1m Login to OC Cluster Successfully\u001B[0m') - mySSH.command(f'oc project {ocProjectName}', '\$', 30) - if mySSH.getBefore().count(f'Already on project "{ocProjectName}"') == 0 and mySSH.getBefore().count(f'Now using project "{self.OCProjectName}"') == 0: - logging.error(f'\u001B[1m Unable to access OC project {ocProjectName}\u001B[0m') - mySSH.command('oc logout', '\$', 30) - mySSH.close() - HTML.CreateHtmlTestRow('N/A', 'KO', CONST.OC_PROJECT_FAIL) - return False - else: - logging.debug(f'\u001B[1m Now using project {ocProjectName}\u001B[0m') - - # Using helm charts deployment - mySSH.command(f'helm install physim ./charts/physims/ --set global.image.version={imageTag} --wait 2>&1 | tee -a cmake_targets/log/physim_helm_summary.txt', '\$', 30) - if mySSH.getBefore().count('STATUS: deployed') == 0: - logging.error('\u001B[1m Deploying PhySim Failed using helm chart on OC Cluster\u001B[0m') - mySSH.command('helm uninstall physim | tee -a cmake_targets/log/physim_helm_summary.txt 2>&1', '\$', 30) - isFinished1 = False - while(isFinished1 == False): - time.sleep(20) - mySSH.command('oc get pods -l app=physim', '\$', 6, resync=True) - if re.search('No resources found', mySSH.getBefore()): - isFinished1 = True - mySSH.command('oc logout', '\$', 30) - mySSH.close() - self.AnalyzeLogFile_phySim() - return False - else: - logging.debug('\u001B[1m Deployed PhySim Successfully using helm chart\u001B[0m') - isRunning = False - count = 0 - # Check whether the containers are in Running state or not under 2 mins - while(count < 5 and isRunning == False): - time.sleep(60) - mySSH.command('oc get pods -o wide -l app=physim | tee -a cmake_targets/log/physim_pods_summary.txt', '\$', 30, resync=True) - running_count = mySSH.getBefore().count('Running') - completed_count = mySSH.getBefore().count('Completed') - if (running_count + completed_count) == 23: - logging.debug('\u001B[1m Running the physim test Scenarios\u001B[0m') - isRunning = True - podNames = re.findall('oai-[\S\d\w]+', mySSH.getBefore()) - count +=1 - if isRunning == False: - logging.error('\u001B[1m Some pods are in Error state \u001B[0m') - mySSH.command('oc get pods -l app=physim 2>&1 | tee -a cmake_targets/log/physim_pods_summary.txt', '\$', 6) - mySSH.command('for pod in $(oc get pods | tail -n +2 | awk \'{print $1}\'); do oc describe pod $pod >> cmake_targets/log/physim_pods_summary.txt; done', '\$', 10) - mySSH.command('helm uninstall physim | tee -a cmake_targets/log/physim_helm_summary.txt 2>&1', '\$', 6) - self.AnalyzeLogFile_phySim() - isFinished1 = False - while(isFinished1 == False): - time.sleep(20) - mySSH.command('oc get pods -l app=physim', '\$', 6, resync=True) - if re.search('No resources found', mySSH.getBefore()): - isFinished1 = True - mySSH.command('oc logout', '\$', 30) - HTML.CreateHtmlTestRow('N/A', 'KO', CONST.OC_PHYSIM_DEPLOY_FAIL) - HTML.CreateHtmlTestRowPhySimTestResult(self.testSummary,self.testResult) - return False - # Waiting to complete the running test - count = 0 - isFinished = False - # doing a deep copy! - tmpPodNames = podNames.copy() - while(count < 9 and isFinished == False): - time.sleep(60) - for podName in tmpPodNames: - mySSH.command2(f'oc logs --tail=1 {podName} 2>&1', 6, silent=True) - if mySSH.cmd2Results.count('FINISHED') != 0: - logging.debug(podName + ' is finished') - tmpPodNames.remove(podName) - if not tmpPodNames: - isFinished = True - count += 1 - if isFinished: - logging.debug('\u001B[1m PhySim test is Complete\u001B[0m') - else: - logging.error('\u001B[1m PhySim test Timed-out!\u001B[0m') - - # Getting the logs of each executables running in individual pods - for podName in podNames: - mySSH.command(f'oc logs {podName} >> cmake_targets/log/physim_test.txt 2>&1', '\$', 15, resync=True) - mySSH.command('for pod in $(oc get pods | tail -n +2 | awk \'{print $1}\'); do oc describe pod $pod >> cmake_targets/log/physim_pods_summary.txt; done', '\$', 10) - mySSH.copyin(lIpAddr, lUserName, lPassWord, lSourcePath + '/cmake_targets/log/physim_test.txt', '.') - try: - listLogFiles = subprocess.check_output('grep -E --colour=never "Execution Log file|Linux oai-" physim_test.txt', shell=True, universal_newlines=True) - for line in listLogFiles.split('\n'): - res1 = re.search('Linux (?Poai-[a-zA-Z0-9\-]+) ', str(line)) - res2 = re.search('Execution Log file = (?P[a-zA-Z0-9\-\/\.\_\+]+)', str(line)) - if res1 is not None: - podName = res1.group('pod') - if res2 is not None: - logFileInPod = res2.group('name') - folderName = logFileInPod.replace('/opt/oai-physim/cmake_targets/autotests/log/', '') - folderName = re.sub('/test.*', '', folderName) - fileName = logFileInPod.replace('/opt/oai-physim/cmake_targets/autotests/log/' + folderName + '/', '') - mySSH.command('mkdir -p cmake_targets/log/' + folderName, '\$', 5, silent=True) - mySSH.command('oc cp ' + podName + ':' + logFileInPod + ' cmake_targets/log/' + folderName + '/' + fileName, '\$', 20, silent=True) - except Exception as e: - pass - - # UnDeploy the physical simulator pods - mySSH.command('helm uninstall physim | tee -a cmake_targets/log/physim_helm_summary.txt 2>&1', '\$', 6) - isFinished1 = False - while(isFinished1 == False): - time.sleep(20) - mySSH.command('oc get pods -l app=physim', '\$', 6, resync=True) - if re.search('No resources found', mySSH.getBefore()): - isFinished1 = True - if isFinished1 == True: - logging.debug('\u001B[1m UnDeployed PhySim Successfully on OC Cluster\u001B[0m') - mySSH.command('oc logout', '\$', 6) - mySSH.close() - self.AnalyzeLogFile_phySim() - if self.testStatus and isFinished: - HTML.CreateHtmlTestRow('N/A', 'OK', CONST.ALL_PROCESSES_OK) - HTML.CreateHtmlTestRowPhySimTestResult(self.testSummary,self.testResult) - logging.info('\u001B[1m Physical Simulator Pass\u001B[0m') - else: - if isFinished: - HTML.CreateHtmlTestRow('N/A', 'KO', CONST.ALL_PROCESSES_OK) - else: - HTML.CreateHtmlTestRow('Some test(s) timed-out!', 'KO', CONST.ALL_PROCESSES_OK) - HTML.CreateHtmlTestRowPhySimTestResult(self.testSummary,self.testResult) - logging.error('\u001B[1m Physical Simulator Fail\u001B[0m') - return self.testStatus - - def AnalyzeLogFile_phySim(self): - mySSH = SSH.SSHConnection() - mySSH.open(self.eNBIPAddress, self.eNBUserName, self.eNBPassword) - dirToCopy = f'{self.eNBSourceCodePath}/cmake_targets/log/' - mySSH.copyin(self.eNBIPAddress, self.eNBUserName, self.eNBPassword, dirToCopy, f'./physim_test_logs_{self.testCase_id}/') - mySSH.command(f'rm -rf {dirToCopy}', '\$', 5) - mySSH.close() - # physim test log analysis - nextt = 0 - nbTests = 0 - nbFailed = 0 - if (os.path.isfile(f'./physim_test_logs_{self.testCase_id}/physim_test.txt')): - with open(f'./physim_test_logs_{self.testCase_id}/physim_test.txt', 'r') as logfile: - for line in logfile: - # the following regex would match the following line: - # execution nr_pbchsim.106rb.test1 {Test1: PBCH-only, 106 PRB} Run_Result = " Run_1 =PASS Run_2 =PASS Run_3 =PASS" Result = PASS - # ^testname ^testdescription ^test1 ^test2 ^test3 ^status - ret = re.search('execution\s+(?P[a-zA-Z0-9\._\-\+]+)\s+{(?P[A-Za-z0-9\.\_\-\+:,;\/\%\=\(\)\s]+)}\s+Run_Result\s*=\s*\"\s*Run_1\s*=\s*(?P[A-Za-z]+)\s*Run_2\s*=\s*(?P[A-Za-z]+)\s*Run_3\s*=\s*(?P[A-Za-z]+)\s*\"\s+Result\s*=\s*(?P[A-Za-z]+)', line) - if ret is None: - continue - nbTests += 1 - r = [ret.group('run1'), ret.group('run2'), ret.group('run3')] - nbPass = sum([x == 'PASS' for x in r]) - resultstr = 'PASS' - if nbPass < 3 or ret.group('status') != 'PASS': - resultstr = f'FAIL ({3-nbPass}/3)' - nbFailed += 1 - self.testResult[ret.group('name')] = [ret.group('desc'), resultstr] - self.testSummary['Nbtests'] = nbTests - self.testSummary['Nbpass'] = nbTests - nbFailed - self.testSummary['Nbfail'] = nbFailed - if self.testSummary['Nbfail'] == 0: - self.testStatus = True - return 0 diff --git a/ci-scripts/main.py b/ci-scripts/main.py index 6d5448c4e0..7ac64a58d6 100644 --- a/ci-scripts/main.py +++ b/ci-scripts/main.py @@ -41,7 +41,6 @@ import constants as CONST import cls_oaicitest #main class for OAI CI test framework import cls_containerize #class Containerize for all container-based operations on RAN/UE objects import cls_static_code_analysis #class for static code analysis -import cls_physim1 #class PhySim for physical simulators deploy and run import cls_cluster # class for building/deploying on cluster import cls_native # class for all native/source-based operations @@ -97,7 +96,6 @@ def ExecuteActionWithParam(action): global HTML global CONTAINERS global SCA - global PHYSIM global CLUSTER if action == 'Build_eNB' or action == 'Build_Image' or action == 'Build_Proxy' or action == "Build_Cluster_Image" or action == "Build_Run_Tests": RAN.Build_eNB_args=test.findtext('Build_eNB_args') @@ -295,7 +293,9 @@ def ExecuteActionWithParam(action): success = cls_oaicitest.IdleSleep(HTML, int(st)) elif action == 'Deploy_Run_PhySim': - success = PHYSIM.Deploy_PhySim(HTML) + oc_release = test.findtext('oc_release') + svr_id = test.findtext('svr_id') or None + success = CLUSTER.deploy_oc_physim(HTML, oc_release, svr_id) elif action == 'DeployCoreNetwork' or action == 'UndeployCoreNetwork': cn_id = test.findtext('cn_id') @@ -442,7 +442,6 @@ RAN = ran.RANManagement() HTML = cls_oai_html.HTMLManagement() CONTAINERS = cls_containerize.Containerize() SCA = cls_static_code_analysis.StaticCodeAnalysis() -PHYSIM = cls_physim1.PhySim() CLUSTER = cls_cluster.Cluster() #----------------------------------------------------------- @@ -452,7 +451,7 @@ CLUSTER = cls_cluster.Cluster() import args_parse # Force local execution, move all execution targets to localhost force_local = False -py_param_file_present, py_params, mode, force_local = args_parse.ArgsParse(sys.argv,CiTestObj,RAN,HTML,CONTAINERS,HELP,SCA,PHYSIM,CLUSTER) +py_param_file_present, py_params, mode, force_local = args_parse.ArgsParse(sys.argv,CiTestObj,RAN,HTML,CONTAINERS,HELP,SCA,CLUSTER) From 1de7e0541ca93483c6e143432be2640a2f7e0d29 Mon Sep 17 00:00:00 2001 From: Jaroslava Fiedlerova Date: Wed, 14 May 2025 11:34:49 +0200 Subject: [PATCH 12/15] CI: adjust tested SNR for nr_pucchsim Initially we were testing SNR from -3 to 7 dB, in recent runs PUCCH test succeeds at SNR = 0 or 1 dB. Starting at higher SNR helps to reduce test runtime. Set maximum SNR to 7dB, as it was done in the initial test scenario, to ensure that possible performance degradation is detected. --- openair1/PHY/CODING/tests/CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/openair1/PHY/CODING/tests/CMakeLists.txt b/openair1/PHY/CODING/tests/CMakeLists.txt index fc008b861f..8d7fac20d7 100644 --- a/openair1/PHY/CODING/tests/CMakeLists.txt +++ b/openair1/PHY/CODING/tests/CMakeLists.txt @@ -176,13 +176,13 @@ add_physim_test(5g nr_pucchsim test19 "Format 2 64-bit 16/106 PRB" -R 106 -i 1 - add_physim_test(5g nr_pucchsim test20 "Format 0 1-bit Ack miss 273 PRB" -R 273 -z8 -i 1 -P 0 -b 1 -s-2 -n3000) add_physim_test(5g nr_pucchsim test21 "Format 0 2-bit Ack miss 273 PRB" -R 273 -z8 -i 1 -P 0 -b 2 -s-2 -n3000) add_physim_test(5g nr_pucchsim test22 "Format 0 2-bit Ack miss+SR 273 PRB" -R 273 -z8 -i 1 -P 0 -b 2 -s-2 -c -n3000) -add_physim_test(5g nr_pucchsim test23 "Format 2 4-bit 2/273 PRB" -R 273 -z8 -i 1 -P 2 -b 4 -s-10 -n3000) +add_physim_test(5g nr_pucchsim test23 "Format 2 4-bit 2/273 PRB" -R 273 -z8 -i 1 -P 2 -b 4 -s-8 -S0 -n3000) add_physim_test(5g nr_pucchsim test24 "Format 2 7-bit 2/273 PRB" -R 273 -z8 -i 1 -P 2 -b 7 -s3 -n3000) add_physim_test(5g nr_pucchsim test25 "Format 2 11-bit 2/273 PRB" -R 273 -z8 -i 1 -P 2 -b 11 -s6 -n3000) add_physim_test(5g nr_pucchsim test26 "Format 2 12-bit 8/273 PRB" -R 273 -z8 -i 1 -P 2 -q8 -b 12 -s-3 -n3000) add_physim_test(5g nr_pucchsim test27 "Format 2 19-bit 8/273 PRB" -R 273 -z8 -i 1 -P 2 -q8 -b 19 -s-3 -n3000) add_physim_test(5g nr_pucchsim test28 "Format 2 64-bit 16/273 PRB" -R 273 -z8 -i 1 -P 2 -q16 -b 64 -s-3 -n3000) -add_physim_test(5g nr_pucchsim test29 "Format 2 64-bit 16/273 PRB Delay 2us" -R 273 -z8 -i 1 -P 2 -q16 -b 64 -s-3 -d 2 -n3000) +add_physim_test(5g nr_pucchsim test29 "Format 2 64-bit 16/273 PRB Delay 2us" -R 273 -z8 -i 1 -P 2 -q16 -b 64 -s0 -S7 -d 2 -n3000) #################################################################################### ###### nr_ulsim unit test ###### From 4f64dd98ee27847e1d96aff71d35dfb745c4c468 Mon Sep 17 00:00:00 2001 From: Jaroslava Fiedlerova Date: Wed, 14 May 2025 15:23:41 +0200 Subject: [PATCH 13/15] CI: split RAN-Physim-Cluster pipeline into 4G and 5G --- ci-scripts/Jenkinsfile-GitLab-Container | 33 +++++++++++++++++++++---- 1 file changed, 28 insertions(+), 5 deletions(-) diff --git a/ci-scripts/Jenkinsfile-GitLab-Container b/ci-scripts/Jenkinsfile-GitLab-Container index a4da765bf5..62ab0266b1 100644 --- a/ci-scripts/Jenkinsfile-GitLab-Container +++ b/ci-scripts/Jenkinsfile-GitLab-Container @@ -246,11 +246,11 @@ pipeline { stage ("Image Test Processes") { when { expression {doBuild} } parallel { - stage ("PhySim-Cluster") { - when { expression {do4Gtest || do5Gtest || do5GUeTest} } + stage ("PhySim-Cluster-5G") { + when { expression {do5Gtest || do5GUeTest} } steps { script { - triggerSlaveJob ('RAN-PhySim-Cluster', 'PhySim-Cluster') + triggerSlaveJob ('RAN-PhySim-Cluster-5G', 'PhySim-Cluster-5G') } } post { @@ -258,13 +258,36 @@ pipeline { script { // Using a unique variable name for each test stage to avoid overwriting on a global variable // due to parallel-time concurrency - physimStatus = finalizeSlaveJob('RAN-PhySim-Cluster') + physim5GStatus = finalizeSlaveJob('RAN-PhySim-Cluster-5G') } } failure { script { currentBuild.result = 'FAILURE' - failingStages += physimStatus + failingStages += physim5GStatus + } + } + } + } + stage ("PhySim-Cluster-4G") { + when { expression {do4Gtest} } + steps { + script { + triggerSlaveJob ('RAN-PhySim-Cluster-4G', 'PhySim-Cluster-4G') + } + } + post { + always { + script { + // Using a unique variable name for each test stage to avoid overwriting on a global variable + // due to parallel-time concurrency + physim4GStatus = finalizeSlaveJob('RAN-PhySim-Cluster-4G') + } + } + failure { + script { + currentBuild.result = 'FAILURE' + failingStages += physim4GStatus } } } From 4c41387bd4f6918d06d4100dd8be13b9827e5203 Mon Sep 17 00:00:00 2001 From: rmagueta Date: Thu, 15 May 2025 14:57:25 +0100 Subject: [PATCH 14/15] Improve physim documentation: structure, ctest usage, and clarity --- doc/physical-simulators.md | 154 ++++++++++++++++++++++++++++++------- 1 file changed, 128 insertions(+), 26 deletions(-) diff --git a/doc/physical-simulators.md b/doc/physical-simulators.md index f06c7a67d9..2088ca90cb 100644 --- a/doc/physical-simulators.md +++ b/doc/physical-simulators.md @@ -1,36 +1,138 @@ -This document describes the physical simulators, also called "unitary -simulators", or short "physims". +# Physical Simulators ("Physims") User Guide + +This document provides an overview and usage guide for the **physical simulators**, also referred to as **unitary +simulators** or simply **physims**, used in the OpenAirInterface (OAI) project for LTE and 5G PHY layer validation. [[_TOC_]] # Introduction -There are several unitary simulations for the physical layer, testing -individual L1 transport/control channels using Monte-Carlo simulations, for -instance: +**Unitary simulations** are standalone test programs designed to validate individual physical layer (L1) transport or +control channels. These simulations are based on **Monte Carlo techniques**, enabling statistical evaluation of +performance metrics such as block error rate (BLER), hybrid automatic repeat request (HARQ) throughput, and decoding +accuracy under various signal conditions. -- `nr_pucchsim` for 5G PUCCH, -- `nr_dlsim` for 5G DLSCH/PDSCH, -- `nr_prachsim` for 5G PRACH, -- `dlsim` for 4G DLSCH/PDSCH, etc. +Physims are essential for: -These simulators constitute the starting point for testing any new code in the -PHY layer, and are required tests to be performed before committing any new -code to the repository, in the sense that all of these should compile and -execute correctly. They provide estimates of the transport block error rates -and HARQ thoughput, DCI error rates, etc. The simulators reside in -`openair1/SIMULATION/LTE_PHY` and `openair1/SIMULATION/NR_PHY`. For instance, -`nr_dlsim` is built from `openair1/SIMULATION/NR_PHY/dlsim.c`. +* Debugging and evaluating new PHY code in isolation +* Regression testing +* Ensuring correctness before merging new contributions into the repository -Further unitary simulation of the coding subsystem components also exists in -`openair1/PHY/CODING/TESTBENCH`, e.g., `ldpctest` for encoding/decoding of -LDPC. +## Examples of Simulators -These are the simulators known to work properly and tested in CI: -- 4G: `dlsim`, `ulsim` -- 5G: `nr_dlsim`, `nr_ulsim`, `nr_dlschsim`, `nr_ulschsim`, `ldpctest`, - `nr_pbchsim`, `nr_prachsim`, `nr_pucchsim`, `polartest`, `smallblocktest`, - `nr_psbchsim` (sidelink) +| Technology | Simulators | Description | +|------------|-------------------------------------------|----------------------------------| +| 4G LTE | `dlsim`, `ulsim` | Downlink and uplink simulators | +| 5G NR | `nr_dlsim`, `nr_ulsim` | Downlink and uplink simulators | +| | `nr_dlschsim`, `nr_ulschsim` | HARQ and TB throughput tests | +| | `nr_pucchsim` | Control channel simulation | +| | `nr_pbchsim` | Broadcast channel simulation | +| | `nr_prachsim` | PRACH simulation | +| | `nr_psbchsim` | Sidelink simulation | +| Coding | `ldpctest`, `polartest`, `smallblocktest` | LDPC, Polar, and other FEC tests | -These tests are run in this pipeline: -[RAN-PhySim-Cluster](https://jenkins-oai.eurecom.fr/job/RAN-PhySim-Cluster/). +### Source Locations + +* 4G PHY simulators: `openair1/SIMULATION/LTE_PHY/` +* 5G PHY simulators: `openair1/SIMULATION/NR_PHY/` +* Coding unit tests: `openair1/PHY/CODING/TESTBENCH/` + +Example: + +```bash +# 5G Downlink simulator +openair1/SIMULATION/NR_PHY/dlsim.c +``` + +# How to Run Simulators Using `ctest` + +## Option 1: Using CMake + +```bash +cd openairinterface5g +mkdir build && cd build +cmake .. -GNinja -DENABLE_PHYSIM_TESTS=ON +ninja tests +ctest +``` + +## Option 2: Using the `build_oai` script + +This method simplifies the process by automatically building the simulators with ctest support. + +```bash +cd openairinterface5g/cmake_targets +./build_oai --ninja --phy_simulators +cd ran_build/build +ctest +``` + +# `ctest` Usage Tips + +## Useful Options + +Use the following options to customize test execution: + +| Option | Description | +|------------------|------------------------------------------------------| +| `-R ` | Run tests matching the regex pattern (by name) | +| `-L ` | Run tests with labels matching the regex pattern | +| `-E ` | Exclude tests matching the regex pattern (by name) | +| `-LE ` | Exclude tests with labels matching the regex pattern | +| `--print-labels` | Display all available test labels | +| `-j ` | Run tests in parallel using specified number of jobs | + +For the complete list of `ctest` options, refer to the manual: + +```bash +man ctest +``` + +## Example + +```bash +# Run only NR ULSCH simulator tests, in parallel +ctest -L nr_ulsch -j 4 +``` + +# Adding a New Physim Test + +To define a new test or modify existing ones, update the following file: + +``` +openair1/PHY/CODING/tests/CMakeLists.txt +``` + +Use the `add_physim_test` macro with the following arguments: + +```cmake +add_physim_test( ) +``` + +### Arguments: + +* ``: Test generation (e.g., `4g` or `5g`) +* ``: Name of the test executable (e.g., `nr_prachsim`) +* ``: Description shown in `ctest` output, useful for categorization and indexing. +* ``: Label used for filtering tests (via `-L`), shown in the ctest output summary as a descriptive tag. +* ``: Command line options passed to the test + +### Example: + +```cmake +# add_physim_test( ) +add_physim_test(5g nr_prachsim test8 "15kHz SCS, 25 PRBs" -a -s -30 -n 300 -p 99 -R 25 -m 0) +``` + +These tests are run automatically as part of the following +pipeline: [RAN-PhySim-Cluster CI](https://jenkins-oai.eurecom.fr/job/RAN-PhySim-Cluster/) + +# Legacy Bash Autotest (Deprecated) + +> **Note:** Autotest script, configuration, and documentation, are no longer maintained. + +For legacy support or archival purposes, you can still find this implementation by checking out the historical tag: + +```bash +git checkout 2025.w18 +``` From c861dcb7d0dae1c5f54f2f32dec0ea2b50728d87 Mon Sep 17 00:00:00 2001 From: Jaroslava Fiedlerova Date: Fri, 16 May 2025 12:18:31 +0200 Subject: [PATCH 15/15] Add doc on how to rerun failed CI physim test --- doc/physical-simulators.md | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/doc/physical-simulators.md b/doc/physical-simulators.md index 2088ca90cb..662daa2a95 100644 --- a/doc/physical-simulators.md +++ b/doc/physical-simulators.md @@ -125,7 +125,30 @@ add_physim_test(5g nr_prachsim test8 "15kHz SCS, 25 PRBs" -a -s -30 -n 300 -p 99 ``` These tests are run automatically as part of the following -pipeline: [RAN-PhySim-Cluster CI](https://jenkins-oai.eurecom.fr/job/RAN-PhySim-Cluster/) +pipelines: [RAN-PhySim-Cluster-4G](https://jenkins-oai.eurecom.fr/job/RAN-PhySim-Cluster-4G/) and [RAN-PhySim-Cluster-5G](https://jenkins-oai.eurecom.fr/job/RAN-PhySim-Cluster-5G/) + +### How to rerun failed CI tests using `ctest` + +Ctest automatically logs the failed tests in LastTestsFailed.log. This log is archived in +the CI artifacts and can be reused locally to rerun only those failed tests. + +```bash +# 1. Navigate to the build directory, build physims +cd ~/openairinterface5g/build +cmake .. -GNinja -DENABLE_PHYSIM_TESTS=ON && ninja tests + +# 2. Create ctest directory structure +ctest -N --quiet + +# 3. Unzip the test logs artifact from the CI run +unzip /path/to/test_logs_123.zip + +# 4. Copy the LastTestsFailed.log file to the expected location +cp /path/to/test_logs_123/test_logs/LastTestsFailed.log ./Testing/Temporary/ + +# 5. Rerun only the failed tests using ctest +ctest --rerun-failed +``` # Legacy Bash Autotest (Deprecated)