HollaHoop

GitHub App: install flow and org-level credentials

ReviewingView on roadmap· 2 months ago

Foundation for every other GitHub feature. Register one Hollahoop GitHub App globally; let org owners install it on their GH org with selected repos. Persist installation_id, account_login and installed_by in a new github_installations table keyed by org_id. Mint installation tokens on demand via @octokit/auth-app (1h TTL, in-memory cached). New webhook route /api/integrations/github/webhook with HMAC signature verification and a webhook_events idempotency log. Org settings gets a GitHub card with Install / Reinstall / Uninstall.

Out of scope: per-project repo linking (separate post), per-post issue linking (separate post), inbound event handlers (separate post). This card only delivers a working install + token mint + signed webhook receiver that logs events to a table.

Comments (1)

  • Elsama· 2 months ago

    PR ready: https://github.com/El-SaMa/hollahoop/pull/28

    GitHub App foundation: install/callback/webhook routes, org settings card, github_installations + webhook idempotency tables, HMAC verification, env docs.

    Owner setup before live install: create the GitHub App and set GITHUB_APP_ID, GITHUB_APP_PRIVATE_KEY, GITHUB_WEBHOOK_SECRET, GITHUB_APP_SLUG. Register callback <SITE_URL>/api/github/callback and webhook <SITE_URL>/api/github/webhook. Apply migration on deploy (currently numbered 0034_github_app.sql, will be renumbered during merge).

Join the discussion

Sign in to leave a comment on this thread.

HollahoopGet yours