#!/usr/bin/bash

set -eux
set -o pipefail

# exit directly if DIB_YUM_REPO_CONF is defined
if [ -n "${DIB_YUM_REPO_CONF:-}" ] ; then
    echo "DIB_YUM_REPO_CONF is set - ignoring DIB_REPO_SETUP=$DIB_REPO_SETUP"
    exit 0
fi

# Install repo-setup pinned to a specific commit on the stable branch
# To update: change REPO_SETUP_COMMIT, download the new archive, and update REPO_SETUP_SHA256
REPO_SETUP_COMMIT=85321f7e0af502d7f06f845886058daf09da34f6
REPO_SETUP_SHA256=1050e4ed0472098165c4bde84a9991a6a13171426d16862f6651e28635d1727f
cd /tmp
curl -sL -o repo-setup.tar.gz \
    "https://github.com/openstack-k8s-operators/repo-setup/archive/${REPO_SETUP_COMMIT}.tar.gz"
echo "${REPO_SETUP_SHA256}  repo-setup.tar.gz" | sha256sum -c -
tar xzf repo-setup.tar.gz
cd "repo-setup-${REPO_SETUP_COMMIT}"
python3 -m venv ./venv
source ./venv/bin/activate
PBR_VERSION=0.0.0 python3 -m pip install ./

# Run repo-setup
repo_setup="repo-setup --output-path repos --branch $DIB_REPO_SETUP_BRANCH --rdo-mirror $DIB_REPO_SETUP_MIRROR $DIB_REPO_SETUP"
if [ -n "$DIB_REPO_SETUP_DISTRO_MIRROR" ]; then
    repo_setup+=" --mirror $DIB_REPO_SETUP_DISTRO_MIRROR"
fi

mkdir repos
eval $repo_setup
sudo cp repos/* /etc/yum.repos.d/

# Exit venv
deactivate
cd
