| #!/bin/bash |
| |
| # Copyright 2019-present Open Networking Foundation |
| # |
| # SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0 |
| |
| APPLICATION=$1 |
| set -xe |
| |
| mkdir -p /opt/cp/config |
| cd /opt/cp/config |
| cp /etc/cp/config/{*.cfg,*.json,*.conf,*.sh} . |
| |
| case $APPLICATION in |
| "ngic_controlplane") |
| echo "Starting ngic controlplane app" |
| if [ ! -d "/dev/hugepages" ]; then |
| MEMORY="--no-huge -m $((MEM_LIMIT-1024))" |
| fi |
| CORES="-c $(taskset -p $$ | awk '{print $NF}')" |
| EAL_ARGS="${CORES} ${MEMORY} --no-pci" |
| cat /opt/cp/config/subscriber_mapping.json |
| {{- if .Values.config.coreDump.enabled }} |
| cp /bin/ngic_controlplane /tmp/coredump/ |
| {{- end }} |
| |
| ngic_controlplane $EAL_ARGS -- -f /etc/cp/config/ |
| ;; |
| |
| "gx-app") |
| echo "Starting gx-app" |
| SPGWC_IDENTITY={{ tuple "spgwc" "identity" . | include "omec-control-plane.diameter_endpoint" | quote }}; |
| DIAMETER_HOST=$(echo $SPGWC_IDENTITY| cut -d'.' -f1) |
| DIAMETER_REALM={{ tuple "spgwc" "realm" . | include "omec-control-plane.diameter_endpoint" | quote }}; |
| chmod +x /bin/make_certs.sh |
| cp /bin/make_certs.sh /opt/cp/config |
| /bin/make_certs.sh $DIAMETER_HOST $DIAMETER_REALM |
| {{- if .Values.config.coreDump.enabled }} |
| cp /bin/gx_app /tmp/coredump/ |
| {{- end }} |
| cd /opt/cp/ |
| gx_app |
| ;; |
| |
| *) |
| echo "invalid app $APPLICATION" |
| ;; |
| esac |
| |
| |
| |