<p>pespin has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/c/docker-playground/+/21263">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">Introduce osmo-ran docker image set up<br><br>See osmo-ran/README.md in this commit for a description.<br><br>Related: SYS#4889<br>Change-Id: If5d22e9fa818310cbb4adc34bd7aceb4416ec969<br>---<br>M jenkins-common.sh<br>M make/Makefile<br>A osmo-ran/Dockerfile<br>A osmo-ran/Makefile<br>A osmo-ran/README.md<br>A osmo-ran/Release.key<br>A osmo-ran/jenkins.sh<br>A osmo-ran/osmocom/osmo-bsc.cfg<br>A osmo-ran/osmocom/osmo-bts-trx.cfg<br>A osmo-ran/osmocom/osmo-mgw.cfg<br>A osmo-ran/osmocom/osmo-pcu.cfg<br>A osmo-ran/osmocom/osmo-trx-ipc.cfg<br>A osmo-ran/osmocom/osmo-trx-uhd.cfg<br>13 files changed, 499 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/docker-playground refs/changes/63/21263/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/jenkins-common.sh b/jenkins-common.sh</span><br><span>index fdcfd40..0832f0d 100644</span><br><span>--- a/jenkins-common.sh</span><br><span>+++ b/jenkins-common.sh</span><br><span>@@ -108,6 +108,24 @@</span><br><span>         docker network create --internal --subnet $SUB4 --ipv6 --subnet $SUB6 $NET_NAME</span><br><span> }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+network_bridge_create() {</span><br><span style="color: hsl(120, 100%, 40%);">+   NET=$1</span><br><span style="color: hsl(120, 100%, 40%);">+        if docker network ls | grep -q $NET_NAME; then</span><br><span style="color: hsl(120, 100%, 40%);">+                echo removing stale network and containers...</span><br><span style="color: hsl(120, 100%, 40%);">+         network_clean</span><br><span style="color: hsl(120, 100%, 40%);">+         network_remove</span><br><span style="color: hsl(120, 100%, 40%);">+        fi</span><br><span style="color: hsl(120, 100%, 40%);">+    SUB4="172.18.$NET.0/24"</span><br><span style="color: hsl(120, 100%, 40%);">+     SUB6="fd02:db8:$NET::/64"</span><br><span style="color: hsl(120, 100%, 40%);">+   echo Creating network $NET_NAME</span><br><span style="color: hsl(120, 100%, 40%);">+       docker network create \</span><br><span style="color: hsl(120, 100%, 40%);">+               --driver=bridge \</span><br><span style="color: hsl(120, 100%, 40%);">+             --subnet $SUB4 \</span><br><span style="color: hsl(120, 100%, 40%);">+              --ipv6 --subnet $SUB6 \</span><br><span style="color: hsl(120, 100%, 40%);">+               -o "com.docker.network.bridge.host_binding_ipv4"="172.18.$NET.1" \</span><br><span style="color: hsl(120, 100%, 40%);">+                $NET_NAME</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> network_remove() {</span><br><span>         echo Removing network $NET_NAME</span><br><span>      docker network remove $NET_NAME</span><br><span>diff --git a/make/Makefile b/make/Makefile</span><br><span>index 4f2263b..7bb0345 100644</span><br><span>--- a/make/Makefile</span><br><span>+++ b/make/Makefile</span><br><span>@@ -37,6 +37,8 @@</span><br><span> DISTRO?=debian-stretch</span><br><span> OSMOCOM_REPO_MIRROR?=http://download.opensuse.org</span><br><span> # Use if down: OSMOCOM_REPO_MIRROR=http://ftp.uni-stuttgart.de/opensuse</span><br><span style="color: hsl(120, 100%, 40%);">+OSMOCOM_REPO_VERSION?=latest</span><br><span style="color: hsl(120, 100%, 40%);">+# Use "nightly" to use the nightly repo</span><br><span> </span><br><span> RELEASE_SUPPORT := $(shell dirname $(abspath $(lastword $(MAKEFILE_LIST))))/.make-release-support</span><br><span> IMAGE?=$(REGISTRY_HOST)/$(USER)/$(NAME)</span><br><span>@@ -67,6 +69,7 @@</span><br><span>              --build-arg UPSTREAM_DISTRO=$(UPSTREAM_DISTRO) \</span><br><span>             --build-arg DISTRO=$(DISTRO) \</span><br><span>               --build-arg OSMOCOM_REPO_MIRROR=$(OSMOCOM_REPO_MIRROR) \</span><br><span style="color: hsl(120, 100%, 40%);">+              --build-arg OSMOCOM_REPO_VERSION=$(OSMOCOM_REPO_VERSION) \</span><br><span>           --build-arg LIBOSMOCORE_BRANCH=$(LIBOSMOCORE_BRANCH) \</span><br><span>               --build-arg OSMO_BB_BRANCH=$(OSMO_BB_BRANCH) \</span><br><span>               --build-arg OSMO_BSC_BRANCH=$(OSMO_BSC_BRANCH) \</span><br><span>diff --git a/osmo-ran/Dockerfile b/osmo-ran/Dockerfile</span><br><span>new file mode 100644</span><br><span>index 0000000..21e3619</span><br><span>--- /dev/null</span><br><span>+++ b/osmo-ran/Dockerfile</span><br><span>@@ -0,0 +1,128 @@</span><br><span style="color: hsl(120, 100%, 40%);">+ARG  REGISTRY=docker.io</span><br><span style="color: hsl(120, 100%, 40%);">+ARG UPSTREAM_DISTRO=centos:centos8</span><br><span style="color: hsl(120, 100%, 40%);">+FROM    ${REGISTRY}/${UPSTREAM_DISTRO}</span><br><span style="color: hsl(120, 100%, 40%);">+# Arguments used after FROM must be specified again</span><br><span style="color: hsl(120, 100%, 40%);">+ARG        DISTRO</span><br><span style="color: hsl(120, 100%, 40%);">+ARG     OSMOCOM_REPO_MIRROR</span><br><span style="color: hsl(120, 100%, 40%);">+ARG        OSMOCOM_REPO_VERSION=latest</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+MAINTAINER Pau Espin Pedrol <pespin@sysmocom.de></span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ARG    OSMOCOM_REPO_DEBIAN="$OSMOCOM_REPO_MIRROR/repositories/network:/osmocom:/$OSMOCOM_REPO_VERSION/Debian_9.0/"</span><br><span style="color: hsl(120, 100%, 40%);">+ARG      OSMOCOM_REPO_CENTOS="$OSMOCOM_REPO_MIRROR/repositories/network:/osmocom:/$OSMOCOM_REPO_VERSION/CentOS_8_Stream/"</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+COPY    Release.key /tmp/Release.key</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+RUN     case "$DISTRO" in \</span><br><span style="color: hsl(120, 100%, 40%);">+ debian*) \</span><br><span style="color: hsl(120, 100%, 40%);">+            apt-get update && \</span><br><span style="color: hsl(120, 100%, 40%);">+           apt-get install -y --no-install-recommends \</span><br><span style="color: hsl(120, 100%, 40%);">+                  gnupg && \</span><br><span style="color: hsl(120, 100%, 40%);">+            apt-key add /tmp/Release.key && \</span><br><span style="color: hsl(120, 100%, 40%);">+             rm /tmp/Release.key && \</span><br><span style="color: hsl(120, 100%, 40%);">+              echo "deb " $OSMOCOM_REPO_DEBIAN " ./" > /etc/apt/sources.list.d/osmocom-$OSMOCOM_REPO_VERSION.list \</span><br><span style="color: hsl(120, 100%, 40%);">+          ;; \</span><br><span style="color: hsl(120, 100%, 40%);">+  centos*) \</span><br><span style="color: hsl(120, 100%, 40%);">+            echo "metadata_expire=60" >> /etc/dnf/dnf.conf && cat /etc/dnf/dnf.conf && \</span><br><span style="color: hsl(120, 100%, 40%);">+          dnf install -y dnf-utils wget && \</span><br><span style="color: hsl(120, 100%, 40%);">+            yum config-manager --set-enabled PowerTools && \</span><br><span style="color: hsl(120, 100%, 40%);">+              cd /etc/yum.repos.d/ && \</span><br><span style="color: hsl(120, 100%, 40%);">+             wget ${OSMOCOM_REPO_CENTOS}/network:osmocom:$OSMOCOM_REPO_VERSION.repo \</span><br><span style="color: hsl(120, 100%, 40%);">+              ;; \</span><br><span style="color: hsl(120, 100%, 40%);">+  esac</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# we need to add this to invalidate the cache once the repository is updated.</span><br><span style="color: hsl(120, 100%, 40%);">+# unfortunately Dockerfiles don't support a conditional ARG, so we need to add both DPKG + RPM</span><br><span style="color: hsl(120, 100%, 40%);">+ADD  $OSMOCOM_REPO_DEBIAN/Release /tmp/Release</span><br><span style="color: hsl(120, 100%, 40%);">+ADD  $OSMOCOM_REPO_CENTOS/repodata/repomd.xml /tmp/repomd.xml</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# set up systemd</span><br><span style="color: hsl(120, 100%, 40%);">+# container=docker: systemd likes to know it is running inside a container</span><br><span style="color: hsl(120, 100%, 40%);">+ENV container docker</span><br><span style="color: hsl(120, 100%, 40%);">+RUN     case "$DISTRO" in \</span><br><span style="color: hsl(120, 100%, 40%);">+ debian*) \</span><br><span style="color: hsl(120, 100%, 40%);">+            apt-get update && \</span><br><span style="color: hsl(120, 100%, 40%);">+           apt-get install -y --no-install-recommends systemd; \</span><br><span style="color: hsl(120, 100%, 40%);">+                 (cd /lib/systemd/system/sysinit.target.wants/; for i in *; do test "$i" = "systemd-tmpfiles-setup.service" || rm -f $i; done); \</span><br><span style="color: hsl(120, 100%, 40%);">+                  rm -f /lib/systemd/system/multi-user.target.wants/*; \</span><br><span style="color: hsl(120, 100%, 40%);">+                        rm -f /etc/systemd/system/*.wants/*; \</span><br><span style="color: hsl(120, 100%, 40%);">+                        rm -f /lib/systemd/system/local-fs.target.wants/*; \</span><br><span style="color: hsl(120, 100%, 40%);">+                  rm -f /lib/systemd/system/sockets.target.wants/*udev*; \</span><br><span style="color: hsl(120, 100%, 40%);">+                      rm -f /lib/systemd/system/sockets.target.wants/*initctl*; \</span><br><span style="color: hsl(120, 100%, 40%);">+                   rm -f /lib/systemd/system/basic.target.wants/*; \</span><br><span style="color: hsl(120, 100%, 40%);">+                     rm -f /lib/systemd/system/anaconda.target.wants/*; \</span><br><span style="color: hsl(120, 100%, 40%);">+          ;; \</span><br><span style="color: hsl(120, 100%, 40%);">+  centos*) \</span><br><span style="color: hsl(120, 100%, 40%);">+            yum -y install systemd; yum clean all; \</span><br><span style="color: hsl(120, 100%, 40%);">+                      (cd /lib/systemd/system/sysinit.target.wants/; for i in *; do test "$i" = "systemd-tmpfiles-setup.service" || rm -f $i; done); \</span><br><span style="color: hsl(120, 100%, 40%);">+                  rm -f /lib/systemd/system/multi-user.target.wants/*; \</span><br><span style="color: hsl(120, 100%, 40%);">+                        rm -f /etc/systemd/system/*.wants/*; \</span><br><span style="color: hsl(120, 100%, 40%);">+                        rm -f /lib/systemd/system/local-fs.target.wants/*; \</span><br><span style="color: hsl(120, 100%, 40%);">+                  rm -f /lib/systemd/system/sockets.target.wants/*udev*; \</span><br><span style="color: hsl(120, 100%, 40%);">+                      rm -f /lib/systemd/system/sockets.target.wants/*initctl*; \</span><br><span style="color: hsl(120, 100%, 40%);">+                   rm -f /lib/systemd/system/basic.target.wants/*; \</span><br><span style="color: hsl(120, 100%, 40%);">+                     rm -f /lib/systemd/system/anaconda.target.wants/*; \</span><br><span style="color: hsl(120, 100%, 40%);">+          ;; \</span><br><span style="color: hsl(120, 100%, 40%);">+  esac</span><br><span style="color: hsl(120, 100%, 40%);">+VOLUME [ "/sys/fs/cgroup" ]</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+RUN      case "$DISTRO" in \</span><br><span style="color: hsl(120, 100%, 40%);">+ debian*) \</span><br><span style="color: hsl(120, 100%, 40%);">+            apt-get update && \</span><br><span style="color: hsl(120, 100%, 40%);">+           apt-get install -y --no-install-recommends \</span><br><span style="color: hsl(120, 100%, 40%);">+                  less \</span><br><span style="color: hsl(120, 100%, 40%);">+                        apt-utils \</span><br><span style="color: hsl(120, 100%, 40%);">+                   strace \</span><br><span style="color: hsl(120, 100%, 40%);">+                      tcpdump \</span><br><span style="color: hsl(120, 100%, 40%);">+                     telnet \</span><br><span style="color: hsl(120, 100%, 40%);">+                      vim \</span><br><span style="color: hsl(120, 100%, 40%);">+                 osmo-bsc \</span><br><span style="color: hsl(120, 100%, 40%);">+                    osmo-bsc-ipaccess-utils \</span><br><span style="color: hsl(120, 100%, 40%);">+                     osmo-bts-trx \</span><br><span style="color: hsl(120, 100%, 40%);">+                        osmo-mgw \</span><br><span style="color: hsl(120, 100%, 40%);">+                    osmo-pcu \</span><br><span style="color: hsl(120, 100%, 40%);">+                    osmo-trx-ipc \</span><br><span style="color: hsl(120, 100%, 40%);">+                        osmo-trx-uhd && \</span><br><span style="color: hsl(120, 100%, 40%);">+             apt-get clean \</span><br><span style="color: hsl(120, 100%, 40%);">+               ;; \</span><br><span style="color: hsl(120, 100%, 40%);">+  centos*) \</span><br><span style="color: hsl(120, 100%, 40%);">+            dnf install -y \</span><br><span style="color: hsl(120, 100%, 40%);">+                      less \</span><br><span style="color: hsl(120, 100%, 40%);">+                        strace \</span><br><span style="color: hsl(120, 100%, 40%);">+                      tcpdump \</span><br><span style="color: hsl(120, 100%, 40%);">+                     telnet \</span><br><span style="color: hsl(120, 100%, 40%);">+                      vim \</span><br><span style="color: hsl(120, 100%, 40%);">+                 osmo-bsc \</span><br><span style="color: hsl(120, 100%, 40%);">+                    osmo-bsc-ipaccess-utils \</span><br><span style="color: hsl(120, 100%, 40%);">+                     osmo-bts \</span><br><span style="color: hsl(120, 100%, 40%);">+                    osmo-mgw \</span><br><span style="color: hsl(120, 100%, 40%);">+                    osmo-pcu \</span><br><span style="color: hsl(120, 100%, 40%);">+                    osmo-trx-ipc \</span><br><span style="color: hsl(120, 100%, 40%);">+                        osmo-trx-uhd \</span><br><span style="color: hsl(120, 100%, 40%);">+                ;; \</span><br><span style="color: hsl(120, 100%, 40%);">+  esac</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+RUN     systemctl enable osmo-bsc osmo-bts-trx osmo-mgw osmo-pcu</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+CMD [“/usr/sbin/init”]</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+WORKDIR       /tmp</span><br><span style="color: hsl(120, 100%, 40%);">+RUN       cp -r /etc/osmocom /etc/osmocom-default</span><br><span style="color: hsl(120, 100%, 40%);">+VOLUME /data</span><br><span style="color: hsl(120, 100%, 40%);">+VOLUME   /etc/osmocom</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+COPY    osmocom/osmo-bsc.cfg /etc/osmocom/osmo-bsc.cfg</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+CMD   ["/lib/systemd/systemd", "--system", "--unit=multi-user.target"]</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+#osmo-bsc: VTY  CTRL</span><br><span style="color: hsl(120, 100%, 40%);">+EXPOSE     4242 4249</span><br><span style="color: hsl(120, 100%, 40%);">+#osmo-bts: VTY  CTRL</span><br><span style="color: hsl(120, 100%, 40%);">+EXPOSE     4241 4238</span><br><span style="color: hsl(120, 100%, 40%);">+#osmo-mgw: VTY  CTRL</span><br><span style="color: hsl(120, 100%, 40%);">+EXPOSE     4243 4267</span><br><span style="color: hsl(120, 100%, 40%);">+#osmo-pcu: VTY  CTRL</span><br><span style="color: hsl(120, 100%, 40%);">+EXPOSE     4240</span><br><span style="color: hsl(120, 100%, 40%);">+#osmo-trx: VTY  CTRL</span><br><span style="color: hsl(120, 100%, 40%);">+#EXPOSE    4237 4236</span><br><span>diff --git a/osmo-ran/Makefile b/osmo-ran/Makefile</span><br><span>new file mode 100644</span><br><span>index 0000000..80b1069</span><br><span>--- /dev/null</span><br><span>+++ b/osmo-ran/Makefile</span><br><span>@@ -0,0 +1,2 @@</span><br><span style="color: hsl(120, 100%, 40%);">+RUN_ARGS?=--sysctl net.ipv6.conf.all.disable_ipv6=0 --rm --network sigtran --ip 172.18.25.200 -v bsc-vol:/data</span><br><span style="color: hsl(120, 100%, 40%);">+include ../make/Makefile</span><br><span>diff --git a/osmo-ran/README.md b/osmo-ran/README.md</span><br><span>new file mode 100644</span><br><span>index 0000000..90886d8</span><br><span>--- /dev/null</span><br><span>+++ b/osmo-ran/README.md</span><br><span>@@ -0,0 +1,36 @@</span><br><span style="color: hsl(120, 100%, 40%);">+This directory provides an environment to set up and run an Osmocom RAN</span><br><span style="color: hsl(120, 100%, 40%);">+(osmo-bts, osmo-pcu, osmo-bsc, osmo-mgw) managed by systemd, all run inside a</span><br><span style="color: hsl(120, 100%, 40%);">+docker container.</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+Easiest way to build + run the setup is to execute _jenkins.sh_ in this same</span><br><span style="color: hsl(120, 100%, 40%);">+directory.</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+This script will build the Dockerfile image, then set up a bridge network on</span><br><span style="color: hsl(120, 100%, 40%);">+subnet `172.18.$SUBNET.0/24`, where the IP address `172.18.$SUBNET.200` is assigned to the</span><br><span style="color: hsl(120, 100%, 40%);">+internal network interface inside the docker container (and which RAN processes</span><br><span style="color: hsl(120, 100%, 40%);">+will be using), and `172.18.$SUBNET.1` is assigned to the bridge network interface</span><br><span style="color: hsl(120, 100%, 40%);">+outside the docker container. All The VTY and CTRL ports are available on both</span><br><span style="color: hsl(120, 100%, 40%);">+`172.18.$SUBNET.200` and also on `172.18.$SUBNET.1` (through docker port mapping).</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+The script has the following parameters (environment variables):</span><br><span style="color: hsl(120, 100%, 40%);">+- `SUBNET`: The IPv4 subnet to configure and use (`172.18.$SUBNET.0/24`) when</span><br><span style="color: hsl(120, 100%, 40%);">+  running the container (defaults to `25`)</span><br><span style="color: hsl(120, 100%, 40%);">+- `SGSN_IP`: The IP address where the SGSN outside the docker container listens to (Gb interface)</span><br><span style="color: hsl(120, 100%, 40%);">+- `STP_IP`: The IP address where the STP outside the docker container listens to (A interface)</span><br><span style="color: hsl(120, 100%, 40%);">+- `TRX_IP`: The IP address where the OsmoTRX outside the docker container listens to (TRXC/TRXD interface)</span><br><span style="color: hsl(120, 100%, 40%);">+- `IMAGE_SUFFIX`: Type of base image to use: Leave unset to build on top of</span><br><span style="color: hsl(120, 100%, 40%);">+  Debian (default), set to `centos8` to run on top of CentOS8 distribution</span><br><span style="color: hsl(120, 100%, 40%);">+- `OSMOCOM_REPO_VERSION`: Osmocom OBS repository version to use: `nightly` or `latest` (default).</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+The above IP addresses will be replaced by _jenkins.sh_ from tokens of the same name in the provided configuration files, available in _osmocom/_ directory, which will be then placer inside docker image's `/etc/osmocom/` directory, where the osmocom projects will read the configuration by default (see systemd services).</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+Example:</span><br><span style="color: hsl(120, 100%, 40%);">+Run Osmocom RAN on a Centos8 distro with osmocom's nightly repository on subnet 26:</span><br><span style="color: hsl(120, 100%, 40%);">+```</span><br><span style="color: hsl(120, 100%, 40%);">+OSMOCOM_REPO_VERSION="nightly" IMAGE_SUFFIX="centos8" SUBNET=26 ./jenkins.sh</span><br><span style="color: hsl(120, 100%, 40%);">+```</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+If several independent RANs are to be set up by the user, it's up to them to</span><br><span style="color: hsl(120, 100%, 40%);">+configure iptables rules to forbid access from one docker container to another.</span><br><span style="color: hsl(120, 100%, 40%);">+It should be doable pretty easily by rejecting connections between</span><br><span style="color: hsl(120, 100%, 40%);">+`172.18.$subnetA.0/24` and `172.18.$subnetB.0/24`.</span><br><span>diff --git a/osmo-ran/Release.key b/osmo-ran/Release.key</span><br><span>new file mode 100644</span><br><span>index 0000000..a737316</span><br><span>--- /dev/null</span><br><span>+++ b/osmo-ran/Release.key</span><br><span>@@ -0,0 +1,20 @@</span><br><span style="color: hsl(120, 100%, 40%);">+-----BEGIN PGP PUBLIC KEY BLOCK-----</span><br><span style="color: hsl(120, 100%, 40%);">+Version: GnuPG v1.4.5 (GNU/Linux)</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+mQENBFJBt/wBCADAht3d/ilNuyzaXYw/QwTRvmjyoDvfXw+H/3Fvk1zlDZoiKPPc</span><br><span style="color: hsl(120, 100%, 40%);">+a1wCVBINUZl7vYM2OXqbJwYa++JP2Q48xKSvC6thbRc/YLievkbcvTemf7IaREfl</span><br><span style="color: hsl(120, 100%, 40%);">+CTjoYpoqXHa9kHMw1aALDm8CNU88jZmnV7v9L6hKkbYDxie+jpoj7D6B9JlxgNJ4</span><br><span style="color: hsl(120, 100%, 40%);">+5dQyRNsFGVcIl4Vplt1HyGc5Q5nQI/VgS2rlF/IOXmhRQBc4LEDdU8R2IKnkU4ee</span><br><span style="color: hsl(120, 100%, 40%);">+S7TWanAigGAQhxGuCkS39/CWzc1DhLhjlNhBl/+RTPejkqJtAy00ZLps3+RqUN1Y</span><br><span style="color: hsl(120, 100%, 40%);">+CU/Fsr7aRlYVGqQ/BlptwV0XQ2VVYJX2oEBBABEBAAG0MG5ldHdvcmsgT0JTIFBy</span><br><span style="color: hsl(120, 100%, 40%);">+b2plY3QgPG5ldHdvcmtAYnVpbGQub3BlbnN1c2Uub3JnPokBPAQTAQIAJgUCXm/4</span><br><span style="color: hsl(120, 100%, 40%);">+pgIbAwUJEEzwqgYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEGLrGgkXKA3f/1AH</span><br><span style="color: hsl(120, 100%, 40%);">+/A7WVSpfM4wV/DMqZPTsSjChB4JyDotxpV7qHZzBC5aaP2dINZyi9PayIwZWbvCY</span><br><span style="color: hsl(120, 100%, 40%);">+VKvt+Fw8oCGC9F9mdh10Xe+ElHeVNSihzABPuu1RkRkb1nvkymScy0yxydodYOBi</span><br><span style="color: hsl(120, 100%, 40%);">+K4WQ+BhpijXWmYvOekIwbS5Hi9BHpfgK4TinK0xsvh1bVLeQJ8YjrnNFIAR2CnBa</span><br><span style="color: hsl(120, 100%, 40%);">+X7Y72Up/kKL08DdQzuS+mKrJtAQlGMtIsukWC2ajYQMkNwm8Gvhpn8za113dCkBW</span><br><span style="color: hsl(120, 100%, 40%);">+XAFnlQqQobKwC7b19QgEtJI/YpGSrRc6WaZxPyAjscbWQlFEAB900sVj4BWT55ig</span><br><span style="color: hsl(120, 100%, 40%);">+7O2uSdsCVhTuU7T0ztwsgvmIRgQTEQIABgUCUkG3/AAKCRA7MBG3a51lIzhdAJ9v</span><br><span style="color: hsl(120, 100%, 40%);">+d6XPffMZRcCGgDEY5OaTn/MsCQCgrXbeZpFJgnirSrc8rRonvzYFiF4=</span><br><span style="color: hsl(120, 100%, 40%);">+=/Tek</span><br><span style="color: hsl(120, 100%, 40%);">+-----END PGP PUBLIC KEY BLOCK-----</span><br><span>diff --git a/osmo-ran/jenkins.sh b/osmo-ran/jenkins.sh</span><br><span>new file mode 100755</span><br><span>index 0000000..1021473</span><br><span>--- /dev/null</span><br><span>+++ b/osmo-ran/jenkins.sh</span><br><span>@@ -0,0 +1,45 @@</span><br><span style="color: hsl(120, 100%, 40%);">+#!/bin/sh</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+. ../jenkins-common.sh</span><br><span style="color: hsl(120, 100%, 40%);">+IMAGE_SUFFIX="${IMAGE_SUFFIX:-centos8}"</span><br><span style="color: hsl(120, 100%, 40%);">+docker_images_require \</span><br><span style="color: hsl(120, 100%, 40%);">+  "osmo-ran-$IMAGE_SUFFIX"</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+mkdir $VOL_BASE_DIR/ran</span><br><span style="color: hsl(120, 100%, 40%);">+mkdir $VOL_BASE_DIR/ran/data</span><br><span style="color: hsl(120, 100%, 40%);">+mkdir $VOL_BASE_DIR/ran/osmocom</span><br><span style="color: hsl(120, 100%, 40%);">+cp osmocom/* $VOL_BASE_DIR/ran/osmocom/</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+SUBNET=${SUBNET:-25}</span><br><span style="color: hsl(120, 100%, 40%);">+IPSUFFIX=200</span><br><span style="color: hsl(120, 100%, 40%);">+network_bridge_create $SUBNET</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+DOCKER_IN_IP="172.18.$SUBNET.$IPSUFFIX"</span><br><span style="color: hsl(120, 100%, 40%);">+SGSN_IP="${SGSN_IP:-192.168.30.1}"</span><br><span style="color: hsl(120, 100%, 40%);">+STP_IP="${STP_IP:-192.168.30.1}"</span><br><span style="color: hsl(120, 100%, 40%);">+TRX_IP="${TRX_IP:-192.168.30.100}"</span><br><span style="color: hsl(120, 100%, 40%);">+sed -i "s/\$DOCKER_IN_IP/${DOCKER_IN_IP}/g" $VOL_BASE_DIR/ran/osmocom/*</span><br><span style="color: hsl(120, 100%, 40%);">+sed -i "s/\$SGSN_IP/${SGSN_IP}/g" $VOL_BASE_DIR/ran/osmocom/*</span><br><span style="color: hsl(120, 100%, 40%);">+sed -i "s/\$STP_IP/${STP_IP}/g" $VOL_BASE_DIR/ran/osmocom/*</span><br><span style="color: hsl(120, 100%, 40%);">+sed -i "s/\$TRX_IP/${TRX_IP}/g" $VOL_BASE_DIR/ran/osmocom/*</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+echo Starting container with RAN</span><br><span style="color: hsl(120, 100%, 40%);">+docker run       --rm \</span><br><span style="color: hsl(120, 100%, 40%);">+                $(docker_network_params $SUBNET 200) \</span><br><span style="color: hsl(120, 100%, 40%);">+                --privileged \</span><br><span style="color: hsl(120, 100%, 40%);">+                --ulimit core=-1 \</span><br><span style="color: hsl(120, 100%, 40%);">+            -v /sys/fs/cgroup:/sys/fs/cgroup:ro \</span><br><span style="color: hsl(120, 100%, 40%);">+         -v $VOL_BASE_DIR/ran/data:/data \</span><br><span style="color: hsl(120, 100%, 40%);">+             -v $VOL_BASE_DIR/ran/osmocom:/etc/osmocom \</span><br><span style="color: hsl(120, 100%, 40%);">+           -p 4242:4242 -p 4249:4249 \</span><br><span style="color: hsl(120, 100%, 40%);">+           -p 4241:4241 -p 4238:4238 \</span><br><span style="color: hsl(120, 100%, 40%);">+           -p 4243:4243 -p 4267:4267 \</span><br><span style="color: hsl(120, 100%, 40%);">+           -p 4240:4240 -p 23010:23010 \</span><br><span style="color: hsl(120, 100%, 40%);">+         --name ${BUILD_TAG}-ran \</span><br><span style="color: hsl(120, 100%, 40%);">+             $DOCKER_ARGS \</span><br><span style="color: hsl(120, 100%, 40%);">+                $REPO_USER/osmo-ran-$IMAGE_SUFFIX</span><br><span style="color: hsl(120, 100%, 40%);">+#sleep 30</span><br><span style="color: hsl(120, 100%, 40%);">+docker container kill ${BUILD_TAG}-ran</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+#network_remove</span><br><span style="color: hsl(120, 100%, 40%);">+collect_logs</span><br><span>diff --git a/osmo-ran/osmocom/osmo-bsc.cfg b/osmo-ran/osmocom/osmo-bsc.cfg</span><br><span>new file mode 100644</span><br><span>index 0000000..af53647</span><br><span>--- /dev/null</span><br><span>+++ b/osmo-ran/osmocom/osmo-bsc.cfg</span><br><span>@@ -0,0 +1,123 @@</span><br><span style="color: hsl(120, 100%, 40%);">+line vty</span><br><span style="color: hsl(120, 100%, 40%);">+ no login</span><br><span style="color: hsl(120, 100%, 40%);">+ bind 0.0.0.0</span><br><span style="color: hsl(120, 100%, 40%);">+!</span><br><span style="color: hsl(120, 100%, 40%);">+e1_input</span><br><span style="color: hsl(120, 100%, 40%);">+ e1_line 0 driver ipa</span><br><span style="color: hsl(120, 100%, 40%);">+network</span><br><span style="color: hsl(120, 100%, 40%);">+ network country code 234</span><br><span style="color: hsl(120, 100%, 40%);">+ mobile network code 70</span><br><span style="color: hsl(120, 100%, 40%);">+ encryption a5 0</span><br><span style="color: hsl(120, 100%, 40%);">+ neci 1</span><br><span style="color: hsl(120, 100%, 40%);">+ paging any use tch 0</span><br><span style="color: hsl(120, 100%, 40%);">+ handover 0</span><br><span style="color: hsl(120, 100%, 40%);">+ handover algorithm 1</span><br><span style="color: hsl(120, 100%, 40%);">+ handover1 window rxlev averaging 10</span><br><span style="color: hsl(120, 100%, 40%);">+ handover1 window rxqual averaging 1</span><br><span style="color: hsl(120, 100%, 40%);">+ handover1 window rxlev neighbor averaging 10</span><br><span style="color: hsl(120, 100%, 40%);">+ handover1 power budget interval 6</span><br><span style="color: hsl(120, 100%, 40%);">+ handover1 power budget hysteresis 3</span><br><span style="color: hsl(120, 100%, 40%);">+ handover1 maximum distance 9999</span><br><span style="color: hsl(120, 100%, 40%);">+ periodic location update 30</span><br><span style="color: hsl(120, 100%, 40%);">+ bts 0</span><br><span style="color: hsl(120, 100%, 40%);">+  type sysmobts</span><br><span style="color: hsl(120, 100%, 40%);">+  band DCS1800</span><br><span style="color: hsl(120, 100%, 40%);">+  cell_identity 0</span><br><span style="color: hsl(120, 100%, 40%);">+  location_area_code 5</span><br><span style="color: hsl(120, 100%, 40%);">+  base_station_id_code 63</span><br><span style="color: hsl(120, 100%, 40%);">+  ms max power 15</span><br><span style="color: hsl(120, 100%, 40%);">+  cell reselection hysteresis 4</span><br><span style="color: hsl(120, 100%, 40%);">+  rxlev access min 0</span><br><span style="color: hsl(120, 100%, 40%);">+  radio-link-timeout 32</span><br><span style="color: hsl(120, 100%, 40%);">+  channel allocator ascending</span><br><span style="color: hsl(120, 100%, 40%);">+  rach tx integer 9</span><br><span style="color: hsl(120, 100%, 40%);">+  rach max transmission 7</span><br><span style="color: hsl(120, 100%, 40%);">+  channel-description attach 1</span><br><span style="color: hsl(120, 100%, 40%);">+  channel-description bs-pa-mfrms 5</span><br><span style="color: hsl(120, 100%, 40%);">+  channel-description bs-ag-blks-res 1</span><br><span style="color: hsl(120, 100%, 40%);">+  early-classmark-sending forbidden</span><br><span style="color: hsl(120, 100%, 40%);">+  ip.access unit_id 6969 0</span><br><span style="color: hsl(120, 100%, 40%);">+  oml ip.access stream_id 255 line 0</span><br><span style="color: hsl(120, 100%, 40%);">+  codec-support fr amr</span><br><span style="color: hsl(120, 100%, 40%);">+  gprs mode egprs</span><br><span style="color: hsl(120, 100%, 40%);">+  gprs routing area 0</span><br><span style="color: hsl(120, 100%, 40%);">+  gprs network-control-order nc1</span><br><span style="color: hsl(120, 100%, 40%);">+  gprs cell bvci 1800</span><br><span style="color: hsl(120, 100%, 40%);">+  gprs nsei 1800</span><br><span style="color: hsl(120, 100%, 40%);">+  gprs nsvc 0 nsvci 1800</span><br><span style="color: hsl(120, 100%, 40%);">+  gprs nsvc 0 local udp port 23020</span><br><span style="color: hsl(120, 100%, 40%);">+  gprs nsvc 0 remote udp port 23000</span><br><span style="color: hsl(120, 100%, 40%);">+  gprs nsvc 0 remote ip $SGSN_IP</span><br><span style="color: hsl(120, 100%, 40%);">+  trx 0</span><br><span style="color: hsl(120, 100%, 40%);">+   rf_locked 0</span><br><span style="color: hsl(120, 100%, 40%);">+   arfcn 871</span><br><span style="color: hsl(120, 100%, 40%);">+   nominal power 23</span><br><span style="color: hsl(120, 100%, 40%);">+   ! to use full TRX power, set max_power_red 0</span><br><span style="color: hsl(120, 100%, 40%);">+   max_power_red 4</span><br><span style="color: hsl(120, 100%, 40%);">+   rsl e1 tei 0</span><br><span style="color: hsl(120, 100%, 40%);">+   timeslot 0</span><br><span style="color: hsl(120, 100%, 40%);">+    phys_chan_config CCCH+SDCCH4</span><br><span style="color: hsl(120, 100%, 40%);">+    hopping enabled 0</span><br><span style="color: hsl(120, 100%, 40%);">+   timeslot 1</span><br><span style="color: hsl(120, 100%, 40%);">+    phys_chan_config TCH/F</span><br><span style="color: hsl(120, 100%, 40%);">+    hopping enabled 0</span><br><span style="color: hsl(120, 100%, 40%);">+   timeslot 2</span><br><span style="color: hsl(120, 100%, 40%);">+    phys_chan_config TCH/F</span><br><span style="color: hsl(120, 100%, 40%);">+    hopping enabled 0</span><br><span style="color: hsl(120, 100%, 40%);">+   timeslot 3</span><br><span style="color: hsl(120, 100%, 40%);">+    phys_chan_config TCH/F</span><br><span style="color: hsl(120, 100%, 40%);">+    hopping enabled 0</span><br><span style="color: hsl(120, 100%, 40%);">+   timeslot 4</span><br><span style="color: hsl(120, 100%, 40%);">+    phys_chan_config TCH/F</span><br><span style="color: hsl(120, 100%, 40%);">+    hopping enabled 0</span><br><span style="color: hsl(120, 100%, 40%);">+   timeslot 5</span><br><span style="color: hsl(120, 100%, 40%);">+    phys_chan_config PDCH</span><br><span style="color: hsl(120, 100%, 40%);">+    hopping enabled 0</span><br><span style="color: hsl(120, 100%, 40%);">+   timeslot 6</span><br><span style="color: hsl(120, 100%, 40%);">+    phys_chan_config PDCH</span><br><span style="color: hsl(120, 100%, 40%);">+    !phys_chan_config TCH/F</span><br><span style="color: hsl(120, 100%, 40%);">+    hopping enabled 0</span><br><span style="color: hsl(120, 100%, 40%);">+   timeslot 7</span><br><span style="color: hsl(120, 100%, 40%);">+    phys_chan_config PDCH</span><br><span style="color: hsl(120, 100%, 40%);">+    !phys_chan_config TCH/F</span><br><span style="color: hsl(120, 100%, 40%);">+    hopping enabled 0</span><br><span style="color: hsl(120, 100%, 40%);">+!</span><br><span style="color: hsl(120, 100%, 40%);">+cs7 instance 0</span><br><span style="color: hsl(120, 100%, 40%);">+ point-code 0.0.2</span><br><span style="color: hsl(120, 100%, 40%);">+ asp asp0 2905 0 m3ua</span><br><span style="color: hsl(120, 100%, 40%);">+  local-ip $DOCKER_IN_IP</span><br><span style="color: hsl(120, 100%, 40%);">+  remote-ip $STP_IP</span><br><span style="color: hsl(120, 100%, 40%);">+ as as0 m3ua</span><br><span style="color: hsl(120, 100%, 40%);">+  asp asp0</span><br><span style="color: hsl(120, 100%, 40%);">+  routing-key 30 0.0.2</span><br><span style="color: hsl(120, 100%, 40%);">+  traffic-mode loadshare</span><br><span style="color: hsl(120, 100%, 40%);">+ sccp-address bsc_local</span><br><span style="color: hsl(120, 100%, 40%);">+  point-code 0.0.2</span><br><span style="color: hsl(120, 100%, 40%);">+  routing-indicator PC</span><br><span style="color: hsl(120, 100%, 40%);">+ sccp-address msc_remote</span><br><span style="color: hsl(120, 100%, 40%);">+  point-code 0.23.1</span><br><span style="color: hsl(120, 100%, 40%);">+  routing-indicator PC</span><br><span style="color: hsl(120, 100%, 40%);">+!</span><br><span style="color: hsl(120, 100%, 40%);">+msc 0</span><br><span style="color: hsl(120, 100%, 40%);">+ no bsc-welcome-text</span><br><span style="color: hsl(120, 100%, 40%);">+ no bsc-msc-lost-text</span><br><span style="color: hsl(120, 100%, 40%);">+ no bsc-grace-text</span><br><span style="color: hsl(120, 100%, 40%);">+ type normal</span><br><span style="color: hsl(120, 100%, 40%);">+ allow-emergency allow</span><br><span style="color: hsl(120, 100%, 40%);">+ codec-list hr3 fr3</span><br><span style="color: hsl(120, 100%, 40%);">+ !mgw remote-ip 192.168.30.1</span><br><span style="color: hsl(120, 100%, 40%);">+ mgw remote-ip 127.0.0.1</span><br><span style="color: hsl(120, 100%, 40%);">+ mgw remote-port 2427</span><br><span style="color: hsl(120, 100%, 40%);">+ amr-config 12_2k forbidden</span><br><span style="color: hsl(120, 100%, 40%);">+ amr-config 10_2k forbidden</span><br><span style="color: hsl(120, 100%, 40%);">+ amr-config 7_95k forbidden</span><br><span style="color: hsl(120, 100%, 40%);">+ amr-config 7_40k forbidden</span><br><span style="color: hsl(120, 100%, 40%);">+ amr-config 6_70k forbidden</span><br><span style="color: hsl(120, 100%, 40%);">+ amr-config 5_90k allowed</span><br><span style="color: hsl(120, 100%, 40%);">+ amr-config 5_15k forbidden</span><br><span style="color: hsl(120, 100%, 40%);">+ amr-config 4_75k forbidden</span><br><span style="color: hsl(120, 100%, 40%);">+ msc-addr msc_remote</span><br><span style="color: hsl(120, 100%, 40%);">+ bsc-addr bsc_local</span><br><span style="color: hsl(120, 100%, 40%);">+bsc</span><br><span style="color: hsl(120, 100%, 40%);">+ mid-call-timeout 0</span><br><span style="color: hsl(120, 100%, 40%);">+ no missing-msc-text</span><br><span>diff --git a/osmo-ran/osmocom/osmo-bts-trx.cfg b/osmo-ran/osmocom/osmo-bts-trx.cfg</span><br><span>new file mode 100644</span><br><span>index 0000000..20aeae0</span><br><span>--- /dev/null</span><br><span>+++ b/osmo-ran/osmocom/osmo-bts-trx.cfg</span><br><span>@@ -0,0 +1,36 @@</span><br><span style="color: hsl(120, 100%, 40%);">+!</span><br><span style="color: hsl(120, 100%, 40%);">+! OsmoBTS () configuration saved from vty</span><br><span style="color: hsl(120, 100%, 40%);">+!!</span><br><span style="color: hsl(120, 100%, 40%);">+!</span><br><span style="color: hsl(120, 100%, 40%);">+log stderr</span><br><span style="color: hsl(120, 100%, 40%);">+ logging color 1</span><br><span style="color: hsl(120, 100%, 40%);">+ logging timestamp 0</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level rsl notice</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level oml notice</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level rll notice</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level rr notice</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level meas error</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level pag error</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level l1c error</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level l1p error</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level dsp error</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level abis error</span><br><span style="color: hsl(120, 100%, 40%);">+!</span><br><span style="color: hsl(120, 100%, 40%);">+line vty</span><br><span style="color: hsl(120, 100%, 40%);">+ no login</span><br><span style="color: hsl(120, 100%, 40%);">+ bind 0.0.0.0</span><br><span style="color: hsl(120, 100%, 40%);">+!</span><br><span style="color: hsl(120, 100%, 40%);">+phy 0</span><br><span style="color: hsl(120, 100%, 40%);">+ instance 0</span><br><span style="color: hsl(120, 100%, 40%);">+ osmotrx ip local $DOCKER_IN_IP</span><br><span style="color: hsl(120, 100%, 40%);">+ osmotrx ip remote $TRX_IP</span><br><span style="color: hsl(120, 100%, 40%);">+bts 0</span><br><span style="color: hsl(120, 100%, 40%);">+ band 1800</span><br><span style="color: hsl(120, 100%, 40%);">+ ipa unit-id 6969 0</span><br><span style="color: hsl(120, 100%, 40%);">+ oml remote-ip 127.0.0.1</span><br><span style="color: hsl(120, 100%, 40%);">+ gsmtap-sapi ccch</span><br><span style="color: hsl(120, 100%, 40%);">+ gsmtap-sapi pdtch</span><br><span style="color: hsl(120, 100%, 40%);">+ trx 0</span><br><span style="color: hsl(120, 100%, 40%);">+  phy 0 instance 0</span><br><span style="color: hsl(120, 100%, 40%);">+cpu-sched</span><br><span style="color: hsl(120, 100%, 40%);">+ policy rr 1</span><br><span>diff --git a/osmo-ran/osmocom/osmo-mgw.cfg b/osmo-ran/osmocom/osmo-mgw.cfg</span><br><span>new file mode 100644</span><br><span>index 0000000..421816f</span><br><span>--- /dev/null</span><br><span>+++ b/osmo-ran/osmocom/osmo-mgw.cfg</span><br><span>@@ -0,0 +1,22 @@</span><br><span style="color: hsl(120, 100%, 40%);">+!</span><br><span style="color: hsl(120, 100%, 40%);">+! MGCP configuration example</span><br><span style="color: hsl(120, 100%, 40%);">+!</span><br><span style="color: hsl(120, 100%, 40%);">+line vty</span><br><span style="color: hsl(120, 100%, 40%);">+ no login</span><br><span style="color: hsl(120, 100%, 40%);">+ bind 0.0.0.0</span><br><span style="color: hsl(120, 100%, 40%);">+!</span><br><span style="color: hsl(120, 100%, 40%);">+mgcp</span><br><span style="color: hsl(120, 100%, 40%);">+  bind ip 127.0.0.1</span><br><span style="color: hsl(120, 100%, 40%);">+  rtp port-range 4002 16000</span><br><span style="color: hsl(120, 100%, 40%);">+  rtp bind-ip $DOCKER_IN_IP</span><br><span style="color: hsl(120, 100%, 40%);">+  rtp ip-probing</span><br><span style="color: hsl(120, 100%, 40%);">+  rtp ip-tos 184</span><br><span style="color: hsl(120, 100%, 40%);">+  bind port 2427</span><br><span style="color: hsl(120, 100%, 40%);">+  sdp audio payload number 98</span><br><span style="color: hsl(120, 100%, 40%);">+  sdp audio payload name GSM</span><br><span style="color: hsl(120, 100%, 40%);">+  number endpoints 31</span><br><span style="color: hsl(120, 100%, 40%);">+  loop 0</span><br><span style="color: hsl(120, 100%, 40%);">+  force-realloc 1</span><br><span style="color: hsl(120, 100%, 40%);">+  rtcp-omit</span><br><span style="color: hsl(120, 100%, 40%);">+  rtp-patch ssrc</span><br><span style="color: hsl(120, 100%, 40%);">+  rtp-patch timestamp</span><br><span>diff --git a/osmo-ran/osmocom/osmo-pcu.cfg b/osmo-ran/osmocom/osmo-pcu.cfg</span><br><span>new file mode 100644</span><br><span>index 0000000..2e31cbc</span><br><span>--- /dev/null</span><br><span>+++ b/osmo-ran/osmocom/osmo-pcu.cfg</span><br><span>@@ -0,0 +1,11 @@</span><br><span style="color: hsl(120, 100%, 40%);">+!</span><br><span style="color: hsl(120, 100%, 40%);">+line vty</span><br><span style="color: hsl(120, 100%, 40%);">+ no login</span><br><span style="color: hsl(120, 100%, 40%);">+ bind 0.0.0.0</span><br><span style="color: hsl(120, 100%, 40%);">+!</span><br><span style="color: hsl(120, 100%, 40%);">+pcu</span><br><span style="color: hsl(120, 100%, 40%);">+ flow-control-interval 10</span><br><span style="color: hsl(120, 100%, 40%);">+ cs 2</span><br><span style="color: hsl(120, 100%, 40%);">+ alloc-algorithm dynamic</span><br><span style="color: hsl(120, 100%, 40%);">+ alpha 0</span><br><span style="color: hsl(120, 100%, 40%);">+ gamma 0</span><br><span>diff --git a/osmo-ran/osmocom/osmo-trx-ipc.cfg b/osmo-ran/osmocom/osmo-trx-ipc.cfg</span><br><span>new file mode 100644</span><br><span>index 0000000..3241950</span><br><span>--- /dev/null</span><br><span>+++ b/osmo-ran/osmocom/osmo-trx-ipc.cfg</span><br><span>@@ -0,0 +1,33 @@</span><br><span style="color: hsl(120, 100%, 40%);">+log stderr</span><br><span style="color: hsl(120, 100%, 40%);">+ logging filter all 1</span><br><span style="color: hsl(120, 100%, 40%);">+ logging color 1</span><br><span style="color: hsl(120, 100%, 40%);">+ logging print category 1</span><br><span style="color: hsl(120, 100%, 40%);">+ logging timestamp 1</span><br><span style="color: hsl(120, 100%, 40%);">+ logging print file basename</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level set-all notice</span><br><span style="color: hsl(120, 100%, 40%);">+!</span><br><span style="color: hsl(120, 100%, 40%);">+line vty</span><br><span style="color: hsl(120, 100%, 40%);">+no login</span><br><span style="color: hsl(120, 100%, 40%);">+bind 0.0.0.0</span><br><span style="color: hsl(120, 100%, 40%);">+!</span><br><span style="color: hsl(120, 100%, 40%);">+cpu-sched</span><br><span style="color: hsl(120, 100%, 40%);">+ policy rr 18</span><br><span style="color: hsl(120, 100%, 40%);">+trx</span><br><span style="color: hsl(120, 100%, 40%);">+ bind-ip 127.0.0.1</span><br><span style="color: hsl(120, 100%, 40%);">+ remote-ip 127.0.0.1</span><br><span style="color: hsl(120, 100%, 40%);">+ ! 28 dB offset below is valid only for the B2xx in 1800 MHz band, see</span><br><span style="color: hsl(120, 100%, 40%);">+ ! https://osmocom.org/issues/4468 for more details</span><br><span style="color: hsl(120, 100%, 40%);">+ rssi-offset 28.000000</span><br><span style="color: hsl(120, 100%, 40%);">+ tx-sps 4</span><br><span style="color: hsl(120, 100%, 40%);">+ rx-sps 4</span><br><span style="color: hsl(120, 100%, 40%);">+ clock-ref external</span><br><span style="color: hsl(120, 100%, 40%);">+ egprs disable</span><br><span style="color: hsl(120, 100%, 40%);">+ ext-rach disable</span><br><span style="color: hsl(120, 100%, 40%);">+ dev-args ipc_msock=/tmp/ipc_sock0</span><br><span style="color: hsl(120, 100%, 40%);">+ multi-arfcn disable</span><br><span style="color: hsl(120, 100%, 40%);">+ chan 0</span><br><span style="color: hsl(120, 100%, 40%);">+  tx-path TX/RX</span><br><span style="color: hsl(120, 100%, 40%);">+  rx-path RX2</span><br><span style="color: hsl(120, 100%, 40%);">+ chan 1</span><br><span style="color: hsl(120, 100%, 40%);">+  tx-path TX/RX</span><br><span style="color: hsl(120, 100%, 40%);">+  rx-path RX2</span><br><span>diff --git a/osmo-ran/osmocom/osmo-trx-uhd.cfg b/osmo-ran/osmocom/osmo-trx-uhd.cfg</span><br><span>new file mode 100644</span><br><span>index 0000000..234a2ee</span><br><span>--- /dev/null</span><br><span>+++ b/osmo-ran/osmocom/osmo-trx-uhd.cfg</span><br><span>@@ -0,0 +1,22 @@</span><br><span style="color: hsl(120, 100%, 40%);">+log stderr</span><br><span style="color: hsl(120, 100%, 40%);">+ logging filter all 1</span><br><span style="color: hsl(120, 100%, 40%);">+ logging color 1</span><br><span style="color: hsl(120, 100%, 40%);">+ logging print category 1</span><br><span style="color: hsl(120, 100%, 40%);">+ logging timestamp 1</span><br><span style="color: hsl(120, 100%, 40%);">+ logging print file basename</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level set-all notice</span><br><span style="color: hsl(120, 100%, 40%);">+!</span><br><span style="color: hsl(120, 100%, 40%);">+line vty</span><br><span style="color: hsl(120, 100%, 40%);">+no login</span><br><span style="color: hsl(120, 100%, 40%);">+bind 0.0.0.0</span><br><span style="color: hsl(120, 100%, 40%);">+!</span><br><span style="color: hsl(120, 100%, 40%);">+cpu-sched</span><br><span style="color: hsl(120, 100%, 40%);">+ policy rr 18</span><br><span style="color: hsl(120, 100%, 40%);">+trx</span><br><span style="color: hsl(120, 100%, 40%);">+ bind-ip 127.0.0.1</span><br><span style="color: hsl(120, 100%, 40%);">+ remote-ip 127.0.0.1</span><br><span style="color: hsl(120, 100%, 40%);">+ egprs disable</span><br><span style="color: hsl(120, 100%, 40%);">+ tx-sps 4</span><br><span style="color: hsl(120, 100%, 40%);">+ rx-sps 4</span><br><span style="color: hsl(120, 100%, 40%);">+ clock-ref external</span><br><span style="color: hsl(120, 100%, 40%);">+ chan 0</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/docker-playground/+/21263">change 21263</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/docker-playground/+/21263"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: docker-playground </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: If5d22e9fa818310cbb4adc34bd7aceb4416ec969 </div>
<div style="display:none"> Gerrit-Change-Number: 21263 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>