**Motivations:** - Single canonical documentation tree under docs/; reduce drift between README copies. **Evolutions:** - Add docs/repo/ with operational guides (cron, systemd, projects, logs, docv, ia_dev, services, scripts, extension). - Replace scattered README.md files with pointers to docs/repo/*.md. - Refresh docs/README.md index and cross-links across docs/, .cursor rules/agents. - Bump ia_dev submodule to matching doc pointer commits.
1.7 KiB
Bibliothèques partagées ia_dev/deploy/lib/
ssh.sh
Helpers SSH/SCP canoniques (ssh_run, scp_copy, require_ssh_key, ssh_common_opts).
LeCoffre : deploy/scripts_v2/_lib/ssh.sh du projet peut sourcer ia_dev/deploy/lib/ssh.sh lorsque ce chemin existe depuis la racine du monorepo.
deploy-log.sh
Optionnel : deploy_script_tee_log_if_requested <project_root> <log_subdir> [deploy_env] — troisième argument test | pprod | prod pour le nom de fichier journal. Nécessite info depuis colors.sh du projet.
Politique
La logique spécifique à un projet (Prisma, noms d’unités systemd, layout distant LeCoffre) reste dans le deploy/scripts_v2/ de chaque dépôt. Ici : transport, journalisation, helpers génériques.
deploy-methodology.sh
Contrat partagé : environnements test | pprod | prod, validations. Sourcé par deploy.sh et orchestrator.sh.
Frontière : tout ce qui est strictement identique pour chaque projet vit ici ou dans un deploy/lib/deploy-*.sh pair.
deploy-conf-handling.sh
Lecture conf.json : jq, deploy.secrets_path, exports IA_DEV_DEPLOY_REPO_ROOT, IA_DEV_DEPLOY_ENV (mandatory handoff, pas de repli silencieux). Sourcé par orchestrator.sh.
Orchestration
deploy.sh:./deploy/deploy.sh <project_id> <env> [args]→exec orchestrator.shorchestrator.sh: secrets puisexecorchestrateur projet (deploy.project_orchestrator_path). Legacy :deploy.hooks.phasesoudeploy.deploy_script_path.run-project-hooks.sh: délègue àorchestrator.sh.