Skip to content

[P0] Modularizar código em múltiplos arquivos #3

@eltongomez

Description

@eltongomez

Modularização do Código (v1.1.0)

Objetivo

Dividir erp-server-setup.sh em múltiplos arquivos modulares para melhorar manutenibilidade, testabilidade e reutilização.

Estrutura Proposta

scripts/
├── core/
│   ├── functions.sh          # Funções utilitárias gerais
│   ├── logging.sh            # Sistema de logging
│   ├── colors.sh             # Cores e formatação
│   └── validation.sh         # Validações gerais
├── modules/
│   ├── ssh-hardening.sh      # Configuração SSH
│   ├── firewall.sh           # Configuração UFW
│   ├── fail2ban.sh           # Proteção contra força bruta
│   ├── password-policy.sh    # Política de senhas
│   ├── kernel-hardening.sh   # Hardening do kernel
│   ├── monitoring.sh         # Ferramentas de monitoramento
│   ├── security-updates.sh   # Atualizações de segurança
│   └── backups.sh            # Sistema de backup
├── config/
│   └── defaults.conf         # Configurações padrão
└── erp-server-setup.sh       # Script principal (orquestrador)

Tarefas

  • Criar estrutura de diretórios
  • Extrair funções utilitárias para core/functions.sh
  • Separar módulos funcionais
  • Atualizar script principal para sourcing
  • Testar compatibilidade backward
  • Documentar nova estrutura

Benefícios

  • Código mais limpo e testável
  • Reutilização de funções
  • Facilita contribuições da comunidade
  • Melhor documentação inline

Critério de Sucesso

  • Comportamento idêntico ao original
  • Todos os testes passando
  • Documentação atualizada

Metadata

Metadata

Assignees

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions