blob: ba43f6722c38a5c25f96237e1b65eba6d5c8e30e [file] [log] [blame]
Rolf Badorek8f638132019-10-09 10:24:58 +03001#
2# Copyright (c) 2018-2019 Nokia.
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16
Timo Tietavainena0745d22019-11-28 09:55:22 +020017#
18# This source code is part of the near-RT RIC (RAN Intelligent Controller)
19# platform project (RICP).
20#
21
Rolf Badorekcc9244c2019-11-12 18:19:37 +020022FROM ubuntu:18.04
Rolf Badorek8f638132019-10-09 10:24:58 +030023
Rolf Badorekcc9244c2019-11-12 18:19:37 +020024# Install building tools and SDL dependencies:
Rolf Badorek8f638132019-10-09 10:24:58 +030025RUN apt-get update && \
Rolf Badorekcc9244c2019-11-12 18:19:37 +020026 apt-get install -y \
27 build-essential \
28 automake \
29 libtool \
30 pkg-config \
31 libgtest-dev \
32 rpm \
33 devscripts \
34 gawk \
35 debhelper \
36 autoconf-archive \
Timo Tietavainen2e2c8862020-05-16 19:45:23 +030037 libboost-filesystem-dev \
38 libboost-program-options-dev \
39 libboost-system-dev \
40 libhiredis-dev \
41 valgrind && \
Rolf Badorek8f638132019-10-09 10:24:58 +030042 apt-get clean
43
44# Copy sourcefiles:
45RUN mkdir -p /tmp/build
46COPY . /tmp/build
Rolf Badorekcc9244c2019-11-12 18:19:37 +020047WORKDIR /tmp/build
Rolf Badorek8f638132019-10-09 10:24:58 +030048
49# Compile and run unit tests:
Rolf Badorek8f638132019-10-09 10:24:58 +030050RUN ./autogen.sh && \
51 ./configure && \
52 make all && \
53 make test
Rolf Badorekcc9244c2019-11-12 18:19:37 +020054
55# Build packages:
56RUN make clean && \
57 make distclean && \
Timo Tietavainen2e2c8862020-05-16 19:45:23 +030058 ./configure --with-rpm-dir=/tmp/pkgs && \
59 make rpm-pkg && \
60 make clean && \
61 make distclean && \
62 ./configure --with-deb-dir=/tmp/pkgs && \
63 make deb-pkg
Rolf Badorekcc9244c2019-11-12 18:19:37 +020064
Timo Tietavainen2df368c2020-05-21 11:27:40 +030065RUN cp /tmp/build/docker_test/publish.sh /bin
Rolf Badorekcc9244c2019-11-12 18:19:37 +020066ENTRYPOINT ["/bin/publish.sh"]