# 🔧 **CONFIGURAÇÃO DE VARIÁVEIS NO GITEA** ## 📋 **VISÃO GERAL** Agora o deploy é **100% automatizado**! O YAML cria o `appsettings.Production.json` dinamicamente usando variáveis do Gitea. --- ## ⚙️ **COMO CONFIGURAR NO GITEA** ### **1. Acessar Configurações** ```bash 1. Vá para: https://seu-gitea.com/seu-usuario/vcart.me.novo 2. Clique em: Settings (Configurações) 3. Na sidebar: Secrets and variables → Actions ``` ### **2. Criar SECRETS (dados sensíveis)** Clique em **"New repository secret"** para cada um: ```bash # STRIPE (obrigatório) STRIPE_SECRET_KEY = sk_test_51RjUmIBMIadsOxJVeqsMFxnZ8ePR7d8IbnaF4sAwBVJv9rrfODPEQ2C9fF3beoABpITdfzEk0ZDzGTTQfvKv63xI00PeZoABGO STRIPE_WEBHOOK_SECRET = whsec_SEU_WEBHOOK_SECRET_AQUI # OAUTH (obrigatório) GOOGLE_CLIENT_SECRET = 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 MICROSOFT_CLIENT_SECRET = T0.8Q~an.51iW1H0DVjL2i1bmSK_qTgVQOuEmapK # SENDGRID (obrigatório) SENDGRID_API_KEY = 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 ``` ### **3. Criar VARIABLES (dados não-sensíveis)** Clique em **"New repository variable"** para cada um: ```bash # STRIPE STRIPE_PUBLISHABLE_KEY = pk_test_51RjUmIBMIadsOxJVP4bWc54pHEOSf5km1hpOkOBSoGVoKxI46N4KSWtevpXCSq68OjFazBuXmPJGBwZ1KDN5MNJy003lj1YmAS STRIPE_ENVIRONMENT = test # OAUTH GOOGLE_CLIENT_ID = 472850008574-nmeepbdt4hunsk5c8krpbdmd3olc4jv6.apps.googleusercontent.com MICROSOFT_CLIENT_ID = b411606a-e574-4f59-b7cd-10dd941b9fa3 # SENDGRID SENDGRID_FROM_EMAIL = ricardo.carneiro@jobmaker.com.br SENDGRID_FROM_NAME = Ricardo Carneiro # MODERAÇÃO MODERATOR_EMAIL = ricardo.carneiro@jobmaker.com.br MODERATOR_EMAIL_1 = rrcgoncalves@gmail.com MODERATOR_EMAIL_2 = rirocarneiro@gmail.com ``` --- ## 🎯 **PASSO-A-PASSO COMPLETO** ### **FASE 1: TESTE ONLINE (ATUAL)** #### **1.1 Configure Webhook no Stripe** 1. **Stripe Dashboard** → **Developers** → **Webhooks** 2. **Add endpoint**: `https://bcards.site/api/stripe/webhook` 3. **Select events**: - `customer.subscription.created` - `customer.subscription.updated` - `customer.subscription.deleted` - `invoice.payment_succeeded` - `invoice.payment_failed` 4. **Copiar**: Signing secret (`whsec_...`) #### **1.2 Desativar Modo Restrito no Stripe** 1. **Stripe Dashboard** → **Settings** → **Account settings** 2. **Business settings** → **"Restricted mode"** → **DESATIVAR** ✅ #### **1.3 Configurar Variáveis no Gitea** Use os valores atuais (modo teste): ```bash # Para TESTE ONLINE STRIPE_ENVIRONMENT = test STRIPE_PUBLISHABLE_KEY = pk_test_... (sua chave atual) STRIPE_SECRET_KEY = sk_test_... (sua chave atual) STRIPE_WEBHOOK_SECRET = whsec_... (do webhook configurado) ``` #### **1.4 Commit e Deploy** ```bash git add . git commit -m "feat: deploy automatizado com configuração dinâmica via Gitea - YAML cria appsettings.Production.json automaticamente - Configuração via variáveis/secrets do Gitea - Mount do arquivo no container Docker - Suporte para teste online e produção 🔧 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude " git push origin main ``` --- ### **FASE 2: MIGRAÇÃO PARA LIVE (QUANDO PRONTO)** #### **2.1 Obter Chaves Live** ```bash 1. Stripe Dashboard → Toggle "Test mode" OFF 2. Developers → API Keys 3. Copiar: pk_live_... e sk_live_... ``` #### **2.2 Configurar Webhook Live** ```bash 1. Stripe Dashboard (Live) → Webhooks 2. Add endpoint: https://bcards.site/api/stripe/webhook 3. Copiar: whsec_live_... ``` #### **2.3 Criar Produtos Live** ```bash # No Stripe Dashboard (Live mode): Products → Create products para cada plano Copiar todos os price_live_xxx IDs ``` #### **2.4 Atualizar Variáveis no Gitea** ```bash # Mudar apenas estas variáveis: STRIPE_ENVIRONMENT = live STRIPE_PUBLISHABLE_KEY = pk_live_... (nova) STRIPE_SECRET_KEY = sk_live_... (nova) STRIPE_WEBHOOK_SECRET = whsec_live_... (nova) ``` #### **2.5 Atualizar Price IDs** Editar `appsettings.json` com os novos price IDs live e fazer commit. --- ## ✅ **VANTAGENS DESTA ABORDAGEM** ### **🔒 Segurança:** - ✅ Secrets nunca vão para o git - ✅ Variables ficam na interface do Gitea - ✅ Deploy totalmente automatizado ### **🚀 Produtividade:** - ✅ Mudança de ambiente: apenas update de variáveis - ✅ Sem arquivos manuais nos servidores - ✅ Rollback fácil - ✅ Configuração versionada via interface ### **🔧 Manutenibilidade:** - ✅ Uma única fonte de verdade - ✅ Fácil adicionar novos ambientes - ✅ Logs claros no deploy - ✅ Validação automática --- ## 📊 **FLUXO FINAL** ```mermaid graph TD A[git push main] --> B[Gitea Actions] B --> C[Create appsettings.Production.json] C --> D[Build Docker Image] D --> E[Upload Config to Servers] E --> F[Deploy with Volume Mount] F --> G[✅ Site Online] ``` **Resultado**: Configuração 100% automatizada, segura e versionada! 🎉