FROM python:3.12.7-alpine3.20
ENV PYTHONUNBUFFERED=1

WORKDIR /app

# Install Poetry
# RUN apt clean && apt update
RUN apk update && apk add curl bash
RUN curl -sSL https://install.python-poetry.org  | POETRY_HOME=/opt/poetry python && \
    cd /usr/local/bin && \
    ln -s /opt/poetry/bin/poetry && \
    poetry config virtualenvs.create false

# Copy poetry.lock* in case it doesn't exist in the repo
COPY pyproject.toml /app
COPY README.md /app
COPY src /app/src

# Allow installing dev dependencies to run tests
ARG INSTALL_DEV=false
RUN poetry lock
RUN poetry install
RUN pip uninstall thread
#RUN bash -c "if [ $INSTALL_DEV == 'true' ] ; then poetry install --no-root ; else poetry install --no-root --no-dev ; fi"

ENV PYTHONPATH=/app

ARG SETTINGS
ARG DIRECTORY
ARG PORT
ARG CHECK_INTERVAL
ARG DEBUG

ENV SETTINGS=${SETTINGS} \
    DIRECTORY=${DIRECTORY} \
    PORT=${PORT} \
    CHECK_INTERVAL=${CHECK_INTERVAL} \
    DEBUG=${DEBUG}

ENTRYPOINT ["poetry", "run", "rss-feedler"]
#CMD ["bash", "-c", "while true; do sleep 1; done"]