blob: 39f1e3f124f0111ee299a73092a99b9013d8d42d [file] [log] [blame]
Felipe Vicens7334f682020-06-24 15:59:59 +02001# Copyright 2020 ETSI
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
12# implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15
David Garciaa60ec732021-03-17 15:28:47 +010016########################################################################
17
beierlm7278f0a2022-01-26 10:18:21 -050018FROM ubuntu:20.04 as FINAL
David Garciaa60ec732021-03-17 15:28:47 +010019
20RUN DEBIAN_FRONTEND=noninteractive apt-get --yes update && \
21 DEBIAN_FRONTEND=noninteractive apt-get --yes install \
beierlm7278f0a2022-01-26 10:18:21 -050022 gcc=4:9.3.* \
23 python3=3.8.* \
24 python3-dev=3.8.* \
25 python3-pip=20.0.2* \
26 python3-setuptools=45.2.* \
27 curl=7.68.*
28
garciadeblas1e0df422022-02-10 00:49:51 +010029RUN DEBIAN_FRONTEND=noninteractive apt-get --yes update && \
30 DEBIAN_FRONTEND=noninteractive apt-get --yes install \
sousaedufd164af2021-08-12 15:35:51 +010031 gettext-base=0.19.* \
beierlm7278f0a2022-01-26 10:18:21 -050032 git=1:2.25.* \
sousaedufd164af2021-08-12 15:35:51 +010033 iputils-ping=3:* \
beierlm7278f0a2022-01-26 10:18:21 -050034 jq=1.6* \
35 libcurl4-openssl-dev=7.68.* \
36 libssl-dev=1.1.*
David Garciaa60ec732021-03-17 15:28:47 +010037
38ARG OSM_TESTS_URL
39ARG PYTHON3_OSM_IM_URL
40ARG PYTHON3_OSMCLIENT_URL
41
42RUN curl $PYTHON3_OSM_IM_URL -o osm_im.deb
43RUN dpkg -i ./osm_im.deb
44
45RUN curl $PYTHON3_OSMCLIENT_URL -o osmclient.deb
46RUN dpkg -i ./osmclient.deb
47
48RUN curl $OSM_TESTS_URL -o osm_tests.deb
49RUN dpkg -i ./osm_tests.deb
50
David Garciaa60ec732021-03-17 15:28:47 +010051RUN pip3 install \
52 -r /usr/lib/python3/dist-packages/osm_im/requirements.txt \
53 -r /usr/lib/python3/dist-packages/osmclient/requirements.txt \
54 -r /usr/share/osm-tests/requirements.txt
55
beierlm14e0ad72021-04-12 16:05:38 -040056RUN mv /usr/share/osm-tests/robot-systest /robot-systest
veleza652d1e32021-10-19 14:43:44 +000057RUN mv /usr/share/osm-tests/conformance-tests/ /robot-systest/
beierlm14e0ad72021-04-12 16:05:38 -040058RUN mv /usr/share/osm-tests/charm.sh /usr/sbin/charm
59
garciadeblas36c818d2021-11-24 18:28:51 +010060ARG CACHE_DATE=not_a_date
David Garciaa60ec732021-03-17 15:28:47 +010061RUN git clone \
62 https://osm.etsi.org/gitlab/vnf-onboarding/osm-packages.git \
63 --recurse-submodules \
64 /robot-systest/osm-packages
65
Felipe Vicens7334f682020-06-24 15:59:59 +020066WORKDIR /robot-systest
67
Felipe Vicens7334f682020-06-24 15:59:59 +020068# Folder where Robot tests are stored
69ENV ROBOT_DEVOPS_FOLDER=/robot-systest
70
71# Folder to save alternative DUT environments (optional)
72ENV ENVIRONMENTS_FOLDER=environments
73
74# Folder where all required packages are stored
75ENV PACKAGES_FOLDER=/robot-systest/osm-packages
76
77# Folder where test results should be exported
78ENV ROBOT_REPORT_FOLDER=/robot-systest/results
79
80# Kubeconfig file
81ENV K8S_CREDENTIALS=/root/.kube/config
82
garciadeblas2ad64322021-08-13 16:43:15 +020083# OSM RSA file
84ENV OSM_RSA_FILE=/root/osm_id_rsa
85
Felipe Vicens7334f682020-06-24 15:59:59 +020086ENV LC_ALL=C.UTF-8
87ENV LANG=C.UTF-8
88
beierlma4a37f72020-06-26 12:55:01 -040089ENTRYPOINT [ "/robot-systest/run_test.sh"]