- sogoctl: supervisor avec health checks et restart auto - sogoway: gateway HTTP, auth JWT, routing par hostname - sogoms-db: microservice MariaDB avec pool par application - Protocol IPC Unix socket JSON length-prefixed - Config YAML multi-application (prokov) - Deploy script pour container Alpine gw3 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
47 lines
1.4 KiB
Markdown
Executable File
47 lines
1.4 KiB
Markdown
Executable File
# CLAUDE.md
|
|
|
|
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
|
|
## Règles de travail
|
|
|
|
- Soit concis
|
|
- Ne fais rien sans validation utilisateur
|
|
|
|
## Project Overview
|
|
|
|
SOGOMS (Service Oriented GO MicroServices) - plateforme SaaS modulaire, multi-tenant, configurable.
|
|
|
|
**Principes:** modularité (1 feature = 1 binaire Go), configuration YAML, multi-tenant natif, un container avec plusieurs processus supervisés.
|
|
|
|
## Architecture
|
|
|
|
| Binaire | Rôle | Port/Socket |
|
|
|---------|------|-------------|
|
|
| **sogoctl** | Superviseur PID 1, health checks, scaling | TCP :9000 |
|
|
| **sogoway** | Gateway HTTP, auth JWT, routing | TCP :8080 |
|
|
| **sogorch** | Orchestrateur scénarios YAML | Unix socket |
|
|
| **sogoms-db** | Accès MariaDB | Unix socket |
|
|
| **sogoms-pdf** | Génération PDF | Unix socket |
|
|
| **sogoms-email** | Envoi emails | Unix socket |
|
|
| **sogoms-storage** | Gestion fichiers | Unix socket |
|
|
|
|
**Flux:** Client → Nginx(:443) → Sogoway(:8080) → Sogorch → Sogoms-*
|
|
|
|
## Structure
|
|
|
|
```
|
|
cmd/{sogoctl,sogoway,sogorch}/main.go
|
|
cmd/sogoms/{db,pdf,email,storage}/main.go
|
|
internal/{protocol,pool,config,scenario,auth,registry}/
|
|
config/{sogoctl,sogoway}.yaml
|
|
config/{tenants,routes,scenarios}/*.yaml
|
|
```
|
|
|
|
## Communication
|
|
|
|
Unix socket JSON length-prefixed (4 bytes length + JSON payload).
|
|
|
|
## Dépendances
|
|
|
|
net/http standard (Go 1.22+), go-yaml/v3, go-sql-driver/mysql, chromedp (PDF)
|