X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=Dockerfile;h=6457359bc4e5fd19da5b757ddfdfa890b53bfba8;hb=be9f2684de5ed4afbe22f441cb9db5f268d05af3;hp=10cdd1c15398787b2c164637d7251f0f01e8c8d8;hpb=419d851344e85fffeeb9a65726cd02e97dbfe7df;p=ric-plt%2Frtmgr.git diff --git a/Dockerfile b/Dockerfile index 10cdd1c..6457359 100644 --- a/Dockerfile +++ b/Dockerfile @@ -20,19 +20,47 @@ # a Docker tag from the string in file container-tag.yaml FROM golang:1.12 as rtmgrbuild -ENV GOPATH /opt +ENV GOPATH /go RUN apt-get update \ - && apt-get install golang-glide -COPY . /opt -RUN mkdir -p $GOPATH/bin \ - && ln -s -f $GOPATH/pkg $GOPATH/src \ - && cd $GOPATH/src \ - && glide install --strip-vendor \ - && cd $GOPATH/cmd \ - && go build rtmgr.go \ - && mv $GOPATH/cmd/rtmgr $GOPATH/bin + && apt-get install -y golang-glide git wget +RUN cd /go/bin \ + && wget --quiet https://github.com/go-swagger/go-swagger/releases/download/v0.19.0/swagger_linux_amd64 \ + && mv swagger_linux_amd64 swagger \ + && chmod +x swagger + +WORKDIR /go/src/routing-manager +COPY api/ /go/src/routing-manager/api +COPY LICENSE LICENSE +RUN mkdir pkg + +RUN git clone "https://gerrit.o-ran-sc.org/r/ric-plt/appmgr" \ + && cp appmgr/api/appmgr_rest_api.yaml api/ \ + && rm -rf appmgr + +RUN swagger generate server -f api/routing_manager.yaml -t pkg/ --exclude-main -r LICENSE +RUN swagger generate client -f api/appmgr_rest_api.yaml -t pkg/ -m appmgr_model -c appmgr_client -r LICENSE + +COPY glide.lock glide.lock +COPY glide.yaml glide.yaml + +RUN glide install --strip-vendor + +COPY pkg pkg +COPY cmd cmd +COPY run_rtmgr.sh /run_rtmgr.sh + +ENV GOBIN /go/bin +RUN go install ./cmd/rtmgr.go + +# UT intermediate container +FROM rtmgrbuild as rtmgrut +RUN go test ./pkg/sbi ./pkg/rpe ./pkg/nbi ./pkg/sdl -cover -race +# Final, executable container FROM ubuntu:16.04 -COPY --from=rtmgrbuild /opt/bin/rtmgr / -RUN mkdir /db && touch /db/rt.json -CMD /rtmgr +COPY --from=rtmgrbuild /go/bin/rtmgr / +COPY --from=rtmgrbuild /run_rtmgr.sh / +RUN apt-get update && apt-get install -y iputils-ping net-tools curl tcpdump +RUN mkdir /db && touch /db/rt.json && chmod 777 /db/rt.json +RUN chmod 755 /run_rtmgr.sh +CMD /run_rtmgr.sh