As a work-a-round, my “fix” was to spoof it as Rocky in the .treeinfo file on my local mirror before consuming into foreman. It seems that foreman at least doesn’t rely on the .treeinfo for OS information. It hasn’t had any issues (so far).
In case someone wants my bash junk:
#!/bin/bash -x
#I should loop this to not load a single mirror
BASEURL="rsync://rsync.repo.almalinux.org/almalinux/"
#BASEURL="rsync://iad.mirror.rackspace.com/almalinux"
#BASEURL="rsync://mirror.interserver.net/almalinux"
VERSION="8"
URL=${BASEURL}/${VERSION}/
BASEDEST=/repos/alma
DEST=${BASEDEST}/${VERSION}/
LOGFILE=/tmp/almasync-${VERSION}
TRY=3
TREEFILE=alma_os_treeinfo
NOTIFY_ADDR="myemail@addr.com"
while [[ $TRY -ne 0 ]] ; do
#$CMD
rsync -pavSH -f 'R .~tmp~' --delete-delay --delay-updates ${URL} ${DEST} > $LOGFILE 2>&1
RET=$?
if [[ $RET -eq 0 ]] ; then
echo "fixing permissions"
chown -R alma. $BASEDEST
# stupid hack
sed -i 's/AlmaLinux/Rocky Linux/g' ${DEST}BaseOS/x86_64/os/.treeinfo
sed -i 's/AlmaLinux/Rocky Linux/g' ${DEST}BaseOS/x86_64/kickstart/.treeinfo
#chmod 644 $DEST/BaseOS/x86_64/os/.treeinfo
exit 0
else
echo "try num: $TRY"
fi
TRY=$(expr $TRY - 1)
done
cat $LOGFILE | mailx -s "AlmaLinux Sync Failed for Version = ${VERSION}" $NOTIFY_ADDR