Files
swissfini/.git-info.md
olaf 23d86a3a1a Initial Hugo project setup
- Hugo v0.139.4 extended
- WCAG 2.2 accessibility-focused frontend overhaul
- Satirical editorial site for swissfini.sh

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-21 07:02:01 +00:00

3.0 KiB

Git Configuration

Primary Gitea Instance: git.photon.obnh.io

  • URL: https://git.photon.obnh.io
  • Username: olaf
  • API-KEY: 7ca0e04e56df443163657e5e83c5b2ef2794e0cf
  • Status: PRIMARY (Production)
  • Description: Main production Gitea instance - all pushes go here

Disaster Recovery Mirror: git.proton.obr.sh

  • URL: https://git.proton.obr.sh
  • Internal URL: http://localhost:3000 (from proton.obr.sh)
  • Username: olaf
  • API-KEY: 151b26b25ffa4100ea776b09e2ed72a2dcb0787e
  • Status: MIRROR (Disaster Recovery - READ ONLY) - unless for recovery means and documentation
  • Description: mostly read-only mirror that syncs from git.photon.obnh.io
  • Organizations: AXSY, OBNH-mirror, olaf

Important Notes

  • NEVER push to git.proton.obr.sh - it is read-only and you must ensure it automatically syncs each and every repo from git.photon.obnh.io - unless for recovery means and documentation
  • All git operations (clone, push, pull) should use git.photon.obnh.io - unless for recovery means and documentation
  • Mirror is for disaster recovery only - no manual sync required - unless for recovery means and documentation
  • If primary is down, work can be committed locally and pushed when restored

DNS Configuration

  • Primary DNS: git.photon.obnh.io
  • Mirror DNS: git.proton.obr.sh

API Key Storage Best Practices

⚠️ SECURITY NOTE: This file contains sensitive API keys.

  • Keep this file permissions restricted: chmod 600 ~/.gitea-config.md
  • Never commit this file to version control
  • Consider using environment variables for production deployments:
    • export GITEA_PHOTON_API_KEY="7ca0e04e56df443163657e5e83c5b2ef2794e0cf"
    • export GITEA_PROTON_API_KEY="151b26b25ffa4100ea776b09e2ed72a2dcb0787e"

Troubleshooting

Verify Primary Connectivity

curl -s -H "Authorization: token 7ca0e04e56df443163657e5e83c5b2ef2794e0cf" \
  https://git.photon.obnh.io/api/v1/user | jq .login

Expected output: "olaf"

Verify Secondary Connectivity

curl -s -H "Authorization: token 151b26b25ffa4100ea776b09e2ed72a2dcb0787e" \
https://git.proton.obr.sh/api/v1/user | jq .login

Expected output: "olaf"

Check Mirror Sync Status

  1. Log in to https://git.photon.obnh.io
  2. Navigate to the repository
  3. Go to Settings > Repository > Mirroring
  4. Check 'Last Update' timestamp - should be recent

Verify Local Git Remotes

cd /path/to/repo
git remote -v

Expected: Origin points to git.photon.obnh.io

Test SSH Connectivity

ssh -T git@git.photon.obnh.io

Manual Mirror Verification

# Get latest commit from primary
PRIMARY_COMMIT=$(curl -s https://git.photon.obnh.io/api/v1/repos/AXSY/SCION-OPS-GUIDE/commits/main | jq -r '.[0].sha')

# Get latest commit from mirror
MIRROR_COMMIT=$(curl -s https://git.proton.obr.sh/api/v1/repos/axsy/scion-ops-guide/commits/main | jq -r '.[0].sha')

# Compare
if [ "$PRIMARY_COMMIT" = "$MIRROR_COMMIT" ]; then
  echo "✓ Mirror is in sync"
else
  echo "✗ Mirror is out of sync"
  echo "Primary: $PRIMARY_COMMIT"
  echo "Mirror: $MIRROR_COMMIT"
fi