Something went wrong. Try again.
An atproto PDS written in Go
Something went wrong. Try again.
cocoon create-initial-invite.sh
1.7 kB · 56 lines
Shell
at push-based
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657#!/bin/sh
INVITE_FILE="/keys/initial-invite-code.txt"MARKER="/keys/.invite_created"
# Check if invite code was already createdif [ -f "$MARKER" ]; then echo "✓ Initial invite code already created" exit 0fi
echo "Waiting for database to be ready..."sleep 10
# Try to create invite code - retry until database is readyMAX_ATTEMPTS=30ATTEMPT=0INVITE_CODE=""
while [ $ATTEMPT -lt $MAX_ATTEMPTS ]; do ATTEMPT=$((ATTEMPT + 1)) OUTPUT=$(/cocoon create-invite-code --uses 1 2>&1) INVITE_CODE=$(echo "$OUTPUT" | grep -oE '[a-zA-Z0-9]{8}-[a-zA-Z0-9]{8}' || echo "")
if [ -n "$INVITE_CODE" ]; then break fi
if [ $((ATTEMPT % 5)) -eq 0 ]; then echo " Waiting for database... ($ATTEMPT/$MAX_ATTEMPTS)" fi sleep 2done
if [ -n "$INVITE_CODE" ]; then echo "" echo "╔════════════════════════════════════════╗" echo "║ SAVE THIS INVITE CODE! ║" echo "║ ║" echo "║ $INVITE_CODE ║" echo "║ ║" echo "║ Use this to create your first ║" echo "║ account on your PDS. ║" echo "╚════════════════════════════════════════╝" echo ""
echo "$INVITE_CODE" > "$INVITE_FILE" echo "✓ Invite code saved to: $INVITE_FILE"
touch "$MARKER" echo "✓ Initial setup complete!"else echo "✗ Failed to create invite code" echo "Output: $OUTPUT" exit 1fi