Commit 1a7ae544 authored by Joanne Hugé's avatar Joanne Hugé

software/ors-amarisoft: merge mme and ims into epc instance

parent 36b88696
...@@ -16,23 +16,19 @@ ...@@ -16,23 +16,19 @@
[template] [template]
filename = instance.cfg filename = instance.cfg
md5sum = b5cc50c24e76fcf36e9fe7c37d689593 md5sum = f883dab264c6c45b03beff88339f2573
[template-lte-default] [template-lte-default]
_update_hash_filename_ = instance-default.jinja2.cfg _update_hash_filename_ = instance-default.jinja2.cfg
md5sum = 3fd6a586a9d83b6b5f7b9f853a679d00 md5sum = 6e8ec82b69af1f92baf1c71e2e5531bf
[template-lte-enb] [template-lte-enb]
_update_hash_filename_ = instance-enb.jinja2.cfg _update_hash_filename_ = instance-enb.jinja2.cfg
md5sum = cda352579b01f0d93f2be8a71e56b5c5 md5sum = cda352579b01f0d93f2be8a71e56b5c5
[template-lte-mme] [template-lte-epc]
_update_hash_filename_ = instance-mme.jinja2.cfg _update_hash_filename_ = instance-epc.jinja2.cfg
md5sum = baf94ee66622224bc19c3a455c96d80a md5sum = 33609f1bcccc9c060c79a40c59d60431
[template-lte-ims]
_update_hash_filename_ = instance-ims.jinja2.cfg
md5sum = 648ec2c15e0f3bca71c5b7676ff10c9d
[ue_db.jinja2.cfg] [ue_db.jinja2.cfg]
filename = config/ue_db.jinja2.cfg filename = config/ue_db.jinja2.cfg
......
...@@ -6,7 +6,6 @@ parts = ...@@ -6,7 +6,6 @@ parts =
directory directory
lte-enb-request lte-enb-request
lte-epc-request lte-epc-request
lte-ims-request
monitor-base monitor-base
publish-connection-information publish-connection-information
...@@ -77,16 +76,9 @@ config-dl_earfcn = {{ dumps(slapparameter_dict["dl_earfcn"]) }} ...@@ -77,16 +76,9 @@ config-dl_earfcn = {{ dumps(slapparameter_dict["dl_earfcn"]) }}
config-n_rb_dl = {{ dumps(slapparameter_dict["n_rb_dl"]) }} config-n_rb_dl = {{ dumps(slapparameter_dict["n_rb_dl"]) }}
{% endif %} {% endif %}
[lte-ims-request]
<= request-common-base
name = IMS
software-type = ims
config-name = ims
[monitor-base-url-dict] [monitor-base-url-dict]
lte-epc-request = ${lte-epc-request:connection-monitor-base-url} lte-epc-request = ${lte-epc-request:connection-monitor-base-url}
lte-enb-request = ${lte-enb-request:connection-monitor-base-url} lte-enb-request = ${lte-enb-request:connection-monitor-base-url}
lte-ims-request = ${lte-ims-request:connection-monitor-base-url}
[publish-connection-information] [publish-connection-information]
recipe = slapos.cookbook:publish recipe = slapos.cookbook:publish
......
...@@ -8,6 +8,8 @@ parts = ...@@ -8,6 +8,8 @@ parts =
ltelogs ltelogs
lte-mme-config lte-mme-config
lte-mme-service lte-mme-service
lte-ims-config
lte-ims-service
monitor-base monitor-base
publish-connection-information publish-connection-information
...@@ -48,7 +50,7 @@ configuration.enb_addr = 127.0.1.1 ...@@ -48,7 +50,7 @@ configuration.enb_addr = 127.0.1.1
#tun-ipv4-addr = 172.0.0.1 #tun-ipv4-addr = 172.0.0.1
#tun-name = tunabc #tun-name = tunabc
ue_db_path = ${copy-ue-db-config:destination} ue_db_path = {{ ue_db_path }}
[directory] [directory]
recipe = slapos.cookbook:mkdirectory recipe = slapos.cookbook:mkdirectory
...@@ -73,11 +75,18 @@ extensions = jinja2.ext.do ...@@ -73,11 +75,18 @@ extensions = jinja2.ext.do
context = context =
section directory directory section directory directory
[copy-ue-db-config] ### IMS
recipe = slapos.recipe.build:download [lte-ims-service]
url = {{ ue_db_rendered_path }} recipe = slapos.cookbook:wrapper
destination = {{ ue_db_path }} init = ${ltelogs:rendered} ${directory:log}/ims.log; sleep 1
mode = 0644 command-line = {{ mme }}/lteims ${directory:etc}/ims.cfg
wrapper-path = ${directory:service}/lte-ims
mode = 0775
pidfile = ${directory:run}/ims.pid
hash-files =
${lte-ims-config:rendered}
{{ ue_db_path }}
environment = AMARISOFT_PATH=/opt/amarisoft/.amarisoft
### MME ### MME
[lte-mme-service] [lte-mme-service]
...@@ -89,7 +98,7 @@ mode = 0775 ...@@ -89,7 +98,7 @@ mode = 0775
pidfile = ${directory:run}/mme.pid pidfile = ${directory:run}/mme.pid
hash-files = hash-files =
${lte-mme-config:rendered} ${lte-mme-config:rendered}
${copy-ue-db-config:destination} {{ ue_db_path }}
environment = environment =
LD_LIBRARY_PATH={{ openssl_location }}/lib:{{ nghttp2_location }}/lib LD_LIBRARY_PATH={{ openssl_location }}/lib:{{ nghttp2_location }}/lib
AMARISOFT_PATH=/opt/amarisoft/.amarisoft AMARISOFT_PATH=/opt/amarisoft/.amarisoft
...@@ -111,6 +120,11 @@ context = ...@@ -111,6 +120,11 @@ context =
key slapparameter_dict instance:configuration key slapparameter_dict instance:configuration
import netaddr netaddr import netaddr netaddr
[lte-ims-config]
<= config-base
template = {{ ims_template }}
rendered = ${directory:etc}/ims.cfg
[lte-mme-config] [lte-mme-config]
<= config-base <= config-base
template = {{ mme_template }} template = {{ mme_template }}
......
{
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema",
"title": "Input Parameters",
"properties": {
"log": {
"type": "object",
"title": "Log Configuration",
"properties": {
"options": {
"title": "Log Options",
"description": "Log Options",
"type": "string",
"default": "all.level=debug,all.max_size=32"
}
}
}
}
}
#
# Deploy EPC instance
#
[buildout]
parts =
directory
# publish-connection-parameter
ltelogs
lte-ims-config
lte-ims-service
monitor-base
publish-connection-information
extends = {{ monitor_template }}
eggs-directory = {{ eggs_directory }}
develop-eggs-directory = {{ develop_eggs_directory }}
offline = true
[instance]
recipe = slapos.cookbook:slapconfiguration.serialised
computer = {{ slap_connection['computer-id'] }}
partition = {{ slap_connection['partition-id'] }}
url = {{ slap_connection['server-url'] }}
key = {{ slap_connection['key-file'] }}
cert = {{ slap_connection['cert-file'] }}
configuration.network_name = VIFIB
configuration.domain = vifib.com
# Identifier of frequency and band is given by one number (e.g. 3200 for 2600Mhz band 7)
#configuration.frequency = 2600
#configuration.band = 7
configuration.log_size = 50M
configuration.mme_ws_port = 9000
configuration.enb_ws_port = 9002
configuration.ims_ws_port = 9003
configuration.mme_addr = 127.0.1.100
configuration.ims_addr = 127.0.0.1
configuration.ims_bind = 127.0.0.2
configuration.enb_addr = 127.0.1.1
ue_db_path = {{ ue_db_path }}
#tun-ipv4-addr = 172.0.0.1
[directory]
recipe = slapos.cookbook:mkdirectory
software = {{ buildout_directory }}
home = ${buildout:directory}
etc = ${:home}/etc
var = ${:home}/var
etc = ${:home}/etc
bin = ${:home}/bin
run = ${:var}/run
script = ${:etc}/run
service = ${:etc}/service
promise = ${:etc}/promise
log = ${:var}/log
[ltelogs]
recipe = slapos.recipe.template:jinja2
template = {{ ltelogs_template }}
rendered = ${directory:home}/ltelogs.sh
mode = 0775
extensions = jinja2.ext.do
context =
section directory directory
### IMS
[lte-ims-service]
recipe = slapos.cookbook:wrapper
init = ${ltelogs:rendered} ${directory:log}/ims.log; sleep 1
command-line = {{ mme }}/lteims ${directory:etc}/ims.cfg
wrapper-path = ${directory:service}/lte-ims
mode = 0775
pidfile = ${directory:run}/ims.pid
hash-files =
${lte-ims-config:rendered}
{{ ue_db_path }}
environment = AMARISOFT_PATH=/opt/amarisoft/.amarisoft
[config-base]
recipe = slapos.recipe.template:jinja2
mode = 0664
extensions = jinja2.ext.do
context =
section directory directory
section instance instance
key slapparameter_dict instance:configuration
import netaddr netaddr
[lte-ims-config]
<= config-base
template = {{ ims_template }}
rendered = ${directory:etc}/ims.cfg
[publish-connection-information]
recipe = slapos.cookbook:publish.serialised
{% if slapparameter_dict.get("monitor-password", None) %}
monitor-base-url = ${monitor-instance-parameter:monitor-base-url}
{% else %}
monitor-setup-url = https://monitor.app.officejs.com/#page=settings_configurator&url=${monitor-publish-parameters:monitor-url}&username=${monitor-publish-parameters:monitor-user}&password=${monitor-publish-parameters:monitor-password}
{% endif %}
{% if slapparameter_dict.get("monitor-password", None) %}
[monitor-instance-parameter]
monitor-title = {{ slapparameter_dict['name'] }}
password = {{ slapparameter_dict['monitor-password'] }}
{% endif %}
...@@ -32,8 +32,7 @@ context = ...@@ -32,8 +32,7 @@ context =
recipe = slapos.cookbook:softwaretype recipe = slapos.cookbook:softwaretype
default = $${dynamic-template-lte-default:rendered} default = $${dynamic-template-lte-default:rendered}
enb = $${dynamic-template-lte-enb:rendered} enb = $${dynamic-template-lte-enb:rendered}
epc = $${dynamic-template-lte-mme:rendered} epc = $${dynamic-template-lte-epc:rendered}
ims = $${dynamic-template-lte-ims:rendered}
[dynamic-template-lte-default] [dynamic-template-lte-default]
< = jinja2-template-base < = jinja2-template-base
...@@ -58,20 +57,20 @@ extra-context = ...@@ -58,20 +57,20 @@ extra-context =
raw max_frequency ${enb:max-frequency} raw max_frequency ${enb:max-frequency}
raw default_dl_earfcn ${enb:default-dl-earfcn} raw default_dl_earfcn ${enb:default-dl-earfcn}
[dynamic-template-lte-mme] [dynamic-template-lte-epc]
< = jinja2-template-base < = jinja2-template-base
template = ${template-lte-mme:target} template = ${template-lte-epc:target}
filename = instance-lte-mme.cfg filename = instance-lte-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}
raw mme ${mme:destination} raw mme ${mme:destination}
raw mme_template ${mme.jinja2.cfg:target} raw mme_template ${mme.jinja2.cfg:target}
raw ims_template ${ims.jinja2.cfg:target}
raw ltelogs_template ${ltelogs.jinja2.sh:target} raw ltelogs_template ${ltelogs.jinja2.sh:target}
raw openssl_location ${openssl:location} raw openssl_location ${openssl:location}
raw nghttp2_location ${nghttp2:location} raw nghttp2_location ${nghttp2:location}
key ue_db_rendered_path ue-db-config:rendered key ue_db_path ue-db-config:rendered
raw ue_db_path ${ue-db:ue-db-path}
[ue-db-config] [ue-db-config]
recipe = slapos.recipe.template:jinja2 recipe = slapos.recipe.template:jinja2
...@@ -81,15 +80,3 @@ extensions = jinja2.ext.do ...@@ -81,15 +80,3 @@ extensions = jinja2.ext.do
rendered = $${buildout:directory}/$${:filename} rendered = $${buildout:directory}/$${:filename}
context = context =
key slave_instance_list instance:slave-instance-list key slave_instance_list instance:slave-instance-list
[dynamic-template-lte-ims]
< = jinja2-template-base
template = ${template-lte-ims:target}
filename = instance-lte-ims.cfg
extensions = jinja2.ext.do
extra-context =
raw monitor_template ${monitor2-template:rendered}
raw mme ${mme:destination}
raw ims_template ${ims.jinja2.cfg:target}
raw ltelogs_template ${ltelogs.jinja2.sh:target}
raw ue_db_path ${ue-db:ue-db-path}
...@@ -41,18 +41,9 @@ mode = 0644 ...@@ -41,18 +41,9 @@ mode = 0644
[template-lte-enb] [template-lte-enb]
<= download-base <= download-base
[template-lte-mme] [template-lte-epc]
<= download-base <= download-base
[template-lte-ims]
<= download-base
[ue-db]
ue-db-path = /opt/amarisoft/ue-db/ue_db.cfg
[ue-db]
ue-db-path = /opt/amarisoft/ue-db/ue_db.cfg
[amarisoft] [amarisoft]
recipe = slapos.recipe.build recipe = slapos.recipe.build
path = /opt/amarisoft/lte path = /opt/amarisoft/lte
...@@ -92,11 +83,6 @@ filename = mme.jinja2.cfg ...@@ -92,11 +83,6 @@ filename = mme.jinja2.cfg
<= copy-config-to-instance <= copy-config-to-instance
filename = ims.jinja2.cfg filename = ims.jinja2.cfg
[md5sum]
enb = ${enb.jinja2.cfg:md5sum}
mme = ${mme.jinja2.cfg:md5sum}
ims = ${ims.jinja2.cfg:md5sum}
[sdr] [sdr]
<= unpack-to-instance <= unpack-to-instance
url = ${amarisoft:path}/trx_${:_buildout_section_name_}-linux-${amarisoft:lte-version}.tar.gz url = ${amarisoft:path}/trx_${:_buildout_section_name_}-linux-${amarisoft:lte-version}.tar.gz
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment