add repo
This commit is contained in:
56
repo/configmap/repo-sources.yaml
Normal file
56
repo/configmap/repo-sources.yaml
Normal file
@@ -0,0 +1,56 @@
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: repo-sources
|
||||
namespace: repo
|
||||
data:
|
||||
sources.txt: |
|
||||
repo-oss|http://download.opensuse.org/distribution/leap/15.6/repo/oss/|opensuse/leap/15.6/oss
|
||||
repo-non-oss|http://download.opensuse.org/distribution/leap/15.6/repo/non-oss/|opensuse/leap/15.6/non-oss
|
||||
update-oss|http://download.opensuse.org/update/leap/15.6/oss/|opensuse/leap/15.6/update/oss
|
||||
update-non-oss|http://download.opensuse.org/update/leap/15.6/non-oss/|opensuse/leap/15.6/update/non-oss
|
||||
update-sle|http://download.opensuse.org/update/leap/15.6/sle/|opensuse/leap/15.6/update/sle
|
||||
backports|http://download.opensuse.org/update/leap/15.6/backports/|opensuse/leap/15.6/update/backports
|
||||
openh264|http://codecs.opensuse.org/openh264/openSUSE_Leap/|opensuse/openh264
|
||||
nvidia|https://download.nvidia.com/opensuse/leap/15.6/|thirdparty/nvidia/leap/15.6
|
||||
k8s-stable|https://pkgs.k8s.io/core:/stable:/v1.33/rpm/|thirdparty/kubernetes/core/stable/v1.33/rpm
|
||||
|
||||
sync.sh: |
|
||||
set -euo pipefail
|
||||
|
||||
SRC_LIST="/config/sources.txt"
|
||||
DEST_ROOT="/mirror/repos"
|
||||
|
||||
mkdir -p "$DEST_ROOT"
|
||||
|
||||
command -v rsync >/dev/null 2>&1 || echo "Aviso: rsync no disponible; usaré wget para HTTP/HTTPS"
|
||||
command -v wget >/dev/null 2>&1 || { echo "ERROR: wget requerido"; exit 1; }
|
||||
|
||||
while IFS='|' read -r NAME URL SUBDIR; do
|
||||
[[ -z "${NAME:-}" || "${NAME:0:1}" == "#" ]] && continue
|
||||
|
||||
DEST="${DEST_ROOT}/${SUBDIR}"
|
||||
mkdir -p "$DEST"
|
||||
|
||||
echo "==> Sync ${NAME} (${URL}) -> ${DEST}"
|
||||
|
||||
if [[ "$URL" == rsync://* ]]; then
|
||||
rsync -aH --delete --partial --info=stats1,progress2 "${URL}" "${DEST}/"
|
||||
else
|
||||
TMP="${DEST}.tmp"
|
||||
mkdir -p "$TMP"
|
||||
|
||||
wget -m -np -nH -e robots=off -P "$TMP" --no-verbose --show-progress "$URL"
|
||||
|
||||
shopt -s dotglob nullglob
|
||||
SRC_CONTENT=("$TMP"/*)
|
||||
if [[ ${#SRC_CONTENT[@]} -gt 0 ]]; then
|
||||
rsync -a --delete "$TMP"/ "$DEST"/
|
||||
fi
|
||||
rm -rf "$TMP"
|
||||
fi
|
||||
|
||||
chmod -R a+rX "$DEST"
|
||||
done < "$SRC_LIST"
|
||||
|
||||
echo "Sync completado."
|
||||
Reference in New Issue
Block a user