# Pull base image.
FROM fedora:latest

ARG varbranch
ENV BRANCH=$varbranch

# Set local timezone
ENV TZ=Europe/Vienna
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

LABEL maintainer="wolfgang.hotwagner@ait.ac.at"

# Install necessary dnf packages
RUN dnf install -y \
	ansible \
        git \
        vim \
        postfix \
        procps \
        cpulimit \
        sendmail \
        sendmail-cf \
        postfix \
        rsyslog \
        sudo \
        curl \
        httpd \
        glibc-locale-source \
        glibc-langpack-en

ENV LANG=en_US.UTF-8
ENV LANGUAGE=en_US:en
ENV LC_ALL=en_US.UTF-8
RUN localedef --force -i en_US -f UTF-8 en_US.UTF-8

ADD . /home/aminer/logdata-anomaly-miner
RUN cd /home/aminer/logdata-anomaly-miner && scripts/aminer_install.sh -b $varbranch -s /home/aminer/logdata-anomaly-miner

ADD scripts/distritest.sh /distritest.sh
RUN chmod 755 /distritest.sh
RUN git clone -b $varbranch https://github.com/ait-aecid/logdata-anomaly-miner.wiki.git /opt/wiki
RUN awk '/^```yaml$/ && ++n == 1, /^```$/' < /opt/wiki/Getting-started-\(tutorial\).md | sed '/^```/ d' | sed '/^```python/ d' > /home/aminer/gettingStarted-config.yml
RUN ln -s /etc/aminer/conf-available/generic/ApacheAccessModel.py /etc/aminer/conf-enabled/

RUN echo "aminer ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/aminer

USER aminer
WORKDIR /home/aminer

ENTRYPOINT ["/distritest.sh"]
