Updating image with rmr version
[ric-app/hw.git] / Dockerfile-Unit-Tests
index 60efaca..b14d62d 100755 (executable)
@@ -1,25 +1,27 @@
 #/*
-#==================================================================================
-#        Copyright (c) 2018-2019 AT&T Intellectual Property.
-#
-#   Licensed under the Apache License, Version 2.0 (the "License");
-#   you may not use this file except in compliance with the License.
-#   You may obtain a copy of the License at
-#
-#       http://www.apache.org/licenses/LICENSE-2.0
-#
-#   Unless required by applicable law or agreed to in writing, software
-#   distributed under the License is distributed on an "AS IS" BASIS,
-#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#   See the License for the specific language governing permissions and
-#   limitations under the License.
-#==================================================================================
-#*/
+##==================================================================================
+##
+##        Copyright (c) 2019-2020 AT&T Intellectual Property.
+##
+##   Licensed under the Apache License, Version 2.0 (the "License");
+##   you may not use this file except in compliance with the License.
+##   You may obtain a copy of the License at
+##
+##       http://www.apache.org/licenses/LICENSE-2.0
+##
+##   Unless required by applicable law or agreed to in writing, software
+##   distributed under the License is distributed on an "AS IS" BASIS,
+##   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+##   See the License for the specific language governing permissions and
+##   limitations under the License.
+##==================================================================================
+## */
+
 ARG SCHEMA_PATH=schemas
 ARG STAGE_DIR=/tmp/helloworld-xapp
 
 #==================================================================================
-FROM nexus3.o-ran-sc.org:10004/bldr-ubuntu16-c-go@sha256:f4ebcc792b501f283c7848018b6f106bbcecf1f9e699035950614460b3c330f8 as ricbuild
+FROM nexus3.o-ran-sc.org:10001/ubuntu:18.04 as ricbuild
 
 # to override repo base, pass in repo argument when running docker build:
 # docker build --build-arg REPOBASE=http://abc.def.org . ....
@@ -32,8 +34,6 @@ ARG STAGE_DIR
 WORKDIR ${STAGE_DIR}
 RUN apt-get update  \
      && apt-get install -y \
-     libcurl4-openssl-dev \
-     libcurl3 \
      cmake \
      git \
      build-essential \
@@ -50,27 +50,32 @@ RUN apt-get update  \
 
 # Install mdclog using debian package hosted at packagecloud.io
 ARG MDC_VER=0.0.4-1
-RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/staging/packages/debian/stretch/mdclog_${MDC_VER}_amd64.deb/download.deb
-RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/staging/packages/debian/stretch/mdclog-dev_${MDC_VER}_amd64.deb/download.deb
+RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/mdclog_${MDC_VER}_amd64.deb/download.deb
+RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/mdclog-dev_${MDC_VER}_amd64.deb/download.deb
 RUN dpkg -i mdclog_${MDC_VER}_amd64.deb
 RUN dpkg -i mdclog-dev_${MDC_VER}_amd64.deb
 
 # Install RMr using debian package hosted at packagecloud.io
-ARG RMR_VER=3.6.2
-RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/staging/packages/debian/stretch/rmr_${RMR_VER}_amd64.deb/download.deb
-RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/staging/packages/debian/stretch/rmr-dev_${RMR_VER}_amd64.deb/download.deb
+ARG RMR_VER=4.4.6
+RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/rmr_${RMR_VER}_amd64.deb/download.deb
+RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/rmr-dev_${RMR_VER}_amd64.deb/download.deb
 RUN dpkg -i rmr_${RMR_VER}_amd64.deb
 RUN dpkg -i rmr-dev_${RMR_VER}_amd64.deb
 
 ##Iinstall Google test
 
 WORKDIR ${STAGE_DIR}
-RUN apt-get install libgtest-dev
+RUN apt-get install -y libgtest-dev
 RUN cd /usr/src/gtest \
     && cmake CMakeLists.txt \
     && make \
     && cp *.a /usr/local/lib
 
+#Install RNIB libraries
+ARG RNIB_VER=1.0.0
+RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/rnib_${RNIB_VER}_all.deb/download.deb
+RUN dpkg -i rnib_${RNIB_VER}_all.deb
+
 
 ## Install SDL Libraries
 WORKDIR ${STAGE_DIR}
@@ -78,15 +83,12 @@ RUN apt-get install -y cpputest
 RUN apt-get remove -y libboost-all-dev
 RUN apt-get install -y  libboost-all-dev
 RUN apt-get install -y libhiredis-dev
-RUN apt-get install -y valgrind
 
-RUN git config --global http.proxy http://one.proxy.att.com:8080
 RUN git clone https://gerrit.o-ran-sc.org/r/ric-plt/dbaas
 RUN cd dbaas/redismodule && \
     ./autogen.sh && \
     ./configure && \
     make all && \
-##    make test && \
     make install
 
 WORKDIR ${STAGE_DIR}
@@ -95,14 +97,11 @@ RUN cd sdl && \
     ./autogen.sh && \
     ./configure && \
     make all && \
-#    make test && \
     make install
 
-RUN git config --global --unset http.proxy
 
 WORKDIR ${STAGE_DIR}
 ## Install rapidjson
-    #git checkout tags/v1.1.0 && \
 
 RUN git clone https://github.com/Tencent/rapidjson && \
     cd rapidjson && \
@@ -113,16 +112,11 @@ RUN git clone https://github.com/Tencent/rapidjson && \
     cd ${STAGE_DIR} && \
     rm -rf rapidjson
 
-### Copy RNIB library and include rnib.
-RUN mkdir /usr/local/include/rnib
-
 ##-----------------------------------
 # Now install the program
 #------------------------------------
 COPY ./ ${STAGE_DIR}
 RUN ls -al
-COPY ${STAGE}/rnib/*.h /usr/local/include/rnib/
-COPY ${STAGE}/rnibreader_old.a /usr/local/lib/
 
 RUN export CPATH=$CPATH:/usr/local/include && \ 
     cd test && \
@@ -131,20 +125,18 @@ RUN export CPATH=$CPATH:/usr/local/include && \
 
 COPY ${SCHEMA_PATH}/* /etc/xapp/
 COPY init/init_script.py /etc/xapp/init_script.py
-
+COPY init/routes.txt /etc/xapp/routes.txt
 
 #---------------------------------------------
 # #Build the final version
-##FROM nexus3.o-ran-sc.org:10004/bldr-ubuntu16-c-go:1-u16.04-nng1.1.1
 
-FROM ubuntu:16.04
+FROM ubuntu:18.04
 
 ARG SCHEMA_PATH
 ARG STAGE_DIR
 
 ## copy just the needed libraries install it into the final image
 COPY --from=ricbuild ${STAGE_DIR}/*.deb /tmp/
-#COPY --from=ricbuild /usr/local/libexec/. /usr/local/libexec/.
 COPY --from=ricbuild /usr/local/lib/librmr_si* /usr/local/lib/
 COPY --from=ricbuild /usr/local/lib/libgtest* /usr/local/lib/
 COPY --from=ricbuild /usr/local/lib/libsdl* /usr/local/lib/
@@ -156,14 +148,8 @@ RUN apt-get update && \
     apt-get clean
 COPY --from=ricbuild /etc/xapp/* /etc/xapp/
 COPY --from=ricbuild /usr/local/bin/hw_unit_tests /usr/local/bin/hw_unit_tests
-COPY --from=ricbuild ${STAGE_DIR}/rnib/*.h /usr/local/include/rnib/
-COPY --from=ricbuild ${STAGE_DIR}/rnibreader_old.a /usr/local/lib/
-
-##COPY --from=ricbuild /usr/local/bin/e2e-test-client /usr/local/bin/e2e-test-client
-##COPY --from=ricbuild /usr/local/bin/mock-e2term-server /usr/local/bin/mock-e2term-server
-##COPY --from=ricbuild /usr/local/bin/e2e-perf-client /usr/local/bin/e2e-perf-client
-##COPY --from=ricbuild /usr/local/bin/e2e-perf-server /usr/local/bin/e2e-perf-server
-##COPY --from=ricbuild /usr/local/bin/mock-a1-server /usr/local/bin/mock-a1-server
+COPY --from=ricbuild /usr/local/include/rnib/*.h /usr/local/include/rnib/
+COPY --from=ricbuild /usr/local/include/rnib/rnibreader.a /usr/local/include/rnib/
 
 
 RUN ldconfig
@@ -172,13 +158,8 @@ RUN ldconfig
 ##ENV  PYTHONHOME=/opt/python3 \
 ##     PYTHONPATH=/opt/python3 \
 ENV  RMR_RTG_SVC="9999" \
+     RMR_SEED_RT="/etc/xapp/routes.txt" \
      LD_LIBRARY_PATH="/usr/local/lib:/usr/local/libexec" \
-     NAME=ADM_CTRL_XAPP \
-     PORT=tcp:4560 \
-     THREADS=1\
-     VERBOSE=0 \
-     MESSAGE_TYPE=10002 \
-     RATE=1 \
      CONFIG_FILE=/opt/ric/config/config-file.json \
      EXE_FILE=/usr/local/bin/hw_unit_tests