blob: ed631cf3189d713fa8c0dfd0ea0e66a764a4f0ee [file] [log] [blame]
beierlme7646252022-01-13 10:53:08 -05001#######################################################################################
2# Copyright ETSI Contributors and Others.
Felipe Vicens7334f682020-06-24 15:59:59 +02003#
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
13# implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
beierlme7646252022-01-13 10:53:08 -050016#######################################################################################
David Garciaa60ec732021-03-17 15:28:47 +010017
beierlmd7449362022-01-13 10:53:08 -050018FROM ubuntu:20.04 as FINAL
David Garciaa60ec732021-03-17 15:28:47 +010019
beierlme7646252022-01-13 10:53:08 -050020ARG APT_PROXY
21RUN if [ ! -z $APT_PROXY ] ; then \
22 echo "Acquire::http::Proxy \"$APT_PROXY\";" > /etc/apt/apt.conf.d/proxy.conf ;\
23 echo "Acquire::https::Proxy \"$APT_PROXY\";" >> /etc/apt/apt.conf.d/proxy.conf ;\
24 fi
25
David Garciaa60ec732021-03-17 15:28:47 +010026RUN DEBIAN_FRONTEND=noninteractive apt-get --yes update && \
27 DEBIAN_FRONTEND=noninteractive apt-get --yes install \
beierlmd7449362022-01-13 10:53:08 -050028 gcc=4:9.3.* \
29 python3=3.8.* \
30 python3-dev=3.8.* \
31 python3-pip=20.0.2* \
32 python3-setuptools=45.2.* \
33 curl=7.68.*
34
35RUN DEBIAN_FRONTEND=noninteractive apt-get --yes install \
sousaedufd164af2021-08-12 15:35:51 +010036 gettext-base=0.19.* \
beierlmd7449362022-01-13 10:53:08 -050037 git=1:2.25.* \
sousaedufd164af2021-08-12 15:35:51 +010038 iputils-ping=3:* \
beierlmd7449362022-01-13 10:53:08 -050039 jq=1.6* \
40 libcurl4-openssl-dev=7.68.* \
41 libssl-dev=1.1.*
David Garciaa60ec732021-03-17 15:28:47 +010042
43ARG OSM_TESTS_URL
44ARG PYTHON3_OSM_IM_URL
45ARG PYTHON3_OSMCLIENT_URL
46
47RUN curl $PYTHON3_OSM_IM_URL -o osm_im.deb
48RUN dpkg -i ./osm_im.deb
49
50RUN curl $PYTHON3_OSMCLIENT_URL -o osmclient.deb
51RUN dpkg -i ./osmclient.deb
52
53RUN curl $OSM_TESTS_URL -o osm_tests.deb
54RUN dpkg -i ./osm_tests.deb
55
David Garciaa60ec732021-03-17 15:28:47 +010056RUN pip3 install \
57 -r /usr/lib/python3/dist-packages/osm_im/requirements.txt \
58 -r /usr/lib/python3/dist-packages/osmclient/requirements.txt \
59 -r /usr/share/osm-tests/requirements.txt
60
beierlm14e0ad72021-04-12 16:05:38 -040061RUN mv /usr/share/osm-tests/robot-systest /robot-systest
veleza652d1e32021-10-19 14:43:44 +000062RUN mv /usr/share/osm-tests/conformance-tests/ /robot-systest/
beierlm14e0ad72021-04-12 16:05:38 -040063RUN mv /usr/share/osm-tests/charm.sh /usr/sbin/charm
64
garciadeblasbe5e68c2021-11-24 18:28:51 +010065ARG CACHE_DATE=not_a_date
David Garciaa60ec732021-03-17 15:28:47 +010066RUN git clone \
67 https://osm.etsi.org/gitlab/vnf-onboarding/osm-packages.git \
68 --recurse-submodules \
69 /robot-systest/osm-packages
70
Felipe Vicens7334f682020-06-24 15:59:59 +020071WORKDIR /robot-systest
72
Felipe Vicens7334f682020-06-24 15:59:59 +020073# Folder where Robot tests are stored
74ENV ROBOT_DEVOPS_FOLDER=/robot-systest
75
76# Folder to save alternative DUT environments (optional)
77ENV ENVIRONMENTS_FOLDER=environments
78
79# Folder where all required packages are stored
80ENV PACKAGES_FOLDER=/robot-systest/osm-packages
81
82# Folder where test results should be exported
83ENV ROBOT_REPORT_FOLDER=/robot-systest/results
84
85# Kubeconfig file
86ENV K8S_CREDENTIALS=/root/.kube/config
87
garciadeblas2ad64322021-08-13 16:43:15 +020088# OSM RSA file
89ENV OSM_RSA_FILE=/root/osm_id_rsa
90
Felipe Vicens7334f682020-06-24 15:59:59 +020091ENV LC_ALL=C.UTF-8
92ENV LANG=C.UTF-8
93
beierlma4a37f72020-06-26 12:55:01 -040094ENTRYPOINT [ "/robot-systest/run_test.sh"]