#!/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"