#!/usr/bin/env bash # Mirror a GitHub fork to Gitea (push --mirror). Run from operator LAN when Gitea is reachable. # # Required: # GITEA_REMOTE — e.g. https://gitea.d-bis.org/ORG/DefiLlama-Adapters.git # Optional: # GITHUB_FORK — default https://github.com/Defi-Oracle-Meta-Blockchain/DefiLlama-Adapters.git # # Usage: # export GITEA_REMOTE='https://USER:TOKEN@gitea.d-bis.org/d-bis/DefiLlama-Adapters.git' # ./scripts/deployment/mirror-github-fork-to-gitea.sh # # Or dry-run (fetch only): # DRY_RUN=1 ./scripts/deployment/mirror-github-fork-to-gitea.sh set -euo pipefail GITHUB_FORK="${GITHUB_FORK:-https://github.com/Defi-Oracle-Meta-Blockchain/DefiLlama-Adapters.git}" if [[ -z "${GITEA_REMOTE:-}" ]]; then echo "Set GITEA_REMOTE to your Gitea repo URL (with credentials if needed)." >&2 exit 1 fi TMP="${TMPDIR:-/tmp}/mirror-defillama-$$" cleanup() { rm -rf "$TMP"; } trap cleanup EXIT git clone --mirror "$GITHUB_FORK" "$TMP" if [[ "${DRY_RUN:-}" == "1" ]]; then echo "DRY_RUN=1: mirror clone OK; skip push to GITEA_REMOTE" exit 0 fi git -C "$TMP" push --mirror "$GITEA_REMOTE" echo "Mirror push completed."