+COPY 3rdparty 3rdparty
+RUN cd 3rdparty/E2AP-v01.00.00 && \
+ gcc -c ${CFLAGS} -I. -g -fPIC *.c && \
+ gcc *.o -g -shared -o libe2ap.so && \
+ cp libe2ap.so /usr/local/lib/ && \
+ cp *.h /usr/local/include/ && \
+ ldconfig
+
+
+RUN echo "E2AP E2AP-v01.00.00" >> /manifests/versions.txt
+
+
+COPY e2ap e2ap
+RUN cd e2ap/libe2ap_wrapper && \
+ gcc -c ${CFLAGS} -g -fPIC *.c && \
+ gcc *.o -g -shared -o libe2ap_wrapper.so && \
+ cp libe2ap_wrapper.so /usr/local/lib/ && \
+ cp *.h /usr/local/include/ && \
+ ldconfig
+
+# unittest
+RUN cd e2ap && go test -v ./pkg/conv
+RUN cd e2ap && go test -v ./pkg/e2ap_wrapper
+
+# test formating (not important)
+RUN cd e2ap && test -z "$(gofmt -l pkg/conv/*.go)"
+RUN cd e2ap && test -z "$(gofmt -l pkg/e2ap_wrapper/*.go)"
+RUN cd e2ap && test -z "$(gofmt -l pkg/e2ap/*.go)"
+RUN cd e2ap && test -z "$(gofmt -l pkg/e2ap/e2ap_tests/*.go)"
+
+
+###########################################################
+#
+###########################################################
+FROM submgre2apbuild as submgrbuild
+#
+#
+#
+COPY go.mod go.mod
+RUN go mod download
+
+#
+#
+#
+RUN mkdir pkg
+COPY api api
+
+
+ARG RTMGRVERSION=cd7867c8f527f46fd8702b0b8d6b380a8e134bea
+
+RUN git clone "https://gerrit.o-ran-sc.org/r/ric-plt/rtmgr" \
+ && git -C "rtmgr" checkout $RTMGRVERSION \
+ && cp rtmgr/api/routing_manager.yaml api/ \
+ && rm -rf rtmgr
+
+
+RUN mkdir -p /root/go && \
+ swagger generate client -f api/routing_manager.yaml -t pkg/ -m rtmgr_models -c rtmgr_client
+
+
+RUN echo "rtmgrapi ${RTMGRVERSION} https://gerrit.o-ran-sc.org/r/ric-plt/rtmgr" >> /manifests/versions.txt
+
+#
+#
+#
+COPY pkg pkg
+COPY cmd cmd
+
+COPY go.sum go.sum
+RUN go mod tidy
+
+RUN mkdir -p /opt/bin && \
+ go build -o /opt/bin/submgr cmd/submgr.go && \
+ mkdir -p /opt/build/container/usr/local
+
+RUN cp go.mod go.sum /manifests/
+RUN grep gerrit /manifests/go.sum > /manifests/go_gerrit.sum
+
+
+# unittest
+COPY test/config-file.json test/config-file.json
+ENV CFG_FILE=/opt/submgr/test/config-file.json
+COPY test/uta_rtg.rt test/uta_rtg.rt
+ENV RMR_SEED_RT=/opt/submgr/test/uta_rtg.rt
+
+#ENV CGO_LDFLAGS="-fsanitize=address"
+#ENV CGO_CFLAGS="-fsanitize=address"
+
+#
+# To get debug from rmr
+#
+#RUN echo 5 > /opt/submgr/level
+#RUN RMR_VCTL_FILE=/opt/submgr/level go test -test.coverprofile /tmp/submgr_cover.out -count=1 -v ./pkg/control
+
+#
+# go tests. comment out ipv6 localhost if exist when tests are executed.
+#
+RUN sed -r "s/^(::1.*)/#\1/" /etc/hosts > /etc/hosts.new \
+ && cat /etc/hosts.new > /etc/hosts \
+ && cat /etc/hosts \
+ && go test -failfast -test.coverprofile /tmp/submgr_cover.out -count=1 -v ./pkg/control \
+ && go tool cover -html=/tmp/submgr_cover.out -o /tmp/submgr_cover.html
+
+# test formating (not important)
+RUN test -z "$(gofmt -l pkg/control/*.go)"
+RUN test -z "$(gofmt -l pkg/teststub/*.go)"
+RUN test -z "$(gofmt -l pkg/teststubdummy/*.go)"
+RUN test -z "$(gofmt -l pkg/teststube2ap/*.go)"
+
+
+###########################################################
+#
+###########################################################