blob: 7a7366856ca18f5b90d53ce08d18d017dc880036 [file] [log] [blame]
Mohamed Abukar4e7e7122020-03-04 10:01:45 +02001#==================================================================================
2# Copyright (c) 2020 AT&T Intellectual Property.
3# Copyright (c) 2020 Nokia
4#
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
8#
9# http://www.apache.org/licenses/LICENSE-2.0
10#
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.
16#
17# This source code is part of the near-RT RIC (RAN Intelligent Controller)
18# platform project (RICP).
19#==================================================================================
20
wahidwbb304df2021-02-01 07:49:52 +000021FROM nexus3.o-ran-sc.org:10002/o-ran-sc/bldr-ubuntu18-c-go:1.9.0 as ubuntu-alarm-manager
Mohamed Abukar4e7e7122020-03-04 10:01:45 +020022
Mohamed Abukar273c8e82021-10-21 10:02:07 +030023RUN apt update && apt install --reinstall -y ca-certificates && update-ca-certificates
24
Mohamed Abukarebe58c22020-03-13 14:40:47 +020025# Install utilities
Mohamed Abukar63f8a182021-10-25 11:15:51 +030026RUN apt update && apt install -y iputils-ping net-tools curl sudo build-essential
27
28# Installing the go version
29ENV GOLANG_VERSION 1.17.1
30RUN wget --quiet https://dl.google.com/go/go$GOLANG_VERSION.linux-amd64.tar.gz \
31 && tar xvzf go$GOLANG_VERSION.linux-amd64.tar.gz -C /usr/local
32ENV PATH="/usr/local/go/bin:${PATH}"
33ENV GOPATH="/go"
Mohamed Abukar4e7e7122020-03-04 10:01:45 +020034
Mohamed Abukarebe58c22020-03-13 14:40:47 +020035# Install dependencies, compile and test the module
Abukar Mohamed121e8b62020-09-18 11:41:33 +000036RUN mkdir -p /go/src/am
vipin098edb92020-10-23 08:42:33 +000037RUN mkdir -p /cfg
Abukar Mohamed121e8b62020-09-18 11:41:33 +000038COPY . /go/src/am
Mohamed Abukarebe58c22020-03-13 14:40:47 +020039
Abukar Mohamed121e8b62020-09-18 11:41:33 +000040WORKDIR "/go/src/am"
41RUN ./build/build_ubuntu.sh
Mohamed Abukar4e7e7122020-03-04 10:01:45 +020042
Mohamed Abukarebe58c22020-03-13 14:40:47 +020043# Final, executable and deployable container
Anssi Mannila37f0bbb2020-11-26 12:38:21 +020044FROM ubuntu:18.04
Mohamed Abukar4e7e7122020-03-04 10:01:45 +020045
Abukar Mohamed121e8b62020-09-18 11:41:33 +000046COPY --from=ubuntu-alarm-manager /go/src/am/build/run.sh /
47COPY --from=ubuntu-alarm-manager /go/src/am/manager/alarm-manager /
vipin6f73fa32020-10-06 06:51:53 +000048COPY --from=ubuntu-alarm-manager /go/src/am/cli/alarm-cli /
Anssi Mannila00894a42020-10-19 11:36:26 +030049COPY --from=ubuntu-alarm-manager /go/src/am/testresources/perf-alarm-object.json /
50COPY --from=ubuntu-alarm-manager /go/src/am/testresources/perf-alarm-definition.json /
vipin098edb92020-10-23 08:42:33 +000051COPY --from=ubuntu-alarm-manager /go/src/am/config/* /cfg/
Abukar Mohamed121e8b62020-09-18 11:41:33 +000052COPY --from=ubuntu-alarm-manager /usr/local/lib /usr/local/lib
vipin14323a92020-09-25 10:03:43 +000053COPY --from=ubuntu-alarm-manager /go/src/am/definitions/* /
Mohamed Abukar4e7e7122020-03-04 10:01:45 +020054
55RUN ldconfig
vipin6f73fa32020-10-06 06:51:53 +000056ENV DEF_FILE="./alarm-definition.json"
57ENV PERF_DEF_FILE="./perf-alarm-definition.json"
58ENV PERF_OBJ_FILE="./perf-alarm-object.json"
Mohamed Abukar4e7e7122020-03-04 10:01:45 +020059
Abukar Mohamed121e8b62020-09-18 11:41:33 +000060RUN chmod 755 /run.sh
61CMD /run.sh