smart_ide/docs/repo/ia-dev-deploy-lib.md
Nicolas Cantu ac96434351 docs: centralize README content under docs/repo/
**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.
2026-04-03 18:20:31 +02:00

33 lines
1.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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 dunité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.sh`**
- **`orchestrator.sh`** : secrets puis **`exec`** orchestrateur projet (`deploy.project_orchestrator_path`). Legacy : `deploy.hooks.phases` ou `deploy.deploy_script_path`.
- **`run-project-hooks.sh`** : délègue à **`orchestrator.sh`**.
Voir [ia-dev-repository-overview.md](./ia-dev-repository-overview.md).