#!/bin/sh
# srht-new -- create a new sr.ht project (repo + optional tracker + list)
set -eu

if [ -z "${1:-}" ]; then
    echo "Usage: srht-new <name> [description]" >&2
    exit 1
fi

NAME="$1"
DESC="${2:-$NAME}"
TOKEN=$(cat ~/.config/srht/token)

echo "[*] Creating repo: $NAME"
curl -s --oauth2-bearer "$TOKEN" -H 'Content-Type: application/json' \
  -d "{\"query\": \"mutation { createRepository(name: \\\"$NAME\\\", visibility: PRIVATE, description: \\\"$DESC\\\") { id name } }\"}" \
  https://git.sr.ht/query | jq -r '.data.createRepository | "    id: \(.id), name: \(.name)"'

echo "[*] Creating tracker: $NAME"
curl -s --oauth2-bearer "$TOKEN" -H 'Content-Type: application/json' \
  -d "{\"query\": \"mutation { createTracker(name: \\\"$NAME\\\", visibility: PRIVATE) { id name } }\"}" \
  https://todo.sr.ht/query | jq -r '.data.createTracker | "    id: \(.id), name: \(.name)"'

echo "[+] Done. Clone: git clone git@git.sr.ht:~krisyotam/$NAME"
