FROM quay.io/centos/centos:stream9
ARG OBS_SERVER=api.opensuse.org
ARG OBS_USER
ARG OBS_PASS

RUN dnf --assumeyes install epel-release dnf-plugins-core rpm-build rpmdevtools && \
  dnf --assumeyes config-manager --set-enabled crb && dnf clean all

RUN dnf --assumeyes upgrade && \
  dnf --assumeyes install \
  sudo \
  openssh-server openssh-clients \
  ca-certificates \
  curl \
  jq \
  git \
  git-lfs \
  libabigail \
  rsync \
  xz \
  zstd \
  wget \
  && dnf clean all

RUN dnf --assumeyes config-manager --add-repo https://download.opensuse.org/repositories/openSUSE:Tools/CentOS_9_Stream/openSUSE:Tools.repo && \
  dnf --nogpgcheck --assumeyes install \
  osc \
  obs-service-extract_file \
  obs-service-download_files \
  obs-service-set_version \
  obs-build \
  && dnf clean all

RUN dnf --assumeyes config-manager --add-repo https://download.opensuse.org/repositories/isv:Datto:/Utilities:/OBSCtl/CentOS_9/isv:Datto:Utilities:OBSCtl.repo && \
  dnf --assumeyes install obsctl && dnf clean all

RUN useradd -G wheel obsbuildrun && echo "obsbuildrun:obsbuildrun" && \
  chown -R obsbuildrun:obsbuildrun /home/obsbuildrun && \
  echo '%wheel ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers

RUN printf "{ \"obs_server\": \"${OBS_SERVER}\", \"obs_user\": \"${OBS_USER}\", \"obs_pass\": \"${OBS_PASS}\" }" > /etc/obsctl/obsauth.json

USER obsbuildrun
CMD /bin/bash
