feat: système de rebuild Docker pour installation de modules has_backend
- internal/docker/client.go : client HTTP brut sur socket Unix - BuildImage() : build depuis repo git avec ARG MODULES - RebuildAndRestart() : rebuild async + remplacement de container - HandleReplacement() : le container successeur arrête et renomme l'ancien - Restart() : redémarrage simple (enable/disable sans rebuild) - cmd/gen-modules/main.go : générateur de registered_modules.go Lit MODULES env var, génère imports + appels RegisterModules() - registered_modules.go : version par défaut (aucun module) - main.go : appel RegisterModules(loader) + HandleReplacement() au démarrage - settings.go : inject DockerClient, has_backend dans moduleResp/moduleJSON, trigger rebuild à l'install, restart à l'enable/disable - migrations/006 : colonne has_backend sur table modules - Dockerfile : ARG MODULES, git clone modules, go run ./cmd/gen-modules - docker-compose.yml : socket Docker, group_add, env vars CONTAINER_NAME/GIT_REPO/GIT_BRANCH Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
dcf3b937fa
commit
a61f805cd0
8 changed files with 658 additions and 27 deletions
8
backend/registered_modules.go
Normal file
8
backend/registered_modules.go
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
// Code généré automatiquement par cmd/gen-modules — ne pas modifier manuellement.
|
||||
// Régénéré lors du build Docker avec la liste des modules compilés.
|
||||
package main
|
||||
|
||||
import "git.geronzi.fr/proxmoxPanel/core/backend/modules"
|
||||
|
||||
// RegisterModules enregistre les modules compilés dans le binaire.
|
||||
func RegisterModules(l *modules.Loader) {}
|
||||
Loading…
Add table
Add a link
Reference in a new issue