#!/usr/bin/env bash
# vdss bulk clone merchantx/* + poms/* (operator "го" 2026-08-10). Read-only content retrieval.
set -u
D=/root/ir-assessment/redteam/gitlab_vdss_com_vn
TOK=$(cat "$D/.token")
BASE_HOST=gitlab.vdss.com.vn
DEST="$D/repos"
mkdir -p "$DEST"
export GIT_LFS_SKIP_SMUDGE=1 GIT_TERMINAL_PROMPT=0

# project paths (10)
PROJS="merchantx/ma-service merchantx/ma-webapp poms/be/hrm-service poms/be/project-service poms/be/task-service poms/fe/poms poms/be/core poms/be/notification poms/be/storage poms/be/gateway"

for p in $PROJS; do
  slug=$(echo "$p" | tr '/' '__')
  out="$DEST/$slug.git"
  if [ -d "$out" ]; then echo "[skip] $p (exists)"; continue; fi
  url="https://oauth2:${TOK}@${BASE_HOST}/${p}.git"
  # -c http.extraHeader not needed with oauth2-in-URL (skill: extraHeader Bearer did NOT work)
  if git clone --mirror --quiet "$url" "$out" 2>"$out.cloneerr"; then
    sz=$(du -sm "$out" | cut -f1)
    echo "[ok] $p -> $slug.git (${sz}MB)"
    rm -f "$out.cloneerr"
  else
    echo "[FAIL] $p : $(tail -1 "$out.cloneerr")"
  fi
done
echo "=== done ==="
ls -la "$DEST"
