FROM registry.yandex.net/tools/raw-ubuntu:18.04
ARG MODE=release
EXPOSE 80
CMD uwsgi --ini=/src/uwsgiconf.ini

# Серт для работы с PGaaS
ADD https://crls.yandex.net/allCAs.pem /certs/allCAs.pem
RUN chmod 644 /certs/allCAs.pem
# Указание для python requests, где брать сертификат, включающий Яндексовый CA.
ENV REQUESTS_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crt
# Русская локаль для формирования документов типа pdf на русском языке
RUN locale-gen ru_RU.UTF-8 && update-locale LANG=ru_RU.UTF-8

COPY deps/debian-build.txt deps/debian-main.txt deps/
RUN curl -s https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | tee /etc/apt/trusted.gpg.d/apt.postgresql.org.gpg >/dev/null \
    && echo "deb http://apt.postgresql.org/pub/repos/apt bionic-pgdg main" > /etc/apt/sources.list.d/pgdg.list
# Не удалять apt, специфика 18 убунты, @cracker знает
RUN apt-get update -qq \
    && apt update -qq \
    && cat /deps/debian-build.txt | xargs apt install -y \
    && cat /deps/debian-main.txt | xargs apt install -y \
    && apt clean \
    && rm -rf /var/lib/apt/lists/*

COPY deps/python-main.txt deps/
RUN pip3 install --disable-pip-version-check -i https://pypi.yandex-team.ru/simple/ -r /deps/python-main.txt

COPY deps/python-dev.txt /deps/
RUN if [ "$MODE" = "dev" ]; then \
        pip3 install --disable-pip-version-check -i https://pypi.yandex-team.ru/simple/ -r /deps/python-dev.txt; \
    fi

RUN sed -i "s/ver = geos_version().decode()/ver = geos_version().decode().split()[0]/" \
    /usr/local/lib/python3.6/dist-packages/django/contrib/gis/geos/libgeos.py

COPY staff/ src/staff/
COPY setup.py MANIFEST.in uwsgiconf.ini pytest.ini Makefile grace_shutdown.py src/
RUN chmod +x src/grace_shutdown.py

RUN if [ "$MODE" = "dev" ]; then \
        pip3 install -e /src/; \
    else \
        pip3 install /src/; \
    fi

RUN staff compilemessages
