HashLoad / HashLoad/pubpascal-dev

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

未关闭
#4 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

主要语言
TypeScript
星标
1
派生
0
PR 合并指标
30 天内没有已合并 PR

描述

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.

贡献指南

这个仓库没有索引到贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

先从此 issue 中的清单和迁移检查表开始,然后检查 Vercel 项目、Supabase 项目、Cloudflare zone、Upstash、Asaas、Turnstile、GitHub OAuth App 以及 GitHub Actions secrets。完成的标准是所有权归 HashLoad 所有,凭据和回调已更新,旧 key 已轮换,并且首页、搜索、package 详情、登录、发布和 SBOM 下载的所列 smoke test 均已通过。

由索引模型根据 Issue 内容生成。

评估

技术栈
github, next.js, supabase, typescript
领域
authentication, cloud, databases, devops, infrastructure, security
Issue 类型
功能
难度
5/5
预计耗时
一周以上
活跃度
活跃
描述清晰度
描述清楚
新手友好度
28/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。