Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
OpenXG
OpenXG-RAN
Commits
e8681030
Commit
e8681030
authored
Feb 13, 2023
by
Robert Schmidt
Committed by
Makarand kulkarni
Jun 12, 2023
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Entry point scripts: do not generate configuration files
parent
9f900b51
Changes
12
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
74 additions
and
1135 deletions
+74
-1135
docker/scripts/enb_entrypoint.sh
docker/scripts/enb_entrypoint.sh
+15
-50
docker/scripts/enb_parameters.yaml
docker/scripts/enb_parameters.yaml
+0
-400
docker/scripts/generateTemplate.py
docker/scripts/generateTemplate.py
+0
-116
docker/scripts/gnb-aw2s_entrypoint.sh
docker/scripts/gnb-aw2s_entrypoint.sh
+7
-1
docker/scripts/gnb_entrypoint.sh
docker/scripts/gnb_entrypoint.sh
+13
-53
docker/scripts/gnb_parameters.yaml
docker/scripts/gnb_parameters.yaml
+0
-309
docker/scripts/lte_ru_entrypoint.sh
docker/scripts/lte_ru_entrypoint.sh
+15
-29
docker/scripts/lte_ue_entrypoint.sh
docker/scripts/lte_ue_entrypoint.sh
+11
-1
docker/scripts/lte_ue_parameters.yaml
docker/scripts/lte_ue_parameters.yaml
+0
-37
docker/scripts/lte_ue_sim_parameters.yaml
docker/scripts/lte_ue_sim_parameters.yaml
+0
-47
docker/scripts/nr_ue_entrypoint.sh
docker/scripts/nr_ue_entrypoint.sh
+13
-43
docker/scripts/nr_ue_parameters.yaml
docker/scripts/nr_ue_parameters.yaml
+0
-49
No files found.
docker/scripts/enb_entrypoint.sh
View file @
e8681030
...
@@ -3,59 +3,24 @@
...
@@ -3,59 +3,24 @@
set
-uo
pipefail
set
-uo
pipefail
PREFIX
=
/opt/oai-enb
PREFIX
=
/opt/oai-enb
RRC_INACTIVITY_THRESHOLD
=
${
RRC_INACTIVITY_THRESHOLD
:-
0
}
CONFIGFILE
=
$PREFIX
/etc/enb.conf
ENABLE_MEASUREMENT_REPORTS
=
${
ENABLE_MEASUREMENT_REPORTS
:-
no
}
ENABLE_X2
=
${
ENABLE_X2
:-
no
}
THREAD_PARALLEL_CONFIG
=
${
THREAD_PARALLEL_CONFIG
:-
PARALLEL_SINGLE_THREAD
}
# Based another env var, pick one template to use
if
[[
-v
USE_VOLUMED_CONF
]]
;
then
if
[[
-v
USE_FDD_CU
]]
;
then
cp
$PREFIX
/etc/cu.fdd.conf
$PREFIX
/etc/enb.conf
;
fi
cp
$PREFIX
/etc/mounted.conf
$PREFIX
/etc/enb.conf
if
[[
-v
USE_FDD_DU
]]
;
then
cp
$PREFIX
/etc/du.fdd.conf
$PREFIX
/etc/enb.conf
;
fi
else
if
[[
-v
USE_FDD_MONO
]]
;
then
cp
$PREFIX
/etc/enb.fdd.conf
$PREFIX
/etc/enb.conf
;
fi
echo
"ERROR: No configuration file provided."
if
[[
-v
USE_TDD_MONO
]]
;
then
cp
$PREFIX
/etc/enb.tdd.conf
$PREFIX
/etc/enb.conf
;
fi
echo
"Please set USE_VOLUMED_CONF and mount a configuration file at
$PREFIX
/etc/mounted.conf"
if
[[
-v
USE_FDD_FAPI_RCC
]]
;
then
cp
$PREFIX
/etc/rcc.nfapi.fdd.conf
$PREFIX
/etc/enb.conf
;
fi
exit
1
if
[[
-v
USE_FDD_IF4P5_RCC
]]
;
then
cp
$PREFIX
/etc/rcc.if4p5.fdd.conf
$PREFIX
/etc/enb.conf
;
fi
fi
if
[[
-v
USE_TDD_IF4P5_RCC
]]
;
then
cp
$PREFIX
/etc/rcc.if4p5.tdd.conf
$PREFIX
/etc/enb.conf
;
fi
if
[[
-v
USE_FDD_RRU
]]
;
then
cp
$PREFIX
/etc/rru.fdd.conf
$PREFIX
/etc/enb.conf
;
fi
if
[[
-v
USE_TDD_RRU
]]
;
then
cp
$PREFIX
/etc/rru.tdd.conf
$PREFIX
/etc/enb.conf
;
fi
if
[[
-v
USE_NFAPI_VNF
]]
;
then
cp
$PREFIX
/etc/enb.nfapi.vnf.conf
$PREFIX
/etc/enb.conf
;
fi
# Sometimes, the templates are not enough. We mount a conf file on $PREFIX/etc. It can be a template itself.
if
[[
-v
USE_VOLUMED_CONF
]]
;
then
cp
$PREFIX
/etc/mounted.conf
$PREFIX
/etc/enb.conf
;
fi
# Only this template will be manipulated
CONFIG_FILES
=
`
ls
$PREFIX
/etc/enb.conf
||
true
`
for
c
in
${
CONFIG_FILES
}
;
do
# Sometimes templates have no pattern to be replaced.
if
!
grep
-oP
'@[a-zA-Z0-9_]+@'
${
c
}
;
then
echo
"Configuration is already set"
break
fi
# grep variable names (format: ${VAR}) from template to be rendered
VARS
=
$(
grep
-oP
'@[a-zA-Z0-9_]+@'
${
c
}
|
sort
|
uniq
| xargs
)
# create sed expressions for substituting each occurrence of ${VAR}
# with the value of the environment variable "VAR"
EXPRESSIONS
=
""
for
v
in
${
VARS
}
;
do
NEW_VAR
=
`
echo
$v
|
sed
-e
"s#@##g"
`
if
[[
"
${
!NEW_VAR
}
x"
==
"x"
]]
;
then
echo
"Error: Environment variable '
${
NEW_VAR
}
' is not set."
\
"Config file '
$(
basename
$c
)
' requires all of
$VARS
."
exit
1
fi
EXPRESSIONS
=
"
${
EXPRESSIONS
}
;s|
${
v
}
|
${
!NEW_VAR
}
|g"
done
EXPRESSIONS
=
"
${
EXPRESSIONS
#
';'
}
"
# render template and inline replace config file
if
[
!
-f
$CONFIGFILE
]
;
then
sed
-i
"
${
EXPRESSIONS
}
"
${
c
}
echo
"No configuration file found: please mount at
$CONFIGFILE
"
exit
255
fi
echo
"=================================="
echo
"=================================="
echo
"== Configuration file:
${
c
}
"
echo
"== Configuration file:"
cat
${
c
}
cat
$CONFIGFILE
done
# Load the USRP binaries
# Load the USRP binaries
echo
"=================================="
echo
"=================================="
...
...
docker/scripts/enb_parameters.yaml
deleted
100644 → 0
View file @
9f900b51
This diff is collapsed.
Click to expand it.
docker/scripts/generateTemplate.py
deleted
100644 → 0
View file @
9f900b51
#/*
# * 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
# */
#---------------------------------------------------------------------
#-----------------------------------------------------------
# Import
#-----------------------------------------------------------
import
glob
import
re
import
yaml
import
os
import
sys
def
main
():
#read yaml input parameters
f
=
open
(
f'
{
sys
.
argv
[
1
]
}
'
,)
data
=
yaml
.
full_load
(
f
)
initial_path
=
f'
{
data
[
0
][
"paths"
][
"source_dir"
]
}
'
dir
=
glob
.
glob
(
initial_path
+
'/**/*.conf'
,
recursive
=
True
)
#identify configs, read and replace corresponding values
for
config
in
data
[
1
][
"configurations"
]:
filePrefix
=
config
[
"filePrefix"
]
outputfilename
=
config
[
"outputfilename"
]
print
(
'================================================'
)
print
(
'filePrefix = '
+
filePrefix
)
print
(
'outputfilename = '
+
outputfilename
)
found
=
False
for
inputfile
in
dir
:
if
found
:
continue
if
inputfile
.
find
(
filePrefix
)
>=
0
:
prefix_outputfile
=
{
"cu.band7.tm1.25PRB"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"du.band7.tm1.25PRB"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"rru.fdd"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"rru.tdd"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"enb.band7.tm1.fr1.25PRB.usrpb210.conf"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"enb.band40.tm1.25PRB.FairScheduler.usrpb210"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"rcc.band7.tm1.nfapi"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"rcc.band7.tm1.if4p5.lo.25PRB"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"rcc.band40.tm1.25PRB"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"gnb.band78.tm1.fr1.106PRB.usrpb210.conf"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"gnb.band78.sa.fr1.106PRB.usrpn310.conf"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"gnb.sa.band78.fr1.51PRB.usrpb210.conf"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"gnb.sa.band66.fr1.106PRB.usrpn300.conf"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"gNB_SA_CU.conf"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"gNB_SA_DU.conf"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"proxy_gnb.band78.sa.fr1.106PRB.usrpn310.conf"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"proxy_rcc.band7.tm1.nfapi.conf"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"proxy_nr-ue.nfapi.conf"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"ue.nfapi"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
,
"ue_sim_ci"
:
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
/
{
outputfilename
}
'
}
print
(
'inputfile = '
+
inputfile
)
found
=
True
if
filePrefix
in
prefix_outputfile
:
outputfile1
=
prefix_outputfile
[
filePrefix
]
directory
=
f'
{
data
[
0
][
"paths"
][
"dest_dir"
]
}
'
if
not
os
.
path
.
exists
(
directory
):
os
.
makedirs
(
directory
,
exist_ok
=
True
)
with
open
(
f'
{
inputfile
}
'
,
mode
=
'r'
)
as
inputfile
,
\
open
(
outputfile1
,
mode
=
'w'
)
as
outputfile
:
for
line
in
inputfile
:
if
re
.
search
(
r'EHPLMN_LIST'
,
line
):
outputfile
.
write
(
line
)
continue
templine
=
line
for
key
in
config
[
"config"
]:
if
templine
.
find
(
key
[
"key"
])
>=
0
:
if
re
.
search
(
r'preference'
,
templine
):
# false positive
continue
if
key
[
"key"
]
!=
'sdr_addrs'
and
re
.
search
(
r'sdr_addrs'
,
templine
):
# false positive
continue
elif
re
.
search
(
'downlink_frequency'
,
line
):
templine
=
re
.
sub
(
r'[0-9]+'
,
key
[
"env"
],
line
)
elif
re
.
search
(
'uplink_frequency_offset'
,
line
):
templine
=
re
.
sub
(
r'[0-9]+'
,
key
[
"env"
],
line
)
# next: matches key = ( "SOMETHING" ) or key = [ "SOMETHING" ]
elif
re
.
search
(
key
[
"key"
]
+
"\s*=\s*[\(\[]\s*
\"
[0-9.a-zA-Z:_-]+
\"
\s*[\)\]]"
,
templine
):
templine
=
re
.
sub
(
"("
+
key
[
"key"
]
+
"\s*=\s*[\(\[]\s*
\"
)[0-9.a-zA-Z:_-]+(
\"
[\)\]])"
,
r'\1'
+
key
[
"env"
]
+
r"\2"
,
templine
)
# next: matches key = "SOMETHING" or key = [SOMETHING],
elif
re
.
search
(
key
[
"key"
]
+
"\s*=\s*[
\"
\[][0-9.a-zA-Z:_/-]+[
\"
\]]"
,
templine
):
templine
=
re
.
sub
(
"("
+
key
[
"key"
]
+
"\s*=\s*[
\"
\[])[0-9.a-zA-Z:_/-]+([
\"
\]])"
,
r'\1'
+
key
[
"env"
]
+
r"\2"
,
templine
)
# next: matches key = NUMBER
elif
re
.
search
(
key
[
"key"
]
+
"\s*=\s*[x0-9]+"
,
templine
):
# x for "0x" hex start
templine
=
re
.
sub
(
"("
+
key
[
"key"
]
+
"\s*=\s*(?:0x)?)[x0-9a-fA-F]+"
,
r"\1"
+
key
[
"env"
],
templine
)
# next: special case for sdr_addrs
elif
key
[
"key"
]
==
'sdr_addrs'
and
re
.
search
(
key
[
"key"
]
+
"\s*=\s*"
,
templine
):
templine
=
re
.
sub
(
"("
+
key
[
"key"
]
+
"\s*=\s*.*$)"
,
key
[
"key"
]
+
" =
\"
"
+
key
[
"env"
]
+
"
\"
"
,
templine
)
outputfile
.
write
(
templine
)
if
__name__
==
"__main__"
:
main
()
docker/scripts/gnb-aw2s_entrypoint.sh
View file @
e8681030
...
@@ -3,6 +3,7 @@
...
@@ -3,6 +3,7 @@
set
-uo
pipefail
set
-uo
pipefail
PREFIX
=
/opt/oai-gnb-aw2s
PREFIX
=
/opt/oai-gnb-aw2s
CONFIGFILE
=
$PREFIX
/etc/gnb.conf
if
[[
-v
USE_VOLUMED_CONF
]]
;
then
if
[[
-v
USE_VOLUMED_CONF
]]
;
then
cp
$PREFIX
/etc/mounted.conf
$PREFIX
/etc/gnb.conf
cp
$PREFIX
/etc/mounted.conf
$PREFIX
/etc/gnb.conf
...
@@ -12,9 +13,14 @@ else
...
@@ -12,9 +13,14 @@ else
exit
1
exit
1
fi
fi
if
[
!
-f
$CONFIGFILE
]
;
then
echo
"No configuration file found: please mount at
$CONFIGFILE
"
exit
255
fi
echo
"=================================="
echo
"=================================="
echo
"== Configuration file:"
echo
"== Configuration file:"
cat
$
PREFIX
/etc/enb.conf
cat
$
CONFIGFILE
# enable printing of stack traces on assert
# enable printing of stack traces on assert
export
gdbStacks
=
1
export
gdbStacks
=
1
...
...
docker/scripts/gnb_entrypoint.sh
View file @
e8681030
...
@@ -3,62 +3,22 @@
...
@@ -3,62 +3,22 @@
set
-uo
pipefail
set
-uo
pipefail
PREFIX
=
/opt/oai-gnb
PREFIX
=
/opt/oai-gnb
ENABLE_X2
=
${
ENABLE_X2
:-
yes
}
CONFIGFILE
=
$PREFIX
/etc/gnb.conf
THREAD_PARALLEL_CONFIG
=
${
THREAD_PARALLEL_CONFIG
:-
PARALLEL_SINGLE_THREAD
}
# Based another env var, pick one template to use
if
[[
-v
USE_VOLUMED_CONF
]]
;
then
cp
$PREFIX
/etc/mounted.conf
$PREFIX
/etc/gnb.conf
if
[[
-v
USE_NSA_TDD_MONO
]]
;
then
cp
$PREFIX
/etc/gnb.nsa.tdd.conf
$PREFIX
/etc/gnb.conf
;
fi
else
if
[[
-v
USE_SA_TDD_MONO
]]
;
then
cp
$PREFIX
/etc/gnb.sa.tdd.conf
$PREFIX
/etc/gnb.conf
;
fi
echo
"Using default configuration"
if
[[
-v
USE_SA_TDD_MONO_B2XX
]]
;
then
cp
$PREFIX
/etc/gnb.sa.tdd.b2xx.conf
$PREFIX
/etc/gnb.conf
;
fi
fi
if
[[
-v
USE_SA_FDD_MONO
]]
;
then
cp
$PREFIX
/etc/gnb.sa.fdd.conf
$PREFIX
/etc/gnb.conf
;
fi
if
[[
-v
USE_SA_CU
]]
;
then
cp
$PREFIX
/etc/gnb.sa.cu.conf
$PREFIX
/etc/gnb.conf
;
fi
if
[[
-v
USE_SA_TDD_DU
]]
;
then
cp
$PREFIX
/etc/gnb.sa.du.tdd.conf
$PREFIX
/etc/gnb.conf
;
fi
if
[[
-v
USE_SA_NFAPI_VNF
]]
;
then
cp
$PREFIX
/etc/gnb.sa.nfapi.vnf.conf
$PREFIX
/etc/gnb.conf
;
fi
# Sometimes, the templates are not enough. We mount a conf file on $PREFIX/etc. It can be a template itself.
if
[[
-v
USE_VOLUMED_CONF
]]
;
then
cp
$PREFIX
/etc/mounted.conf
$PREFIX
/etc/gnb.conf
;
fi
# Defualt Parameters
GNB_ID
=
${
GNB_ID
:-
e00
}
NSSAI_SD
=
${
NSSAI_SD
:-
ffffff
}
# AMF_IP_ADDRESS can be amf ip address of amf fqdn
if
[[
-v
AMF_IP_ADDRESS
]]
&&
[[
"
${
AMF_IP_ADDRESS
}
"
=
~
[
a-zA-Z]
]]
&&
[[
-z
`
getent hosts
$AMF_IP_ADDRESS
|
awk
'{print $1}'
`
]]
;
then
echo
"not able to resolve AMF FQDN"
&&
exit
1
;
fi
[[
-v
AMF_IP_ADDRESS
]]
&&
[[
"
${
AMF_IP_ADDRESS
}
"
=
~
[
a-zA-Z]
]]
&&
AMF_IP_ADDRESS
=
$(
getent hosts
$AMF_IP_ADDRESS
|
awk
'{print $1}'
)
# Only this template will be manipulated
CONFIG_FILES
=
`
ls
$PREFIX
/etc/gnb.conf
||
true
`
for
c
in
${
CONFIG_FILES
}
;
do
# Sometimes templates have no pattern to be replaced.
if
!
grep
-oP
'@[a-zA-Z0-9_]+@'
${
c
}
;
then
echo
"Configuration is already set"
break
fi
# grep variable names (format: ${VAR}) from template to be rendered
VARS
=
$(
grep
-oP
'@[a-zA-Z0-9_]+@'
${
c
}
|
sort
|
uniq
| xargs
)
# create sed expressions for substituting each occurrence of ${VAR}
# with the value of the environment variable "VAR"
EXPRESSIONS
=
""
for
v
in
${
VARS
}
;
do
NEW_VAR
=
`
echo
$v
|
sed
-e
"s#@##g"
`
if
[[
"
${
!NEW_VAR
}
x"
==
"x"
]]
;
then
echo
"Error: Environment variable '
${
NEW_VAR
}
' is not set."
\
"Config file '
$(
basename
$c
)
' requires all of
$VARS
."
exit
1
fi
EXPRESSIONS
=
"
${
EXPRESSIONS
}
;s|
${
v
}
|
${
!NEW_VAR
}
|g"
done
EXPRESSIONS
=
"
${
EXPRESSIONS
#
';'
}
"
# render template and inline replace config file
if
[
!
-f
$CONFIGFILE
]
;
then
sed
-i
"
${
EXPRESSIONS
}
"
${
c
}
echo
"No configuration file found: please mount at
$CONFIGFILE
"
exit
255
fi
echo
"=================================="
echo
"=================================="
echo
"== Configuration file:
${
c
}
"
echo
"== Configuration file:"
cat
${
c
}
cat
$CONFIGFILE
done
# Load the USRP binaries
# Load the USRP binaries
echo
"=================================="
echo
"=================================="
...
...
docker/scripts/gnb_parameters.yaml
deleted
100644 → 0
View file @
9f900b51
#/*
# * 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
# */
---
-
paths
:
source_dir
:
"
ci-scripts/conf_files/"
dest_dir
:
docker/etc
-
configurations
:
-
filePrefix
:
gnb.band78.tm1.fr1.106PRB.usrpb210.conf
outputfilename
:
"
gnb.nsa.tdd.conf"
config
:
-
key
:
gNB_ID
env
:
"
@GNB_ID@"
-
key
:
Active_gNBs
env
:
"
@GNB_NAME@"
-
key
:
gNB_name
env
:
"
@GNB_NAME@"
-
key
:
mcc
env
:
"
@MCC@"
-
key
:
mnc
env
:
"
@MNC@"
-
key
:
mnc_length
env
:
"
@MNC_LENGTH@"
-
key
:
sst
env
:
"
@NSSAI_SST@"
-
key
:
sd
env
:
"
@NSSAI_SD@"
-
key
:
tracking_area_code
env
:
"
@TAC@"
-
key
:
enable_x2
env
:
"
@ENABLE_X2@"
-
key
:
ipv4
env
:
"
@ENB_X2_IP_ADDRESS@"
-
key
:
GNB_INTERFACE_NAME_FOR_S1_MME
env
:
"
@GNB_S1C_IF_NAME@"
-
key
:
GNB_IPV4_ADDRESS_FOR_S1_MME
env
:
"
@GNB_S1C_IP_ADDRESS@"
-
key
:
GNB_INTERFACE_NAME_FOR_S1U
env
:
"
@GNB_S1U_IF_NAME@"
-
key
:
GNB_IPV4_ADDRESS_FOR_S1U
env
:
"
@GNB_S1U_IP_ADDRESS@"
-
key
:
GNB_IPV4_ADDRESS_FOR_X2C
env
:
"
@GNB_X2_IP_ADDRESS@"
-
key
:
rrc_inactivity_threshold
env
:
"
@RRC_INACTIVITY_THRESHOLD@"
-
key
:
parallel_config
env
:
"
@THREAD_PARALLEL_CONFIG@"
-
filePrefix
:
gnb.band78.sa.fr1.106PRB.usrpn310.conf
outputfilename
:
"
gnb.sa.tdd.conf"
config
:
-
key
:
gNB_ID
env
:
"
@GNB_ID@"
-
key
:
Active_gNBs
env
:
"
@GNB_NAME@"
-
key
:
gNB_name
env
:
"
@GNB_NAME@"
-
key
:
mcc
env
:
"
@MCC@"
-
key
:
mnc
env
:
"
@MNC@"
-
key
:
mnc_length
env
:
"
@MNC_LENGTH@"
-
key
:
tracking_area_code
env
:
"
@TAC@"
-
key
:
sst
env
:
"
@NSSAI_SST@"
-
key
:
sd
env
:
"
@NSSAI_SD@"
-
key
:
tracking_area_code
env
:
"
@TAC@"
-
key
:
ipv4
env
:
"
@AMF_IP_ADDRESS@"
-
key
:
GNB_INTERFACE_NAME_FOR_NG_AMF
env
:
"
@GNB_NGA_IF_NAME@"
-
key
:
GNB_IPV4_ADDRESS_FOR_NG_AMF
env
:
"
@GNB_NGA_IP_ADDRESS@"
-
key
:
GNB_INTERFACE_NAME_FOR_NGU
env
:
"
@GNB_NGU_IF_NAME@"
-
key
:
GNB_IPV4_ADDRESS_FOR_NGU
env
:
"
@GNB_NGU_IP_ADDRESS@"
-
key
:
sdr_addrs
env
:
"
@SDR_ADDRS@"
-
key
:
parallel_config
env
:
"
@THREAD_PARALLEL_CONFIG@"
-
filePrefix
:
gnb.sa.band78.fr1.51PRB.usrpb210.conf
outputfilename
:
"
gnb.sa.tdd.b2xx.conf"
config
:
-
key
:
gNB_ID
env
:
"
@GNB_ID@"
-
key
:
Active_gNBs
env
:
"
@GNB_NAME@"
-
key
:
gNB_name
env
:
"
@GNB_NAME@"
-
key
:
mcc
env
:
"
@MCC@"
-
key
:
mnc
env
:
"
@MNC@"
-
key
:
mnc_length
env
:
"
@MNC_LENGTH@"
-
key
:
tracking_area_code
env
:
"
@TAC@"
-
key
:
sst
env
:
"
@NSSAI_SST@"
-
key
:
sd
env
:
"
@NSSAI_SD@"
-
key
:
tracking_area_code
env
:
"
@TAC@"
-
key
:
ipv4
env
:
"
@AMF_IP_ADDRESS@"
-
key
:
GNB_INTERFACE_NAME_FOR_NG_AMF
env
:
"
@GNB_NGA_IF_NAME@"
-
key
:
GNB_IPV4_ADDRESS_FOR_NG_AMF
env
:
"
@GNB_NGA_IP_ADDRESS@"
-
key
:
GNB_INTERFACE_NAME_FOR_NGU
env
:
"
@GNB_NGU_IF_NAME@"
-
key
:
GNB_IPV4_ADDRESS_FOR_NGU
env
:
"
@GNB_NGU_IP_ADDRESS@"
-
key
:
parallel_config
env
:
"
@THREAD_PARALLEL_CONFIG@"
-
filePrefix
:
gnb.sa.band66.fr1.106PRB.usrpn300.conf
outputfilename
:
"
gnb.sa.fdd.conf"
config
:
-
key
:
gNB_ID
env
:
"
@GNB_ID@"
-
key
:
Active_gNBs
env
:
"
@GNB_NAME@"
-
key
:
gNB_name
env
:
"
@GNB_NAME@"
-
key
:
mcc
env
:
"
@MCC@"
-
key
:
mnc
env
:
"
@MNC@"
-
key
:
mnc_length
env
:
"
@MNC_LENGTH@"
-
key
:
tracking_area_code
env
:
"
@TAC@"
-
key
:
sst
env
:
"
@NSSAI_SST@"
-
key
:
sd
env
:
"
@NSSAI_SD@"
-
key
:
tracking_area_code
env
:
"
@TAC@"
-
key
:
ipv4
env
:
"
@AMF_IP_ADDRESS@"
-
key
:
GNB_INTERFACE_NAME_FOR_NG_AMF
env
:
"
@GNB_NGA_IF_NAME@"
-
key
:
GNB_IPV4_ADDRESS_FOR_NG_AMF
env
:
"
@GNB_NGA_IP_ADDRESS@"
-
key
:
GNB_INTERFACE_NAME_FOR_NGU
env
:
"
@GNB_NGU_IF_NAME@"
-
key
:
GNB_IPV4_ADDRESS_FOR_NGU
env
:
"
@GNB_NGU_IP_ADDRESS@"
-
key
:
parallel_config
env
:
"
@THREAD_PARALLEL_CONFIG@"
-
filePrefix
:
gNB_SA_CU.conf
outputfilename
:
"
gnb.sa.cu.conf"
config
:
-
key
:
gNB_ID
env
:
"
@GNB_ID@"
-
key
:
Active_gNBs
env
:
"
@GNB_NAME@"
-
key
:
gNB_name
env
:
"
@GNB_NAME@"
-
key
:
mcc
env
:
"
@MCC@"
-
key
:
mnc
env
:
"
@MNC@"
-
key
:
mnc_length
env
:
"
@MNC_LENGTH@"
-
key
:
tracking_area_code
env
:
"
@TAC@"
-
key
:
sst
env
:
"
@NSSAI_SST@"
-
key
:
sd
env
:
"
@NSSAI_SD@"
-
key
:
tracking_area_code
env
:
"
@TAC@"
-
key
:
ipv4
env
:
"
@AMF_IP_ADDRESS@"
-
key
:
GNB_INTERFACE_NAME_FOR_NG_AMF
env
:
"
@GNB_NGA_IF_NAME@"
-
key
:
GNB_IPV4_ADDRESS_FOR_NG_AMF
env
:
"
@GNB_NGA_IP_ADDRESS@"
-
key
:
GNB_INTERFACE_NAME_FOR_NGU
env
:
"
@GNB_NGU_IF_NAME@"
-
key
:
GNB_IPV4_ADDRESS_FOR_NGU
env
:
"
@GNB_NGU_IP_ADDRESS@"
-
key
:
local_s_if_name
env
:
"
@F1_IF_NAME@"
-
key
:
local_s_address
env
:
"
@F1_CU_IP_ADDRESS@"
-
key
:
local_s_portd
env
:
"
@F1_CU_D_PORT@"
-
key
:
remote_s_address
env
:
"
@F1_DU_IP_ADDRESS@"
-
key
:
remote_s_portd
env
:
"
@F1_DU_D_PORT@"
-
filePrefix
:
gNB_SA_DU.conf
outputfilename
:
"
gnb.sa.du.tdd.conf"
config
:
-
key
:
gNB_ID
env
:
"
@GNB_ID@"
-
key
:
Active_gNBs
env
:
"
@GNB_NAME@"
-
key
:
gNB_name
env
:
"
@GNB_NAME@"
-
key
:
mcc
env
:
"
@MCC@"
-
key
:
mnc
env
:
"
@MNC@"
-
key
:
mnc_length
env
:
"
@MNC_LENGTH@"
-
key
:
tracking_area_code
env
:
"
@TAC@"
-
key
:
sst
env
:
"
@NSSAI_SST@"
-
key
:
sd
env
:
"
@NSSAI_SD@"
-
key
:
tracking_area_code
env
:
"
@TAC@"
-
key
:
ipv4
env
:
"
@AMF_IP_ADDRESS@"
-
key
:
GNB_INTERFACE_NAME_FOR_NG_AMF
env
:
"
@GNB_NGA_IF_NAME@"
-
key
:
GNB_IPV4_ADDRESS_FOR_NG_AMF
env
:
"
@GNB_NGA_IP_ADDRESS@"
-
key
:
GNB_INTERFACE_NAME_FOR_NGU
env
:
"
@GNB_NGU_IF_NAME@"
-
key
:
GNB_IPV4_ADDRESS_FOR_NGU
env
:
"
@GNB_NGU_IP_ADDRESS@"
-
key
:
parallel_config
env
:
"
@THREAD_PARALLEL_CONFIG@"
-
key
:
local_n_if_name
env
:
"
@F1_IF_NAME@"
-
key
:
local_n_address
env
:
"
@F1_DU_IP_ADDRESS@"
-
key
:
local_n_portd
env
:
"
@F1_DU_D_PORT@"
-
key
:
remote_n_address
env
:
"
@F1_CU_IP_ADDRESS@"
-
key
:
remote_n_portd
env
:
"
@F1_CU_D_PORT@"
-
filePrefix
:
proxy_gnb.band78.sa.fr1.106PRB.usrpn310.conf
outputfilename
:
"
gnb.sa.nfapi.vnf.conf"
config
:
-
key
:
gNB_ID
env
:
"
@GNB_ID@"
-
key
:
Active_gNBs
env
:
"
@GNB_NAME@"
-
key
:
gNB_name
env
:
"
@GNB_NAME@"
-
key
:
mcc
env
:
"
@MCC@"
-
key
:
mnc
env
:
"
@MNC@"
-
key
:
mnc_length
env
:
"
@MNC_LENGTH@"
-
key
:
tracking_area_code
env
:
"
@TAC@"
-
key
:
sst
env
:
"
@NSSAI_SST@"
-
key
:
sd
env
:
"
@NSSAI_SD@"
-
key
:
tracking_area_code
env
:
"
@TAC@"
-
key
:
ipv4
env
:
"
@AMF_IP_ADDRESS@"
-
key
:
GNB_INTERFACE_NAME_FOR_NG_AMF
env
:
"
@GNB_NGA_IF_NAME@"
-
key
:
GNB_IPV4_ADDRESS_FOR_NG_AMF
env
:
"
@GNB_NGA_IP_ADDRESS@"
-
key
:
GNB_INTERFACE_NAME_FOR_NGU
env
:
"
@GNB_NGU_IF_NAME@"
-
key
:
GNB_IPV4_ADDRESS_FOR_NGU
env
:
"
@GNB_NGU_IP_ADDRESS@"
-
key
:
parallel_config
env
:
"
@THREAD_PARALLEL_CONFIG@"
-
key
:
local_s_if_name
env
:
"
@LOCAL_S_IF_NAME@"
-
key
:
remote_s_address
env
:
"
@REMOTE_S_ADDRESS@"
-
key
:
local_s_address
env
:
"
@LOCAL_S_ADDRESS@"
docker/scripts/lte_ru_entrypoint.sh
View file @
e8681030
...
@@ -3,39 +3,25 @@
...
@@ -3,39 +3,25 @@
set
-uo
pipefail
set
-uo
pipefail
PREFIX
=
/opt/oai-lte-ru
PREFIX
=
/opt/oai-lte-ru
CONFIGFILE
=
$PREFIX
/etc/rru.conf
# Based another env var, pick one template to use
# Based another env var, pick one template to use
if
[[
-v
USE_FDD_RRU
]]
;
then
cp
$PREFIX
/etc/rru.fdd.conf
$PREFIX
/etc/rru.conf
;
fi
if
[[
-v
USE_VOLUMED_CONF
]]
;
then
if
[[
-v
USE_TDD_RRU
]]
;
then
cp
$PREFIX
/etc/rru.tdd.conf
$PREFIX
/etc/rru.conf
;
fi
cp
$PREFIX
/etc/rru.fdd.conf
$PREFIX
/etc/rru.conf
else
# Only this template will be manipulated
echo
"ERROR: No configuration file provided."
CONFIG_FILES
=
`
ls
$PREFIX
/etc/rru.conf
||
true
`
echo
"Please set USE_VOLUMED_CONF and mount a configuration file at
$PREFIX
/etc/mounted.conf"
exit
1
for
c
in
${
CONFIG_FILES
}
;
do
fi
# grep variable names (format: ${VAR}) from template to be rendered
VARS
=
$(
grep
-oP
'@[a-zA-Z0-9_]+@'
${
c
}
|
sort
|
uniq
| xargs
)
# create sed expressions for substituting each occurrence of ${VAR}
# with the value of the environment variable "VAR"
EXPRESSIONS
=
""
for
v
in
${
VARS
}
;
do
NEW_VAR
=
`
echo
$v
|
sed
-e
"s#@##g"
`
if
[[
"
${
!NEW_VAR
}
x"
==
"x"
]]
;
then
echo
"Error: Environment variable '
${
NEW_VAR
}
' is not set."
\
"Config file '
$(
basename
$c
)
' requires all of
$VARS
."
exit
1
fi
EXPRESSIONS
=
"
${
EXPRESSIONS
}
;s|
${
v
}
|
${
!NEW_VAR
}
|g"
done
EXPRESSIONS
=
"
${
EXPRESSIONS
#
';'
}
"
# render template and inline replace config file
if
[
!
-f
$CONFIGFILE
]
;
then
sed
-i
"
${
EXPRESSIONS
}
"
${
c
}
echo
"No configuration file found: please mount at
$CONFIGFILE
"
exit
255
fi
echo
"=================================="
echo
"=================================="
echo
"== Configuration file:
${
c
}
"
echo
"== Configuration file:"
cat
${
c
}
cat
$CONFIGFILE
done
# Load the USRP binaries
# Load the USRP binaries
echo
"=================================="
echo
"=================================="
...
...
docker/scripts/lte_ue_entrypoint.sh
View file @
e8681030
...
@@ -3,6 +3,16 @@
...
@@ -3,6 +3,16 @@
set
-uo
pipefail
set
-uo
pipefail
PREFIX
=
/opt/oai-lte-ue
PREFIX
=
/opt/oai-lte-ue
CONFIGFILE
=
$PREFIX
/etc/ue_usim.conf
if
[
!
-f
$CONFIGFILE
]
;
then
echo
"No configuration file found: please mount at
$CONFIGFILE
"
exit
255
fi
echo
"=================================="
echo
"== Configuration file:"
cat
$CONFIGFILE
# Based another env var, pick one template to use
# Based another env var, pick one template to use
if
[[
-v
USE_NFAPI
]]
;
then
cp
$PREFIX
/etc/ue.nfapi.conf
$PREFIX
/etc/ue.conf
;
fi
if
[[
-v
USE_NFAPI
]]
;
then
cp
$PREFIX
/etc/ue.nfapi.conf
$PREFIX
/etc/ue.conf
;
fi
...
@@ -39,7 +49,7 @@ done
...
@@ -39,7 +49,7 @@ done
#now generate USIM files
#now generate USIM files
# At this point all operations will be run from $PREFIX!
# At this point all operations will be run from $PREFIX!
cd
$PREFIX
cd
$PREFIX
$PREFIX
/bin/conf2uedata
-c
$
PREFIX
/etc/ue_usim.conf
-o
$PREFIX
$PREFIX
/bin/conf2uedata
-c
$
CONFIGFILE
-o
$PREFIX
# Load the USRP binaries
# Load the USRP binaries
echo
"=================================="
echo
"=================================="
...
...
docker/scripts/lte_ue_parameters.yaml
deleted
100644 → 0
View file @
9f900b51
#/*
# * 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
# */
---
-
paths
:
source_dir
:
"
ci-scripts/conf_files/"
dest_dir
:
docker/etc
-
configurations
:
-
filePrefix
:
ue.nfapi
outputfilename
:
"
ue.nfapi.conf"
config
:
-
key
:
remote_n_address
env
:
"
@ENB_IP_ADDRESS@"
-
key
:
local_n_address
env
:
"
@LTE_UE_IP_ADDRESS@"
-
key
:
local_n_if_name
env
:
"
@UE_NFAPI_IF_NAME@"
docker/scripts/lte_ue_sim_parameters.yaml
deleted
100644 → 0
View file @
9f900b51
#/*
# * 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
# */
---
-
paths
:
source_dir
:
"
openair3/NAS/TOOLS/"
dest_dir
:
docker/etc
-
configurations
:
-
filePrefix
:
ue_sim_ci
outputfilename
:
"
ue_usim.conf"
config
:
-
key
:
MNC
env
:
"
@MNC@"
-
key
:
MCC
env
:
"
@MCC@"
-
key
:
MSIN
env
:
"
@SHORT_IMSI@"
-
key
:
USIM_API_K
env
:
"
@LTE_KEY@"
-
key
:
OPC
env
:
"
@OPC@"
-
key
:
MSISDN
env
:
"
@MSISDN@"
-
key
:
HPLMN
env
:
"
@HPLMN@"
-
key
:
OPLMN_LIST
env
:
"
@HPLMN@"
docker/scripts/nr_ue_entrypoint.sh
View file @
e8681030
...
@@ -3,52 +3,22 @@
...
@@ -3,52 +3,22 @@
set
-uo
pipefail
set
-uo
pipefail
PREFIX
=
/opt/oai-nr-ue
PREFIX
=
/opt/oai-nr-ue
CONFIGFILE
=
$PREFIX
/etc/nr-ue.conf
# Based another env var, pick one template to use
if
[[
-v
USE_VOLUMED_CONF
]]
;
then
if
[[
-v
USE_NFAPI
]]
;
then
cp
$PREFIX
/etc/nr-ue.nfapi.conf
$PREFIX
/etc/nr-ue.conf
;
fi
cp
$PREFIX
/etc/mounted.conf
$PREFIX
/etc/nr-ue.conf
# Sometimes, the templates are not enough. We mount a conf file on $PREFIX/etc. It can be a template itself.
else
if
[[
-v
USE_VOLUMED_CONF
]]
;
then
cp
$PREFIX
/etc/mounted.conf
$PREFIX
/etc/nr-ue.conf
;
fi
echo
"Using default configuration"
# if none, pick the default
fi
if
[
!
-f
$PREFIX
/etc/nr-ue.conf
]
;
then
cp
$PREFIX
/etc/nr-ue-sim.conf
$PREFIX
/etc/nr-ue.conf
;
fi
# RFSIMULATOR can have ip-address or service name
if
[[
-v
RFSIMULATOR
]]
&&
[[
"
${
RFSIMULATOR
}
"
=
~
[
a-zA-Z]
]]
&&
[[
-z
`
getent hosts
$RFSIMULATOR
|
awk
'{print $1}'
`
]]
;
then
echo
"not able to resolve RFSIMULATOR FQDN"
&&
exit
1
;
fi
[[
-v
RFSIMULATOR
]]
&&
[[
"
${
RFSIMULATOR
}
"
=
~
[
a-zA-Z]
]]
&&
RFSIMULATOR
=
$(
getent hosts
$RFSIMULATOR
|
awk
'{print $1}'
)
# Only this template will be manipulated
CONFIG_FILES
=
`
ls
$PREFIX
/etc/nr-ue.conf
||
true
`
for
c
in
${
CONFIG_FILES
}
;
do
# Sometimes templates have no pattern to be replaced.
if
!
grep
-oP
'@[a-zA-Z0-9_]+@'
${
c
}
;
then
echo
"Configuration is already set"
break
fi
# grep variable names (format: ${VAR}) from template to be rendered
VARS
=
$(
grep
-oP
'@[a-zA-Z0-9_]+@'
${
c
}
|
sort
|
uniq
| xargs
)
# create sed expressions for substituting each occurrence of ${VAR}
# with the value of the environment variable "VAR"
EXPRESSIONS
=
""
for
v
in
${
VARS
}
;
do
NEW_VAR
=
`
echo
$v
|
sed
-e
"s#@##g"
`
if
[[
"
${
!NEW_VAR
}
x"
==
"x"
]]
;
then
echo
"Error: Environment variable '
${
NEW_VAR
}
' is not set."
\
"Config file '
$(
basename
$c
)
' requires all of
$VARS
."
exit
1
fi
EXPRESSIONS
=
"
${
EXPRESSIONS
}
;s|
${
v
}
|
${
!NEW_VAR
}
|g"
done
EXPRESSIONS
=
"
${
EXPRESSIONS
#
';'
}
"
# render template and inline replace config file
if
[
!
-f
$CONFIGFILE
]
;
then
sed
-i
"
${
EXPRESSIONS
}
"
${
c
}
echo
"No configuration file found: please mount at
$CONFIGFILE
"
exit
255
fi
echo
"=================================="
echo
"=================================="
echo
"== Configuration file:
${
c
}
"
echo
"== Configuration file:"
cat
${
c
}
cat
$CONFIGFILE
done
# Load the USRP binaries
# Load the USRP binaries
echo
"=================================="
echo
"=================================="
...
...
docker/scripts/nr_ue_parameters.yaml
deleted
100644 → 0
View file @
9f900b51
#/*
# * 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
# */
---
-
paths
:
source_dir
:
"
ci-scripts/conf_files/"
dest_dir
:
docker/etc
-
configurations
:
-
filePrefix
:
proxy_nr-ue.nfapi.conf
outputfilename
:
"
nr-ue.nfapi.conf"
config
:
-
key
:
imsi
env
:
"
@FULL_IMSI@"
-
key
:
key
env
:
"
@FULL_KEY@"
-
key
:
opc
env
:
"
@OPC@"
-
key
:
dnn
env
:
"
@DNN@"
-
key
:
nssai_sst
env
:
"
@NSSAI_SST@"
-
key
:
nssai_sd
env
:
"
@NSSAI_SD@"
-
key
:
remote_n_address
env
:
"
@GNB_IP_ADDRESS@"
-
key
:
local_n_address
env
:
"
@NR_UE_IP_ADDRESS@"
-
key
:
local_n_if_name
env
:
"
@NR_UE_NFAPI_IF_NAME@"
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment