2 # Copyright (c) 2019 AT&T Intellectual Property.
3 # Copyright (c) 2018-2019 Nokia.
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
9 # http://www.apache.org/licenses/LICENSE-2.0
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
17 # This source code is part of the near-RT RIC (RAN Intelligent Controller)
18 # platform project (RICP).
21 FROM golang:1.16 as gobuild
24 RUN apt update && apt install -y iputils-ping net-tools curl sudo
26 # Set the Working Directory for ves-agent inside the container
27 RUN mkdir -p $GOPATH/src/VESPA
28 WORKDIR $GOPATH/src/VESPA
30 # Clone VES Agent v0.3.0 from github
31 RUN git clone -b v0.3.0 https://github.com/nokia/ONAP-VESPA.git $GOPATH/src/VESPA
33 RUN GO111MODULE=on go mod download
36 RUN export GOPATH=$HOME/go && \
37 export PATH=$GOPATH/bin:$GOROOT/bin:$PATH && \
38 go install -v ./ves-agent
40 # Set the Working Directory for vespamgr inside the container
41 RUN mkdir -p /go/src/vespamgr
43 COPY . /go/src/vespamgr
44 WORKDIR /go/src/vespamgr
48 # Final, executable and deployable container
51 RUN mkdir -p /etc/ves-agent
53 COPY --from=gobuild /usr/local/lib /usr/local/lib
54 COPY --from=gobuild /root/go/bin /root/go/bin
55 COPY --from=gobuild /root/go/bin/vespamgr /usr/local/bin/vesmgr
56 COPY --from=gobuild /root/go/bin/vespamgr /vespamgr
57 COPY --from=gobuild /go/src/vespamgr/config/* /cfg/
58 COPY --from=gobuild /go/src/vespamgr/config/plt-counter.json /cfg/plt-counter.json
61 ENV CFG_FILE=/cfg/config-file.json
62 ENV RMR_SEED_RT=/cfg/uta_rtg.rt
64 ENV PATH="/root/go/bin:${PATH}"
66 ENTRYPOINT ["/vespamgr"]