Config - Gateway de Pagamento

Este diretório contém todas as configurações do sistema para diferentes ambientes.

Estrutura

Environments (/environments)

  • Objetivo: Configurações específicas por ambiente

  • Arquivos necessários:

    • development.json - Configurações para desenvolvimento local

    • staging.json - Configurações para ambiente de homologação

    • production.json - Configurações para produção

    • test.json - Configurações para execução de testes

    • docker-compose.yml - Configuração para containers locais

Deployment (/deployment)

  • Objetivo: Configurações de deploy e infraestrutura

  • Arquivos necessários:

    • nginx.conf - Configuração do servidor web

    • ssl-config.conf - Configurações SSL/TLS

    • pm2.config.js - Configuração do PM2 para Node.js

    • supervisor.conf - Configuração para supervisord

    • logrotate.conf - Rotação de logs

Configurações por Ambiente

Development

Staging

Production

Variáveis de Ambiente

Obrigatórias

  • NODE_ENV - Ambiente de execução

  • DATABASE_URL - String de conexão do banco

  • JWT_SECRET - Secret para tokens JWT

  • ENCRYPTION_KEY - Chave mestra de criptografia

  • API_PORT - Porta da API

Integrações

  • STRIPE_SECRET_KEY - Chave secreta do Stripe

  • PAYPAL_CLIENT_ID - ID do cliente PayPal

  • MERCADOPAGO_ACCESS_TOKEN - Token do MercadoPago

  • WEBHOOK_SECRET - Secret para validação de webhooks

Monitoramento

  • LOG_LEVEL - Nível de log (debug, info, warn, error)

  • SENTRY_DSN - DSN do Sentry para error tracking

  • NEW_RELIC_LICENSE_KEY - Chave do New Relic

Segurança de Configurações

Secrets Management

  • Nunca commitar secrets no código

  • Usar HashiCorp Vault ou AWS Secrets Manager

  • Rotação automática de chaves sensíveis

  • Criptografia de configurações locais

Validação de Configurações

  • Schema validation para todos os configs

  • Testes automáticos de conectividade

  • Verificação de dependencies no startup

  • Fallbacks para configurações críticas

Ferramentas Recomendadas

  • dotenv para desenvolvimento local

  • config para gerenciamento de configurações

  • Joi para validação de schemas

  • Docker Compose para orquestração local

Last updated

Was this helpful?