Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
slapos
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
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
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
Paul Graydon
slapos
Commits
c820d8e5
Commit
c820d8e5
authored
Jan 04, 2022
by
Joanne Hugé
Browse files
Options
Browse Files
Download
Plain Diff
Update Release Candidate
parents
b78556f7
8d9ed791
Changes
30
Hide whitespace changes
Inline
Side-by-side
Showing
30 changed files
with
339 additions
and
39 deletions
+339
-39
component/python-2.7/buildout.cfg
component/python-2.7/buildout.cfg
+1
-0
component/python-2.7/py27-subproc-closefds-fast.patch
component/python-2.7/py27-subproc-closefds-fast.patch
+50
-0
software/fluentd/test/test.py
software/fluentd/test/test.py
+4
-3
software/ors-amarisoft/buildout.hash.cfg
software/ors-amarisoft/buildout.hash.cfg
+8
-8
software/ors-amarisoft/config/enb.jinja2.cfg
software/ors-amarisoft/config/enb.jinja2.cfg
+3
-3
software/ors-amarisoft/config/gnb.jinja2.cfg
software/ors-amarisoft/config/gnb.jinja2.cfg
+3
-3
software/ors-amarisoft/instance-enb-epc.jinja2.cfg
software/ors-amarisoft/instance-enb-epc.jinja2.cfg
+2
-2
software/ors-amarisoft/instance-enb-input-schema.jinja2.json
software/ors-amarisoft/instance-enb-input-schema.jinja2.json
+12
-0
software/ors-amarisoft/instance-enb.jinja2.cfg
software/ors-amarisoft/instance-enb.jinja2.cfg
+12
-5
software/ors-amarisoft/instance-epc.jinja2.cfg
software/ors-amarisoft/instance-epc.jinja2.cfg
+7
-7
software/ors-amarisoft/instance-gnb-epc.jinja2.cfg
software/ors-amarisoft/instance-gnb-epc.jinja2.cfg
+2
-2
software/ors-amarisoft/instance-gnb-input-schema.jinja2.json
software/ors-amarisoft/instance-gnb-input-schema.jinja2.json
+12
-0
software/ors-amarisoft/instance-gnb.jinja2.cfg
software/ors-amarisoft/instance-gnb.jinja2.cfg
+12
-5
software/ors-amarisoft/instance-tdd1900-enb-epc-input-schema.json
.../ors-amarisoft/instance-tdd1900-enb-epc-input-schema.json
+12
-0
software/ors-amarisoft/instance-tdd1900-enb-input-schema.json
...ware/ors-amarisoft/instance-tdd1900-enb-input-schema.json
+12
-0
software/ors-amarisoft/instance-tdd1900-gnb-epc-input-schema.json
.../ors-amarisoft/instance-tdd1900-gnb-epc-input-schema.json
+12
-0
software/ors-amarisoft/instance-tdd1900-gnb-input-schema.json
...ware/ors-amarisoft/instance-tdd1900-gnb-input-schema.json
+12
-0
software/ors-amarisoft/instance-tdd2600-enb-epc-input-schema.json
.../ors-amarisoft/instance-tdd2600-enb-epc-input-schema.json
+12
-0
software/ors-amarisoft/instance-tdd2600-enb-input-schema.json
...ware/ors-amarisoft/instance-tdd2600-enb-input-schema.json
+12
-0
software/ors-amarisoft/instance-tdd2600-gnb-epc-input-schema.json
.../ors-amarisoft/instance-tdd2600-gnb-epc-input-schema.json
+12
-0
software/ors-amarisoft/instance-tdd2600-gnb-input-schema.json
...ware/ors-amarisoft/instance-tdd2600-gnb-input-schema.json
+12
-0
software/ors-amarisoft/instance-tdd3500-enb-epc-input-schema.json
.../ors-amarisoft/instance-tdd3500-enb-epc-input-schema.json
+12
-0
software/ors-amarisoft/instance-tdd3500-enb-input-schema.json
...ware/ors-amarisoft/instance-tdd3500-enb-input-schema.json
+12
-0
software/ors-amarisoft/instance-tdd3500-gnb-epc-input-schema.json
.../ors-amarisoft/instance-tdd3500-gnb-epc-input-schema.json
+12
-0
software/ors-amarisoft/instance-tdd3500-gnb-input-schema.json
...ware/ors-amarisoft/instance-tdd3500-gnb-input-schema.json
+12
-0
software/ors-amarisoft/instance-tdd3700-enb-epc-input-schema.json
.../ors-amarisoft/instance-tdd3700-enb-epc-input-schema.json
+12
-0
software/ors-amarisoft/instance-tdd3700-enb-input-schema.json
...ware/ors-amarisoft/instance-tdd3700-enb-input-schema.json
+12
-0
software/ors-amarisoft/instance-tdd3700-gnb-epc-input-schema.json
.../ors-amarisoft/instance-tdd3700-gnb-epc-input-schema.json
+12
-0
software/ors-amarisoft/instance-tdd3700-gnb-input-schema.json
...ware/ors-amarisoft/instance-tdd3700-gnb-input-schema.json
+12
-0
software/ors-amarisoft/instance.cfg
software/ors-amarisoft/instance.cfg
+19
-1
No files found.
component/python-2.7/buildout.cfg
View file @
c820d8e5
...
@@ -42,6 +42,7 @@ patches =
...
@@ -42,6 +42,7 @@ patches =
${:_profile_base_location_}/pytracemalloc_pep445.patch#9f3145817afa2b7fad801fde8447e396
${:_profile_base_location_}/pytracemalloc_pep445.patch#9f3145817afa2b7fad801fde8447e396
${:_profile_base_location_}/disabled_module_list.patch#e038a8016475574c810cbaaf0e42f4ac
${:_profile_base_location_}/disabled_module_list.patch#e038a8016475574c810cbaaf0e42f4ac
${:_profile_base_location_}/asyncore_poll_insteadof_select.patch#ab6991c0ee6e25aeb8951e71f280a2f1
${:_profile_base_location_}/asyncore_poll_insteadof_select.patch#ab6991c0ee6e25aeb8951e71f280a2f1
${:_profile_base_location_}/py27-subproc-closefds-fast.patch#e495e44491694a8972da11739206f2e6
url =
url =
http://www.python.org/ftp/python/${:package_version}/Python-${:package_version}${:package_version_suffix}.tar.xz
http://www.python.org/ftp/python/${:package_version}/Python-${:package_version}${:package_version_suffix}.tar.xz
configure-options =
configure-options =
...
...
component/python-2.7/py27-subproc-closefds-fast.patch
0 → 100644
View file @
c820d8e5
From 9a79fa64c6298998d04a5ae6d699222a93cd0cb8 Mon Sep 17 00:00:00 2001
From: Kirill Smelkov <kirr@nexedi.com>
Date: Fri, 24 Dec 2021 13:55:08 +0300
Subject: [PATCH] [py27] subprocess: Use /proc/self/fd/ to know opened file
descriptors
... to avoid O(MAXFD) slowdown on closefds=True.
This is semantic backport of what Python3 does.
---
Lib/subprocess.py | 23 ++++++++++++++++++++++-
1 file changed, 22 insertions(+), 1 deletion(-)
diff --git a/Lib/subprocess.py b/Lib/subprocess.py
index 1f2da0ffbe8..300557220ac 100644
--- a/Lib/subprocess.py
+++ b/Lib/subprocess.py
@@ -869,7 +869,28 @@
def pipe_cloexec(self):
def _close_fds(self, but):
- if hasattr(os, 'closerange'):
+ # try to retrieve list of opened file descriptors to avoid being slow on large MAXFD
+ # https://www.erp5.com/project_section/vifib/forum/python2--subprocess.Popen-is-slow-when-close_fds-True-and-nofile-ulimit-is-high-PO01sREVXn
+ # https://bugs.python.org/issue8052
+ # https://github.com/python/cpython/commit/8facece99a59
+ fdv = None
+ try:
+ fdv = os.listdir('/proc/self/fd')
+ except OSError as e:
+ if e.errno != errno.ENOENT:
+ raise
+ if fdv is not None:
+ for fd_ in fdv:
+ fd = int(fd_)
+ if (0 <= fd <= 2) or fd == but:
+ continue
+ try:
+ os.close(fd)
+ except Exception: # e.g. not KeyboardInterrupt nor SystemExit
+ pass
+
+ # fallback to closing all file descriptors in 3..MAXFD range
+ elif hasattr(os, 'closerange'):
os.closerange(3, but)
os.closerange(but + 1, MAXFD)
else:
--
2.30.2
software/fluentd/test/test.py
View file @
c820d8e5
...
@@ -35,6 +35,7 @@ import subprocess
...
@@ -35,6 +35,7 @@ import subprocess
import
tempfile
import
tempfile
import
time
import
time
import
six
import
six
import
sys
from
six.moves.SimpleHTTPServer
import
SimpleHTTPRequestHandler
from
six.moves.SimpleHTTPServer
import
SimpleHTTPRequestHandler
from
six.moves.socketserver
import
StreamRequestHandler
,
TCPServer
from
six.moves.socketserver
import
StreamRequestHandler
,
TCPServer
...
@@ -171,7 +172,7 @@ class SensorConfTestCase(WendelinTutorialTestCase):
...
@@ -171,7 +172,7 @@ class SensorConfTestCase(WendelinTutorialTestCase):
<source>
<source>
@type exec
@type exec
tag tag.name
tag tag.name
command
python
%s
command
%s
%s
run_interval %ss
run_interval %ss
<parse>
<parse>
keys pressure, humidity, temperature
keys pressure, humidity, temperature
...
@@ -186,7 +187,7 @@ class SensorConfTestCase(WendelinTutorialTestCase):
...
@@ -186,7 +187,7 @@ class SensorConfTestCase(WendelinTutorialTestCase):
<buffer>
<buffer>
flush_mode immediate
flush_mode immediate
</buffer>
</buffer>
</match>'''
%
(
script_path
,
FLUSH_INTERVAL
,
cls
.
_ipv6_address
)
</match>'''
%
(
s
ys
.
executable
,
s
cript_path
,
FLUSH_INTERVAL
,
cls
.
_ipv6_address
)
@
classmethod
@
classmethod
def
sensor_script
(
cls
,
measurementList
):
def
sensor_script
(
cls
,
measurementList
):
...
@@ -280,4 +281,4 @@ class GatewayConfTestCase(WendelinTutorialTestCase):
...
@@ -280,4 +281,4 @@ class GatewayConfTestCase(WendelinTutorialTestCase):
data
,
data
,
msgpack
.
unpackb
(
msgpack
.
unpackb
(
self
.
serve
(
self
.
_wendelin_port
,
WendelinHTTPRequestHandler
)),
self
.
serve
(
self
.
_wendelin_port
,
WendelinHTTPRequestHandler
)),
)
)
\ No newline at end of file
software/ors-amarisoft/buildout.hash.cfg
View file @
c820d8e5
...
@@ -16,27 +16,27 @@
...
@@ -16,27 +16,27 @@
[template]
[template]
filename = instance.cfg
filename = instance.cfg
md5sum =
b65347ea7c1936c2926ef11258cea602
md5sum =
6ea4fa210a91c15278c847a809de5991
[template-lte-enb-epc]
[template-lte-enb-epc]
_update_hash_filename_ = instance-enb-epc.jinja2.cfg
_update_hash_filename_ = instance-enb-epc.jinja2.cfg
md5sum =
0883225f978255ecd343416759c1c5a4
md5sum =
25fae79db2b30be0f365ad967b278c3c
[template-lte-enb]
[template-lte-enb]
_update_hash_filename_ = instance-enb.jinja2.cfg
_update_hash_filename_ = instance-enb.jinja2.cfg
md5sum =
4dc82af266a63b7045279fbf4f1e25e1
md5sum =
fe249168a3f50b0efe6aeae39afb03ae
[template-lte-gnb-epc]
[template-lte-gnb-epc]
_update_hash_filename_ = instance-gnb-epc.jinja2.cfg
_update_hash_filename_ = instance-gnb-epc.jinja2.cfg
md5sum = 5
f8a4d85b26a7181fc8b16e588b88e1e
md5sum = 5
ec4508b02f6e7fbdbe1f37c65b9d897
[template-lte-gnb]
[template-lte-gnb]
_update_hash_filename_ = instance-gnb.jinja2.cfg
_update_hash_filename_ = instance-gnb.jinja2.cfg
md5sum =
d04961535968b1b3e59d18663ec45eae
md5sum =
6deb38b3de44f6e0a43b49fd13f0f072
[template-lte-epc]
[template-lte-epc]
_update_hash_filename_ = instance-epc.jinja2.cfg
_update_hash_filename_ = instance-epc.jinja2.cfg
md5sum =
106d1079275d169a9c07854125aa4fa1
md5sum =
089f62e736cdc620eafc2c47b050fe13
[ue_db.jinja2.cfg]
[ue_db.jinja2.cfg]
filename = config/ue_db.jinja2.cfg
filename = config/ue_db.jinja2.cfg
...
@@ -44,11 +44,11 @@ md5sum = d33163012d6c98efc59161974c649557
...
@@ -44,11 +44,11 @@ md5sum = d33163012d6c98efc59161974c649557
[enb.jinja2.cfg]
[enb.jinja2.cfg]
filename = config/enb.jinja2.cfg
filename = config/enb.jinja2.cfg
md5sum =
d841debc51d9f12555a47d1556a6a3c1
md5sum =
97d9cdd07704cae36c5e4234c87025e8
[gnb.jinja2.cfg]
[gnb.jinja2.cfg]
filename = config/gnb.jinja2.cfg
filename = config/gnb.jinja2.cfg
md5sum =
da64ea9c5003f40987a8bba3f18e8839
md5sum =
b0df7f3b679b25d5296dd67e074364b4
[ltelogs.jinja2.sh]
[ltelogs.jinja2.sh]
filename = ltelogs.jinja2.sh
filename = ltelogs.jinja2.sh
...
...
software/ors-amarisoft/config/enb.jinja2.cfg
View file @
c820d8e5
...
@@ -56,15 +56,15 @@
...
@@ -56,15 +56,15 @@
{
{
/* address of MME for S1AP connection. Must be modified if the MME
/* address of MME for S1AP connection. Must be modified if the MME
runs on a different host. */
runs on a different host. */
mme_addr: "
127.0.1.100
"
mme_addr: "
{{ slapparameter_dict.get('mme_addr', '127.0.1.100') }}
"
},
},
],
],
/* GTP bind address (=address of the ethernet interface connected to
/* GTP bind address (=address of the ethernet interface connected to
the MME). Must be modified if the MME runs on a different host. */
the MME). Must be modified if the MME runs on a different host. */
gtp_addr: "{{
slapparameter_dict.get('gtp_addr', '127.0.1.1')
}}",
gtp_addr: "{{
gtp_addr
}}",
/* high 20 bits of SIB1.cellIdentifier */
/* high 20 bits of SIB1.cellIdentifier */
enb_id:
0x1A2D0
,
enb_id:
{{ slapparameter_dict.get('enb_id', '0x1A2D0') }}
,
/* list of cells */
/* list of cells */
cell_list: [
cell_list: [
...
...
software/ors-amarisoft/config/gnb.jinja2.cfg
View file @
c820d8e5
...
@@ -37,15 +37,15 @@
...
@@ -37,15 +37,15 @@
amf_list: [
amf_list: [
{
{
/* address of AMF for NGAP connection. Must be modified if the AMF runs on a different host. */
/* address of AMF for NGAP connection. Must be modified if the AMF runs on a different host. */
amf_addr: "
127.0.1.100
",
amf_addr: "
{{ slapparameter_dict.get('amf_addr', '127.0.1.100') }}
",
},
},
],
],
/* GTP bind address (=address of the ethernet interface connected to
/* GTP bind address (=address of the ethernet interface connected to
the AMF). Must be modified if the AMF runs on a different host. */
the AMF). Must be modified if the AMF runs on a different host. */
gtp_addr: "{{
slapparameter_dict.get('gtp_addr', '127.0.1.1')
}}",
gtp_addr: "{{
gtp_addr
}}",
gnb_id_bits: 28,
gnb_id_bits: 28,
gnb_id:
0x12345
,
gnb_id:
{{ slapparameter_dict.get('gnb_id', '0x12345') }}
,
nr_support: true,
nr_support: true,
...
...
software/ors-amarisoft/instance-enb-epc.jinja2.cfg
View file @
c820d8e5
...
@@ -12,7 +12,7 @@ develop-eggs-directory = {{ develop_eggs_directory }}
...
@@ -12,7 +12,7 @@ develop-eggs-directory = {{ develop_eggs_directory }}
offline = true
offline = true
[slap-configuration]
[slap-configuration]
recipe = slapos.cookbook:slapconfiguration
.serialised
recipe = slapos.cookbook:slapconfiguration
computer = {{ slap_connection['computer-id'] }}
computer = {{ slap_connection['computer-id'] }}
partition = {{ slap_connection['partition-id'] }}
partition = {{ slap_connection['partition-id'] }}
url = {{ slap_connection['server-url'] }}
url = {{ slap_connection['server-url'] }}
...
@@ -34,7 +34,7 @@ promise = ${:etc}/promise
...
@@ -34,7 +34,7 @@ promise = ${:etc}/promise
log = ${:var}/log
log = ${:var}/log
[request-common-base]
[request-common-base]
recipe = slapos.cookbook:request
.serialised
recipe = slapos.cookbook:request
software-url = {{ slap_connection['software-release-url'] }}
software-url = {{ slap_connection['software-release-url'] }}
server-url = {{ slap_connection['server-url'] }}
server-url = {{ slap_connection['server-url'] }}
computer-id = {{ slap_connection['computer-id'] }}
computer-id = {{ slap_connection['computer-id'] }}
...
...
software/ors-amarisoft/instance-enb-input-schema.jinja2.json
View file @
c820d8e5
...
@@ -26,6 +26,18 @@
...
@@ -26,6 +26,18 @@
"description"
:
"number of DL resource blocks"
,
"description"
:
"number of DL resource blocks"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
{{
default_lte_n_rb_dl
}}
"default"
:
{{
default_lte_n_rb_dl
}}
},
"mme_addr"
:
{
"title"
:
"MME Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"enb_id"
:
{
"title"
:
"eNB ID"
,
"description"
:
"eNB ID"
,
"type"
:
"string"
,
"default"
:
"0x1A2D0"
}
}
}
}
}
}
software/ors-amarisoft/instance-enb.jinja2.cfg
View file @
c820d8e5
...
@@ -15,15 +15,15 @@ develop-eggs-directory = {{ develop_eggs_directory }}
...
@@ -15,15 +15,15 @@ develop-eggs-directory = {{ develop_eggs_directory }}
offline = true
offline = true
[slap-configuration]
[slap-configuration]
recipe = slapos.cookbook:slapconfiguration
.serialised
recipe = slapos.cookbook:slapconfiguration
computer = {{ slap_connection['computer-id'] }}
computer = {{ slap_connection['computer-id'] }}
partition = {{ slap_connection['partition-id'] }}
partition = {{ slap_connection['partition-id'] }}
url = {{ slap_connection['server-url'] }}
url = {{ slap_connection['server-url'] }}
key = {{ slap_connection['key-file'] }}
key = {{ slap_connection['key-file'] }}
cert = {{ slap_connection['cert-file'] }}
cert = {{ slap_connection['cert-file'] }}
configuration.network_name =
VIFIB
configuration.network_name =
RAPIDSPACE
configuration.domain =
vifib.com
configuration.domain =
rapid.space
configuration.mme_ws_port = 9000
configuration.mme_ws_port = 9000
configuration.enb_ws_port = 9002
configuration.enb_ws_port = 9002
configuration.ims_ws_port = 9003
configuration.ims_ws_port = 9003
...
@@ -66,6 +66,7 @@ rendered = ${directory:bin}/${:_buildout_section_name_}
...
@@ -66,6 +66,7 @@ rendered = ${directory:bin}/${:_buildout_section_name_}
mode = 0700
mode = 0700
template =
template =
inline:#!/bin/sh
inline:#!/bin/sh
sudo /opt/amarisoft/rm-tmp-lte | true;
{{ enb }}/lteenb ${directory:etc}/enb.cfg >> ${directory:log}/enb-output.cfg 2>> ${directory:log}/enb-output.cfg
{{ enb }}/lteenb ${directory:etc}/enb.cfg >> ${directory:log}/enb-output.cfg 2>> ${directory:log}/enb-output.cfg
### eNodeB (enb)
### eNodeB (enb)
...
@@ -92,6 +93,7 @@ context =
...
@@ -92,6 +93,7 @@ context =
section directory directory
section directory directory
section slap_configuration slap-configuration
section slap_configuration slap-configuration
key slapparameter_dict slap-configuration:configuration
key slapparameter_dict slap-configuration:configuration
raw gtp_addr {{ local_ipv4 }}
import netaddr netaddr
import netaddr netaddr
[lte-enb-config]
[lte-enb-config]
...
@@ -100,12 +102,17 @@ template = {{ enb_template }}
...
@@ -100,12 +102,17 @@ template = {{ enb_template }}
rendered = ${directory:etc}/enb.cfg
rendered = ${directory:etc}/enb.cfg
[publish-connection-information]
[publish-connection-information]
recipe = slapos.cookbook:publish.serialised
<= monitor-publish
monitor-base-url = ${monitor-instance-parameter:monitor-base-url}
recipe = slapos.cookbook:publish
ipv4 = {{ local_ipv4 }}
[monitor-instance-parameter]
[monitor-instance-parameter]
{% if slapparameter_dict.get("name", None) %}
monitor-title = {{ slapparameter_dict['name'] | string }}
monitor-title = {{ slapparameter_dict['name'] | string }}
{% endif %}
{% if slapparameter_dict.get("monitor-password", None) %}
password = {{ slapparameter_dict['monitor-password'] | string }}
password = {{ slapparameter_dict['monitor-password'] | string }}
{% endif %}
# Add custom promise to check if /dev/sdr0 is busy
# Add custom promise to check if /dev/sdr0 is busy
[sdr-busy-promise]
[sdr-busy-promise]
...
...
software/ors-amarisoft/instance-epc.jinja2.cfg
View file @
c820d8e5
...
@@ -15,15 +15,15 @@ develop-eggs-directory = {{ develop_eggs_directory }}
...
@@ -15,15 +15,15 @@ develop-eggs-directory = {{ develop_eggs_directory }}
offline = true
offline = true
[slap-configuration]
[slap-configuration]
recipe = slapos.cookbook:slapconfiguration
.serialised
recipe = slapos.cookbook:slapconfiguration
computer = {{ slap_connection['computer-id'] }}
computer = {{ slap_connection['computer-id'] }}
partition = {{ slap_connection['partition-id'] }}
partition = {{ slap_connection['partition-id'] }}
url = {{ slap_connection['server-url'] }}
url = {{ slap_connection['server-url'] }}
key = {{ slap_connection['key-file'] }}
key = {{ slap_connection['key-file'] }}
cert = {{ slap_connection['cert-file'] }}
cert = {{ slap_connection['cert-file'] }}
configuration.network_name =
VIFIB
configuration.network_name =
RAPIDSPACE
configuration.domain =
vifib.com
configuration.domain =
rapid.space
configuration.log_size = 50M
configuration.log_size = 50M
configuration.mme_ws_port = 9000
configuration.mme_ws_port = 9000
configuration.enb_ws_port = 9002
configuration.enb_ws_port = 9002
...
@@ -131,14 +131,14 @@ context =
...
@@ -131,14 +131,14 @@ context =
import netaddr netaddr
import netaddr netaddr
key ifup_empty lte-mme-ifup-empty:wrapper-path
key ifup_empty lte-mme-ifup-empty:wrapper-path
[publish-connection-information]
recipe = slapos.cookbook:publish.serialised
monitor-base-url = ${monitor-instance-parameter:monitor-base-url}
[monitor-instance-parameter]
[monitor-instance-parameter]
monitor-title = {{ slapparameter_dict['name'] }}
monitor-title = {{ slapparameter_dict['name'] }}
password = {{ slapparameter_dict['monitor-password'] }}
password = {{ slapparameter_dict['monitor-password'] }}
[publish-connection-information]
<= monitor-publish
recipe = slapos.cookbook:publish
# Add custom promise to check if /dev/sdr0 is busy
# Add custom promise to check if /dev/sdr0 is busy
[tun-up-promise]
[tun-up-promise]
recipe = slapos.cookbook:promise.plugin
recipe = slapos.cookbook:promise.plugin
...
...
software/ors-amarisoft/instance-gnb-epc.jinja2.cfg
View file @
c820d8e5
...
@@ -12,7 +12,7 @@ develop-eggs-directory = {{ develop_eggs_directory }}
...
@@ -12,7 +12,7 @@ develop-eggs-directory = {{ develop_eggs_directory }}
offline = true
offline = true
[slap-configuration]
[slap-configuration]
recipe = slapos.cookbook:slapconfiguration
.serialised
recipe = slapos.cookbook:slapconfiguration
computer = {{ slap_connection['computer-id'] }}
computer = {{ slap_connection['computer-id'] }}
partition = {{ slap_connection['partition-id'] }}
partition = {{ slap_connection['partition-id'] }}
url = {{ slap_connection['server-url'] }}
url = {{ slap_connection['server-url'] }}
...
@@ -34,7 +34,7 @@ promise = ${:etc}/promise
...
@@ -34,7 +34,7 @@ promise = ${:etc}/promise
log = ${:var}/log
log = ${:var}/log
[request-common-base]
[request-common-base]
recipe = slapos.cookbook:request
.serialised
recipe = slapos.cookbook:request
software-url = {{ slap_connection['software-release-url'] }}
software-url = {{ slap_connection['software-release-url'] }}
server-url = {{ slap_connection['server-url'] }}
server-url = {{ slap_connection['server-url'] }}
computer-id = {{ slap_connection['computer-id'] }}
computer-id = {{ slap_connection['computer-id'] }}
...
...
software/ors-amarisoft/instance-gnb-input-schema.jinja2.json
View file @
c820d8e5
...
@@ -32,6 +32,18 @@
...
@@ -32,6 +32,18 @@
"description"
:
"Downlink Bandwidth (in MHz)"
,
"description"
:
"Downlink Bandwidth (in MHz)"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
{{
default_nr_bandwidth
}}
"default"
:
{{
default_nr_bandwidth
}}
},
"amf_addr"
:
{
"title"
:
"AMF Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"gnb_id"
:
{
"title"
:
"gNB ID"
,
"description"
:
"gNB ID"
,
"type"
:
"string"
,
"default"
:
"0x12345"
}
}
}
}
}
}
software/ors-amarisoft/instance-gnb.jinja2.cfg
View file @
c820d8e5
...
@@ -15,15 +15,15 @@ develop-eggs-directory = {{ develop_eggs_directory }}
...
@@ -15,15 +15,15 @@ develop-eggs-directory = {{ develop_eggs_directory }}
offline = true
offline = true
[slap-configuration]
[slap-configuration]
recipe = slapos.cookbook:slapconfiguration
.serialised
recipe = slapos.cookbook:slapconfiguration
computer = {{ slap_connection['computer-id'] }}
computer = {{ slap_connection['computer-id'] }}
partition = {{ slap_connection['partition-id'] }}
partition = {{ slap_connection['partition-id'] }}
url = {{ slap_connection['server-url'] }}
url = {{ slap_connection['server-url'] }}
key = {{ slap_connection['key-file'] }}
key = {{ slap_connection['key-file'] }}
cert = {{ slap_connection['cert-file'] }}
cert = {{ slap_connection['cert-file'] }}
configuration.network_name =
VIFIB
configuration.network_name =
RAPIDSPACE
configuration.domain =
vifib.com
configuration.domain =
rapid.space
configuration.mme_ws_port = 9000
configuration.mme_ws_port = 9000
configuration.enb_ws_port = 9002
configuration.enb_ws_port = 9002
configuration.ims_ws_port = 9003
configuration.ims_ws_port = 9003
...
@@ -66,6 +66,7 @@ rendered = ${directory:bin}/${:_buildout_section_name_}
...
@@ -66,6 +66,7 @@ rendered = ${directory:bin}/${:_buildout_section_name_}
mode = 0700
mode = 0700
template =
template =
inline:#!/bin/sh
inline:#!/bin/sh
sudo /opt/amarisoft/rm-tmp-lte | true;
{{ enb }}/lteenb ${directory:etc}/gnb.cfg >> ${directory:log}/gnb-output.cfg 2>> ${directory:log}/gnb-output.cfg
{{ enb }}/lteenb ${directory:etc}/gnb.cfg >> ${directory:log}/gnb-output.cfg 2>> ${directory:log}/gnb-output.cfg
### eNodeB (enb)
### eNodeB (enb)
...
@@ -92,6 +93,7 @@ context =
...
@@ -92,6 +93,7 @@ context =
section directory directory
section directory directory
section slap_configuration slap-configuration
section slap_configuration slap-configuration
key slapparameter_dict slap-configuration:configuration
key slapparameter_dict slap-configuration:configuration
raw gtp_addr {{ local_ipv4 }}
import netaddr netaddr
import netaddr netaddr
[lte-gnb-config]
[lte-gnb-config]
...
@@ -100,12 +102,17 @@ template = {{ gnb_template }}
...
@@ -100,12 +102,17 @@ template = {{ gnb_template }}
rendered = ${directory:etc}/gnb.cfg
rendered = ${directory:etc}/gnb.cfg
[publish-connection-information]
[publish-connection-information]
recipe = slapos.cookbook:publish.serialised
<= monitor-publish
monitor-base-url = ${monitor-instance-parameter:monitor-base-url}
recipe = slapos.cookbook:publish
ipv4 = {{ local_ipv4 }}
[monitor-instance-parameter]
[monitor-instance-parameter]
{% if slapparameter_dict.get("name", None) %}
monitor-title = {{ slapparameter_dict['name'] | string }}
monitor-title = {{ slapparameter_dict['name'] | string }}
{% endif %}
{% if slapparameter_dict.get("monitor-password", None) %}
password = {{ slapparameter_dict['monitor-password'] | string }}
password = {{ slapparameter_dict['monitor-password'] | string }}
{% endif %}
# Add custom promise to check if /dev/sdr0 is busy
# Add custom promise to check if /dev/sdr0 is busy
[sdr-busy-promise]
[sdr-busy-promise]
...
...
software/ors-amarisoft/instance-tdd1900-enb-epc-input-schema.json
View file @
c820d8e5
...
@@ -26,6 +26,18 @@
...
@@ -26,6 +26,18 @@
"description"
:
"number of DL resource blocks"
,
"description"
:
"number of DL resource blocks"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
100
"default"
:
100
},
"mme_addr"
:
{
"title"
:
"MME Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"enb_id"
:
{
"title"
:
"eNB ID"
,
"description"
:
"eNB ID"
,
"type"
:
"string"
,
"default"
:
"0x1A2D0"
}
}
}
}
}
}
\ No newline at end of file
software/ors-amarisoft/instance-tdd1900-enb-input-schema.json
View file @
c820d8e5
...
@@ -26,6 +26,18 @@
...
@@ -26,6 +26,18 @@
"description"
:
"number of DL resource blocks"
,
"description"
:
"number of DL resource blocks"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
100
"default"
:
100
},
"mme_addr"
:
{
"title"
:
"MME Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"enb_id"
:
{
"title"
:
"eNB ID"
,
"description"
:
"eNB ID"
,
"type"
:
"string"
,
"default"
:
"0x1A2D0"
}
}
}
}
}
}
\ No newline at end of file
software/ors-amarisoft/instance-tdd1900-gnb-epc-input-schema.json
View file @
c820d8e5
...
@@ -32,6 +32,18 @@
...
@@ -32,6 +32,18 @@
"description"
:
"Downlink Bandwidth (in MHz)"
,
"description"
:
"Downlink Bandwidth (in MHz)"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
40
"default"
:
40
},
"amf_addr"
:
{
"title"
:
"AMF Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"gnb_id"
:
{
"title"
:
"gNB ID"
,
"description"
:
"gNB ID"
,
"type"
:
"string"
,
"default"
:
"0x12345"
}
}
}
}
}
}
\ No newline at end of file
software/ors-amarisoft/instance-tdd1900-gnb-input-schema.json
View file @
c820d8e5
...
@@ -32,6 +32,18 @@
...
@@ -32,6 +32,18 @@
"description"
:
"Downlink Bandwidth (in MHz)"
,
"description"
:
"Downlink Bandwidth (in MHz)"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
40
"default"
:
40
},
"amf_addr"
:
{
"title"
:
"AMF Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"gnb_id"
:
{
"title"
:
"gNB ID"
,
"description"
:
"gNB ID"
,
"type"
:
"string"
,
"default"
:
"0x12345"
}
}
}
}
}
}
\ No newline at end of file
software/ors-amarisoft/instance-tdd2600-enb-epc-input-schema.json
View file @
c820d8e5
...
@@ -26,6 +26,18 @@
...
@@ -26,6 +26,18 @@
"description"
:
"number of DL resource blocks"
,
"description"
:
"number of DL resource blocks"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
100
"default"
:
100
},
"mme_addr"
:
{
"title"
:
"MME Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"enb_id"
:
{
"title"
:
"eNB ID"
,
"description"
:
"eNB ID"
,
"type"
:
"string"
,
"default"
:
"0x1A2D0"
}
}
}
}
}
}
\ No newline at end of file
software/ors-amarisoft/instance-tdd2600-enb-input-schema.json
View file @
c820d8e5
...
@@ -26,6 +26,18 @@
...
@@ -26,6 +26,18 @@
"description"
:
"number of DL resource blocks"
,
"description"
:
"number of DL resource blocks"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
100
"default"
:
100
},
"mme_addr"
:
{
"title"
:
"MME Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"enb_id"
:
{
"title"
:
"eNB ID"
,
"description"
:
"eNB ID"
,
"type"
:
"string"
,
"default"
:
"0x1A2D0"
}
}
}
}
}
}
\ No newline at end of file
software/ors-amarisoft/instance-tdd2600-gnb-epc-input-schema.json
View file @
c820d8e5
...
@@ -32,6 +32,18 @@
...
@@ -32,6 +32,18 @@
"description"
:
"Downlink Bandwidth (in MHz)"
,
"description"
:
"Downlink Bandwidth (in MHz)"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
40
"default"
:
40
},
"amf_addr"
:
{
"title"
:
"AMF Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"gnb_id"
:
{
"title"
:
"gNB ID"
,
"description"
:
"gNB ID"
,
"type"
:
"string"
,
"default"
:
"0x12345"
}
}
}
}
}
}
\ No newline at end of file
software/ors-amarisoft/instance-tdd2600-gnb-input-schema.json
View file @
c820d8e5
...
@@ -32,6 +32,18 @@
...
@@ -32,6 +32,18 @@
"description"
:
"Downlink Bandwidth (in MHz)"
,
"description"
:
"Downlink Bandwidth (in MHz)"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
40
"default"
:
40
},
"amf_addr"
:
{
"title"
:
"AMF Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"gnb_id"
:
{
"title"
:
"gNB ID"
,
"description"
:
"gNB ID"
,
"type"
:
"string"
,
"default"
:
"0x12345"
}
}
}
}
}
}
\ No newline at end of file
software/ors-amarisoft/instance-tdd3500-enb-epc-input-schema.json
View file @
c820d8e5
...
@@ -26,6 +26,18 @@
...
@@ -26,6 +26,18 @@
"description"
:
"number of DL resource blocks"
,
"description"
:
"number of DL resource blocks"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
100
"default"
:
100
},
"mme_addr"
:
{
"title"
:
"MME Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"enb_id"
:
{
"title"
:
"eNB ID"
,
"description"
:
"eNB ID"
,
"type"
:
"string"
,
"default"
:
"0x1A2D0"
}
}
}
}
}
}
\ No newline at end of file
software/ors-amarisoft/instance-tdd3500-enb-input-schema.json
View file @
c820d8e5
...
@@ -26,6 +26,18 @@
...
@@ -26,6 +26,18 @@
"description"
:
"number of DL resource blocks"
,
"description"
:
"number of DL resource blocks"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
100
"default"
:
100
},
"mme_addr"
:
{
"title"
:
"MME Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"enb_id"
:
{
"title"
:
"eNB ID"
,
"description"
:
"eNB ID"
,
"type"
:
"string"
,
"default"
:
"0x1A2D0"
}
}
}
}
}
}
\ No newline at end of file
software/ors-amarisoft/instance-tdd3500-gnb-epc-input-schema.json
View file @
c820d8e5
...
@@ -32,6 +32,18 @@
...
@@ -32,6 +32,18 @@
"description"
:
"Downlink Bandwidth (in MHz)"
,
"description"
:
"Downlink Bandwidth (in MHz)"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
40
"default"
:
40
},
"amf_addr"
:
{
"title"
:
"AMF Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"gnb_id"
:
{
"title"
:
"gNB ID"
,
"description"
:
"gNB ID"
,
"type"
:
"string"
,
"default"
:
"0x12345"
}
}
}
}
}
}
\ No newline at end of file
software/ors-amarisoft/instance-tdd3500-gnb-input-schema.json
View file @
c820d8e5
...
@@ -32,6 +32,18 @@
...
@@ -32,6 +32,18 @@
"description"
:
"Downlink Bandwidth (in MHz)"
,
"description"
:
"Downlink Bandwidth (in MHz)"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
40
"default"
:
40
},
"amf_addr"
:
{
"title"
:
"AMF Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"gnb_id"
:
{
"title"
:
"gNB ID"
,
"description"
:
"gNB ID"
,
"type"
:
"string"
,
"default"
:
"0x12345"
}
}
}
}
}
}
\ No newline at end of file
software/ors-amarisoft/instance-tdd3700-enb-epc-input-schema.json
View file @
c820d8e5
...
@@ -26,6 +26,18 @@
...
@@ -26,6 +26,18 @@
"description"
:
"number of DL resource blocks"
,
"description"
:
"number of DL resource blocks"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
100
"default"
:
100
},
"mme_addr"
:
{
"title"
:
"MME Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"enb_id"
:
{
"title"
:
"eNB ID"
,
"description"
:
"eNB ID"
,
"type"
:
"string"
,
"default"
:
"0x1A2D0"
}
}
}
}
}
}
\ No newline at end of file
software/ors-amarisoft/instance-tdd3700-enb-input-schema.json
View file @
c820d8e5
...
@@ -26,6 +26,18 @@
...
@@ -26,6 +26,18 @@
"description"
:
"number of DL resource blocks"
,
"description"
:
"number of DL resource blocks"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
100
"default"
:
100
},
"mme_addr"
:
{
"title"
:
"MME Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"enb_id"
:
{
"title"
:
"eNB ID"
,
"description"
:
"eNB ID"
,
"type"
:
"string"
,
"default"
:
"0x1A2D0"
}
}
}
}
}
}
\ No newline at end of file
software/ors-amarisoft/instance-tdd3700-gnb-epc-input-schema.json
View file @
c820d8e5
...
@@ -32,6 +32,18 @@
...
@@ -32,6 +32,18 @@
"description"
:
"Downlink Bandwidth (in MHz)"
,
"description"
:
"Downlink Bandwidth (in MHz)"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
40
"default"
:
40
},
"amf_addr"
:
{
"title"
:
"AMF Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"gnb_id"
:
{
"title"
:
"gNB ID"
,
"description"
:
"gNB ID"
,
"type"
:
"string"
,
"default"
:
"0x12345"
}
}
}
}
}
}
\ No newline at end of file
software/ors-amarisoft/instance-tdd3700-gnb-input-schema.json
View file @
c820d8e5
...
@@ -32,6 +32,18 @@
...
@@ -32,6 +32,18 @@
"description"
:
"Downlink Bandwidth (in MHz)"
,
"description"
:
"Downlink Bandwidth (in MHz)"
,
"type"
:
"number"
,
"type"
:
"number"
,
"default"
:
40
"default"
:
40
},
"amf_addr"
:
{
"title"
:
"AMF Address"
,
"description"
:
"IPv4 of the core network"
,
"type"
:
"string"
,
"default"
:
"127.0.0.100"
},
"gnb_id"
:
{
"title"
:
"gNB ID"
,
"description"
:
"gNB ID"
,
"type"
:
"string"
,
"default"
:
"0x12345"
}
}
}
}
}
}
\ No newline at end of file
software/ors-amarisoft/instance.cfg
View file @
c820d8e5
...
@@ -7,7 +7,7 @@ develop-eggs-directory = ${buildout:develop-eggs-directory}
...
@@ -7,7 +7,7 @@ develop-eggs-directory = ${buildout:develop-eggs-directory}
offline = true
offline = true
[slap-configuration]
[slap-configuration]
recipe = slapos.cookbook:slapconfiguration
.serialised
recipe = slapos.cookbook:slapconfiguration
computer = $${slap-connection:computer-id}
computer = $${slap-connection:computer-id}
partition = $${slap-connection:partition-id}
partition = $${slap-connection:partition-id}
url = $${slap-connection:server-url}
url = $${slap-connection:server-url}
...
@@ -36,6 +36,20 @@ gnb = dynamic-template-lte-gnb:rendered
...
@@ -36,6 +36,20 @@ gnb = dynamic-template-lte-gnb:rendered
epc = dynamic-template-lte-epc:rendered
epc = dynamic-template-lte-epc:rendered
RootSoftwareInstance = $${:enb-epc}
RootSoftwareInstance = $${:enb-epc}
[local-ipv4-address]
recipe = slapos.recipe.build
init =
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
try:
s.connect(('1.1.1.1', 1))
ip = s.getsockname()[0]
except Exception:
ip = '127.0.0.1'
finally:
s.close()
options['local-ipv4'] = ip
[dynamic-template-lte-enb-epc]
[dynamic-template-lte-enb-epc]
< = jinja2-template-base
< = jinja2-template-base
template = ${template-lte-enb-epc:target}
template = ${template-lte-enb-epc:target}
...
@@ -43,6 +57,7 @@ filename = instance-lte-enb-epc.cfg
...
@@ -43,6 +57,7 @@ filename = instance-lte-enb-epc.cfg
extensions = jinja2.ext.do
extensions = jinja2.ext.do
extra-context =
extra-context =
raw monitor_template ${monitor2-template:rendered}
raw monitor_template ${monitor2-template:rendered}
key local_ipv4 local-ipv4-address:local-ipv4
[dynamic-template-lte-gnb-epc]
[dynamic-template-lte-gnb-epc]
< = jinja2-template-base
< = jinja2-template-base
...
@@ -51,6 +66,7 @@ filename = instance-lte-gnb-epc.cfg
...
@@ -51,6 +66,7 @@ filename = instance-lte-gnb-epc.cfg
extensions = jinja2.ext.do
extensions = jinja2.ext.do
extra-context =
extra-context =
raw monitor_template ${monitor2-template:rendered}
raw monitor_template ${monitor2-template:rendered}
key local_ipv4 local-ipv4-address:local-ipv4
[dynamic-template-lte-enb]
[dynamic-template-lte-enb]
< = jinja2-template-base
< = jinja2-template-base
...
@@ -72,6 +88,7 @@ extra-context =
...
@@ -72,6 +88,7 @@ extra-context =
raw default_lte_rx_gain ${enb:default-lte-rx-gain}
raw default_lte_rx_gain ${enb:default-lte-rx-gain}
raw min_frequency ${enb:min-frequency}
raw min_frequency ${enb:min-frequency}
raw max_frequency ${enb:max-frequency}
raw max_frequency ${enb:max-frequency}
key local_ipv4 local-ipv4-address:local-ipv4
[dynamic-template-lte-gnb]
[dynamic-template-lte-gnb]
< = jinja2-template-base
< = jinja2-template-base
...
@@ -93,6 +110,7 @@ extra-context =
...
@@ -93,6 +110,7 @@ extra-context =
raw default_nr_rx_gain ${enb:default-nr-rx-gain}
raw default_nr_rx_gain ${enb:default-nr-rx-gain}
raw min_frequency ${enb:min-frequency}
raw min_frequency ${enb:min-frequency}
raw max_frequency ${enb:max-frequency}
raw max_frequency ${enb:max-frequency}
key local_ipv4 local-ipv4-address:local-ipv4
[dynamic-template-lte-epc]
[dynamic-template-lte-epc]
< = jinja2-template-base
< = jinja2-template-base
...
...
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