HashLoad / HashLoad/pubpascal-dev

Infra: transferir Vercel, Supabase e domínio da conta pessoal para a HashLoad

Open
#4 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
1
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Contexto

O portal (pubpascal-dev) e os apps nativos (pubpascal-app) acabaram de ser
importados para a organização HashLoad. O código já está sob a HashLoad,
mas toda a infraestrutura que mantém o site no ar continua em contas
pessoais
(conta do Isaque). Enquanto isso não mudar, a HashLoad é dona do
repositório mas não do ambiente de produção — cobrança, acesso, chaves e
suporte seguem atrelados a uma pessoa física.

Esta issue é o pedido formal para transferir essas contas/projetos para a
organização. Não é urgente e não deve ser feita agora — é uma tarefa de
pós-handover, para ser executada em janela combinada, porque envolve
troca de credenciais e risco de indisponibilidade.

Inventário — o que hoje está em nome pessoal

Serviço Para que serve no portal Ação
Vercel (projeto que serve pubpascal.dev) build e hospedagem do Next.js, variáveis de ambiente de produção, Analytics transferir o projeto para uma Team da HashLoad
Supabase (projeto do portal) Postgres (pacotes, publishers, workspaces), Auth, RLS, Storage transferir o projeto para uma Organization da HashLoad
Cloudflare (zona pubpascal.dev) DNS apontando para a Vercel (registro em nuvem cinza, não laranja) transferir o domínio/zona para conta da HashLoad
Upstash Redis rate limiting das rotas de API (@upstash/ratelimit) recriar/transferir o banco e rotar o token
Asaas gateway de pagamento (patrocínios/checkout) conta precisa ser da pessoa jurídica que emite as cobranças
Cloudflare Turnstile anti-bot dos formulários recriar as chaves sob a conta da HashLoad
GitHub OAuth App login com GitHub e o fluxo de contribuição (fork/PR) recriar como OAuth App da organização e atualizar o callback

Variáveis/segredos que precisam ser reemitidos ou reapontados

Sem valores aqui — a lista serve de checklist na hora da migração.

  • Vercel (Environment Variables): NEXT_PUBLIC_SUPABASE_URL, NEXT_PUBLIC_SUPABASE_ANON_KEY,
    SUPABASE_SERVICE_ROLE_KEY, NEXT_PUBLIC_SITE_URL, UPSTASH_REDIS_REST_URL,
    UPSTASH_REDIS_REST_TOKEN, ASAAS_API_KEY, ASAAS_BASE_URL, ASAAS_WEBHOOK_SECRET,
    NEXT_PUBLIC_TURNSTILE_SITE_KEY, TURNSTILE_SECRET_KEY,
    NEXT_PUBLIC_GITHUB_AUTH_ENABLED, PUBLISH_VALIDATION_ENFORCE
  • GitHub Actions (secrets do repositório, usados pela esteira e pelo job de expiração de patrocínio):
    SUPABASE_URL, SUPABASE_SERVICE_ROLE_KEY
  • Webhook do Asaas: reapontar a URL de callback depois que o projeto mudar de dono
  • Supabase Auth: revisar as Redirect URLs e o provider do GitHub após recriar o OAuth App

Checklist da migração

  • Criar Team na Vercel e Organization no Supabase sob a HashLoad
  • Transferir o projeto Supabase (confirmar que a transferência preserva dados, RLS e migrations)
  • Transferir o projeto Vercel e reconfigurar o domínio pubpascal.dev no projeto (lição já registrada: domínio precisa estar no projeto e a nuvem no Cloudflare precisa ficar cinza — laranja dá erro 525)
  • Transferir a zona DNS no Cloudflare
  • Recriar Upstash, Turnstile e o OAuth App do GitHub sob a organização; rotar tokens
  • Migrar a conta Asaas para a pessoa jurídica e reapontar o webhook
  • Republicar as variáveis na Vercel e os secrets do repositório
  • Rotar todas as chaves antigas que ficaram na conta pessoal
  • Deploy de verificação + smoke test: home, busca, detalhe de pacote, login, publish, download de SBOM

Riscos

  • A troca de domínio/DNS pode causar indisponibilidade curta — fazer em janela combinada.
  • Chaves antigas continuam válidas até serem rotadas; rotar é parte da entrega, não um extra.
  • O login com GitHub quebra no momento em que o OAuth App mudar, até o callback ser atualizado.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the inventory and migration checklist in this issue, then review the Vercel project, Supabase project, Cloudflare zone, Upstash, Asaas, Turnstile, GitHub OAuth App, and GitHub Actions secrets. Done means ownership is under HashLoad, credentials and callbacks are updated, old keys are rotated, and the listed smoke tests pass for the home page, search, package details, login, publish, and SBOM download.

Written by the indexing model from the issue text.

Assessment

Tech stack
github, next.js, supabase, typescript
Domain
authentication, cloud, databases, devops, infrastructure, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.