Merge "OAuth2 support"
[pti/o2.git] / Dockerfile.localtest
index 0324e33..7ced03b 100644 (file)
@@ -1,57 +1,89 @@
-FROM python:3.10-slim-buster\r
-\r
-RUN apt-get update; apt-get install -y git gcc\r
-\r
-# in case git repo is not accessable\r
-RUN mkdir -p /cgtsclient\r
-COPY temp/config /cgtsclient/\r
-RUN pip install -e cgtsclient/sysinv/cgts-client/cgts-client/\r
-\r
-RUN mkdir -p /distcloud-client\r
-COPY temp/distcloud-client /distcloud-client/\r
-RUN pip install -e /distcloud-client/distributedcloud-client\r
-# in case git repo is not accessable\r
-\r
-\r
-COPY requirements.txt /tmp/\r
-COPY constraints.txt /tmp/\r
-\r
-RUN  pip install -r /tmp/requirements.txt -c /tmp/constraints.txt\r
-\r
-COPY requirements-test.txt /tmp/\r
-RUN pip install -r /tmp/requirements-test.txt\r
-\r
-\r
-RUN mkdir -p /src\r
-COPY o2ims/ /src/o2ims/\r
-COPY o2dms/ /src/o2dms/\r
-COPY o2common/ /src/o2common/\r
-\r
-RUN mkdir -p /src/o2app/\r
-COPY o2app/ /src/o2app/\r
-\r
-RUN mkdir -p /src/helm_sdk/\r
-COPY helm_sdk/ /src/helm_sdk/\r
-\r
-COPY setup.py /src/\r
-\r
-COPY configs/ /etc/o2/\r
-\r
-# RUN mkdir -p /helmsdk\r
-# COPY temp/helmsdk /helmsdk/\r
-# # RUN git clone --depth 1 --branch master https://github.com/cloudify-incubator/cloudify-helm-plugin.git helmsdk\r
-# COPY /helmsdk/helm_sdk /src/helm_sdk\r
-\r
-# RUN pip install -e /src\r
-COPY tests/ /tests/\r
-\r
-RUN apt-get install -y procps vim\r
-\r
-RUN apt-get install -y curl\r
-RUN curl -O https://get.helm.sh/helm-v3.3.1-linux-amd64.tar.gz;\r
-RUN tar -zxvf helm-v3.3.1-linux-amd64.tar.gz; cp linux-amd64/helm /usr/local/bin\r
-\r
-RUN mkdir -p /etc/kubeconfig/\r
-# COPY temp/kubeconfig/config /etc/kubeconfig/\r
-\r
-WORKDIR /src\r
+FROM nexus3.onap.org:10001/onap/integration-python:12.0.0
+# https://nexus3.onap.org/#browse/search=keyword%3Dintegration-python:d406d405e4cfbf1186265b01088caf9a
+# https://git.onap.org/integration/docker/onap-python/tree/Dockerfile
+
+USER root
+
+ARG user=orano2
+ARG group=orano2
+
+# Create a group and user
+RUN addgroup -S $group && adduser -S -D -h /home/$user $user $group && \
+    chown -R $user:$group /home/$user &&  \
+    mkdir /var/log/$user && \
+    mkdir -p /src && \
+    mkdir -p /configs/ && \
+    mkdir -p /src/o2app/ && \
+    mkdir -p /src/helm_sdk/ && \
+    mkdir -p /etc/o2/ && \
+    chown -R $user:$group /var/log/$user && \
+    chown -R $user:$group /src && \
+    chown -R $user:$group /configs && \
+    chown -R $user:$group /etc/o2/
+
+COPY requirements.txt requirements-test.txt requirements-stx.txt constraints.txt /tmp/
+
+# in case git repo is not accessable
+RUN mkdir -p /cgtsclient && mkdir -p /distcloud-client
+COPY temp/config /cgtsclient/
+COPY temp/distcloud-client /distcloud-client/
+COPY temp/fault /faultclient/
+
+COPY o2ims/ /src/o2ims/
+COPY o2dms/ /src/o2dms/
+COPY o2common/ /src/o2common/
+COPY o2app/ /src/o2app/
+COPY setup.py /src/
+
+COPY helm_sdk/ /src/helm_sdk/
+
+COPY configs/ /etc/o2/
+COPY configs/ /configs/
+
+RUN apk add --no-cache \
+    git \
+    curl \
+    bluez-dev \
+    bzip2-dev \
+    dpkg-dev dpkg \
+    expat-dev \
+    gcc \
+    libc-dev \
+    libffi-dev \
+    libnsl-dev \
+    libtirpc-dev \
+    linux-headers \
+    make \
+    ncurses-dev \
+    openssl-dev \
+    pax-utils \
+    sqlite-dev \
+    tcl-dev \
+    tk \
+    tk-dev \
+    util-linux-dev \
+    xz-dev \
+    zlib-dev
+
+RUN set -ex \
+    && apk add --no-cache bash \
+        && apk add --no-cache --virtual .fetch2-deps \
+    && pip install -r /tmp/requirements.txt -c /tmp/constraints.txt \
+    && pip install -r /tmp/requirements-test.txt \
+    && pip install -e /cgtsclient/sysinv/cgts-client/cgts-client/ \
+    && pip install -e /distcloud-client/distributedcloud-client \
+    && pip install -e /faultclient/python-fmclient/fmclient/ \
+    && pip install -e /src \
+    && apk del --no-network .fetch2-deps
+
+COPY tests/ /tests/
+
+RUN mkdir -p /etc/kubeconfig/
+# COPY temp/kubeconfig/config /etc/kubeconfig/
+
+RUN mkdir -p /var/log/orano2
+
+WORKDIR /src
+
+# USER $user
+ENV PYTHONHASHSEED=0