# Build-Kontext ist das Repo-Root (siehe docker-compose.yml: context: ..),
# deshalb sind alle COPY-Pfade relativ zum Repo-Root angegeben.
FROM almalinux:latest

# dnf-plugins-core -> "dnf download" und "dnf repomanage"
# createrepo_c     -> createrepo_c und modifyrepo_c
# appstream        -> appstreamcli fuer die optionale Katalog-Validierung
# python3          -> Interpreter fuer appstream-gen.py
RUN dnf install -y \
        dnf-plugins-core \
	    createrepo_c \
	    appstream \
	    git \
	    jq \
	    openssh-clients \
	    python3 \
	    python3-pyyaml \
	    jq \
	    cronie \
	    appstream \
	    gnupg2 \
	    rpm-sign \
	    findutils \
	    util-linux-core \
	    curl \
        wget \
    && dnf clean all

RUN wget https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 -O /usr/local/bin/yq &&\
    chmod +x /usr/local/bin/yq

COPY docker/syncer/sync.sh       /usr/local/bin/sync.sh
COPY docker/syncer/sync_helpers.py /usr/local/bin/sync_helpers.py
COPY docker/syncer/appstream-gen.py /usr/local/bin/appstream-gen.py
COPY docker/syncer/entrypoint.sh /entrypoint.sh
RUN chmod +x /usr/local/bin/sync.sh /entrypoint.sh

ENTRYPOINT ["/entrypoint.sh"]