deploy(kogus): align orchestrator path with deploy-multisite-lines.sh
**Motivations:** - LeCoffre script renamed to reflect multisite product lines (lecoffreio, enso, genealogie) **Root causes:** - Stale references to deploy-lecoffre-all-sites.sh in ia_dev entrypoints and conf **Correctifs:** - deploy-by-script-to.sh, change-to-all-branches.sh, conf.json project_orchestrator_path **Evolutions:** - .smartIde agent docs updated for new script name **Pages affectées:** - deploy/, .smartIde/agents/, projects/kogus/conf.json, projects/kogus/docs/agents-scripts-split.md
This commit is contained in:
parent
91b6a8a319
commit
c164f8dfa3
@ -48,15 +48,15 @@ En tant qu'agent, avant de solliciter l'ia, regarde ce que tu peux scripter (imp
|
||||
|
||||
**Documentation** : La doc des projets gérés est dans **`projects/<id>/docs`** ; la doc ia_dev est dans **`projects/ia_dev/docs`**.
|
||||
|
||||
**Rôle de l’agent :** vérifier que la branche locale est test (sinon retour 1), fournir le message de commit (via /push-by-script), lancer le script, contrôler la sortie et le code de retour. **Rôle du script :** exécution déterministe (vérif branche test, `branch-align.sh test`, puis sauf **`--align-only`** : **`orchestrator.sh test --no-sync-origin`** ou, à défaut, **`bash deploy/scripts_v2/deploy-lecoffre-all-sites.sh test --no-sync-origin`** — **toujours les trois lignes** lecoffreio / enso / genealogie lorsque le dépôt expose **`deploy-lecoffre-all-sites.sh`** ; repli historique **`deploy.sh test`** uniquement si ce script est absent). Flags métier via **`$SECRETS_BASE/<site>/test/deploy.conf`** (par ligne) ; journalisation **`./logs/deploy_*.log`**. Préparation OS : **`/setup-host`** + **`run-setup-host.sh`**, pas confondre avec le déploiement applicatif.
|
||||
**Rôle de l’agent :** vérifier que la branche locale est test (sinon retour 1), fournir le message de commit (via /push-by-script), lancer le script, contrôler la sortie et le code de retour. **Rôle du script :** exécution déterministe (vérif branche test, `branch-align.sh test`, puis sauf **`--align-only`** : **`orchestrator.sh test --no-sync-origin`** ou, à défaut, **`bash deploy/scripts_v2/deploy-multisite-lines.sh test --no-sync-origin`** — **toujours les trois lignes** lecoffreio / enso / genealogie lorsque le dépôt expose **`deploy-multisite-lines.sh`** ; repli historique **`deploy.sh test`** uniquement si ce script est absent). Flags métier via **`$SECRETS_BASE/<site>/test/deploy.conf`** (par ligne) ; journalisation **`./logs/deploy_*.log`**. Préparation OS : **`/setup-host`** + **`run-setup-host.sh`**, pas confondre avec le déploiement applicatif.
|
||||
|
||||
**Projet kogus (monorepo LeCoffre) :** si le script enchaîne **`deploy/scripts_v2`**, appliquer le contrat multisite (**`SITE_CODE`** / **`deploy-site.sh`** / **`deploy-lecoffre-all-sites.sh`**, secrets **`.secrets/<site>/<env>/`**) décrit dans **`repository_root/docs/features/multi-site-architecture.md`** et **`repository_root/.cursor/agents/agent-paths-registry.md`** §3 bis (les agents Cursor du dépôt applicatif sont sous **`.cursor/agents/`**, pas **`.smartIde`**).
|
||||
**Projet kogus (monorepo LeCoffre) :** si le script enchaîne **`deploy/scripts_v2`**, appliquer le contrat multisite (**`SITE_CODE`** / **`deploy-site.sh`** / **`deploy-multisite-lines.sh`**, secrets **`.secrets/<site>/<env>/`**) décrit dans **`repository_root/docs/features/multi-site-architecture.md`** et **`repository_root/.cursor/agents/agent-paths-registry.md`** §3 bis (les agents Cursor du dépôt applicatif sont sous **`.cursor/agents/`**, pas **`.smartIde`**).
|
||||
|
||||
**Branche applicative test-first (obligatoire) :** Toute correction de code, configuration ou documentation dans le **dépôt applicatif** (`repository_root` dans `projects/<id>/conf.json`) pendant l’exécution de cet agent doit être réalisée sur la branche locale **test**. Avant toute modification : si le dépôt applicatif n’est pas sur **test**, exécuter **`git checkout test`** (ou équivalent validé projet). **Interdit** : committer un correctif **uniquement** sur **pprod** ou **prod** depuis cet agent. Si l’échec ou le contexte provient d’une phase **pprod**/**prod** (correctifs identifiés après déploiement ou analyse sur ces branches), appliquer la procédure **Corrections découvertes sur pprod ou prod** dans `.smartIde/agents/deploy-pprod-or-prod.md` : correctifs sur **test**, pousser **hors** **`/deploy-pprod-or-prod`** si besoin, puis **nouvelle** invocation utilisateur de **`/deploy-pprod-or-prod`** (workflow depuis l’**étape 2** ; **une** tentative de **`deploy-by-script-to`** par ouverture d’agent — **§ Politique** dans le même fichier). **Ne pas** confondre avec l’agent **`/change-to-all-branches`** (déploiement **test** multisite).
|
||||
|
||||
**Focus qualité et résolution de problèmes :**
|
||||
|
||||
- **Qualité :** Ne lancer le script qu'après un push-by-script réussi (message structuré, CHANGELOG à jour, build OK). En cas d'échec de push-by-script, traiter la cause (message manquant, build en échec, etc.) avant de continuer.
|
||||
- **Qualité :** Ne lancer le script qu'après un push-by-script réussi (message structuré, CHANGELOG à jour). **`/push-by-script`** ne compile pas : l’absence de build dans ce flux n’est pas un échec de push-by-script. En cas d'échec de push-by-script, traiter la cause (message manquant, script en erreur, etc.) avant de continuer.
|
||||
|
||||
- **Résolution de problèmes :** Si **`change-to-all-branches.sh`** échoue, analyser la sortie pour identifier la cause ; appliquer les corrections (**`/fix-lint`**, **`/push-by-script`**) **sans** relancer le script de déploiement test dans le même run (**§ Politique**).
|
||||
|
||||
@ -79,7 +79,7 @@ Si la branche locale actuelle n'est pas test, retourner 1.
|
||||
Uniquement en test (branche git), exécuter dans l'ordre :
|
||||
|
||||
1. **/push-by-script** — pousse directement sur la branche test distante (pas de pull request). Message de commit fourni par l'agent.
|
||||
2. **Exécuter depuis la racine de ia_dev** : `./deploy/change-to-all-branches.sh [project_id]` — aligne origin/test, origin/pprod, origin/prod sur le SHA de test, puis déploie **test** en **multisite** (`orchestrator.sh` ou **`deploy-lecoffre-all-sites.sh test --no-sync-origin`** ; métier via **`deploy.conf`** par site ; logs **`./logs/`**). project_id optionnel. Push direct uniquement ; aucun PR. **Ne pas** passer **`--align-only`** pour cet agent (cette option saute le déploiement **test** ; elle est utilisée par **`/deploy-pprod-or-prod`** étape 2 uniquement).
|
||||
2. **Exécuter depuis la racine de ia_dev** : `./deploy/change-to-all-branches.sh [project_id]` — aligne origin/test, origin/pprod, origin/prod sur le SHA de test, puis déploie **test** en **multisite** (`orchestrator.sh` ou **`deploy-multisite-lines.sh test --no-sync-origin`** ; métier via **`deploy.conf`** par site ; logs **`./logs/`**). project_id optionnel. Push direct uniquement ; aucun PR. **Ne pas** passer **`--align-only`** pour cet agent (cette option saute le déploiement **test** ; elle est utilisée par **`/deploy-pprod-or-prod`** étape 2 uniquement).
|
||||
- **Paramètres :** Arguments : **project_id** optionnel (ex. kogus), puis optionnellement **`--align-only`** (hors périmètre de **cet** agent). La branche git est toujours **test**. Si l'utilisateur fournit des tokens ambigus (ex. « test kogus »), extraire le **project_id** quand `projects/<id>/conf.json` existe : `./deploy/change-to-all-branches.sh kogus`.
|
||||
- **Pas de timeout :** Ne pas lancer la commande avec un timeout court (ex. 5 min). Le déploiement (build, migrations, import-v1, redémarrage services, vérifications) peut durer 10 à 30 min ; utiliser un timeout long ou aucun timeout pour laisser le script aller au bout.
|
||||
|
||||
|
||||
@ -30,7 +30,7 @@ En tant qu'agent, avant de solliciter l'ia, regarde ce que tu peux scripter (imp
|
||||
- **Tentative de déploiement** : une exécution de **`./deploy/deploy-by-script-to.sh [project_id] <test|pprod|prod>`** (le script enchaîne l’orchestration **`deploy/scripts_v2`** / multisite selon le projet).
|
||||
- **Par message utilisateur / ouverture d’agent** : **au plus une** tentative ; si le code de sortie est **non nul**, **ne pas** relancer **`deploy-by-script-to.sh`** vers le **même** environnement dans le **même** run.
|
||||
- **Après échec** : analyser la sortie et **`logs/deploy_*.log`**, documenter la cause et les prérequis ; corrections code / config / doc et **`/push-by-script`** possibles **sans** nouvel appel au script de déploiement ; l’utilisateur relance explicitement **`/deploy-by-script`** (ou équivalent) pour un nouvel essai.
|
||||
- **Alignement** : **`LECOFFRE_REPO/.cursor/agents/deploy-test-by-script.md`** (test, **`deploy-lecoffre-all-sites.sh`**) et **`.smartIde/agents/deploy-pprod-or-prod.md`** / **`change-to-all-branches.md`** pour la même règle sur leurs commandes respectives.
|
||||
- **Alignement** : **`LECOFFRE_REPO/.cursor/agents/deploy-test-by-script.md`** (test, **`deploy-multisite-lines.sh`**) et **`.smartIde/agents/deploy-pprod-or-prod.md`** / **`change-to-all-branches.md`** pour la même règle sur leurs commandes respectives.
|
||||
|
||||
---
|
||||
|
||||
@ -42,7 +42,7 @@ En tant qu'agent, avant de solliciter l'ia, regarde ce que tu peux scripter (imp
|
||||
|
||||
## Multisite — projet **kogus** (site produit `lecoffreio` = ligne notaire)
|
||||
|
||||
Lorsque le playbook appelle **`repository_root/deploy/scripts_v2/`**, respecter la boucle **`SITE_CODE`** (**`lecoffreio`**, **`enso`**, **`genealogie`**) ou **`deploy-site.sh`** / **`deploy-lecoffre-all-sites.sh`** ; **`deploy-by-script-to`** ne positionne pas **`SITE_CODE`**. Secrets : **`.secrets/<site>/<env>/`**. Source normative : **`repository_root/docs/features/multi-site-architecture.md`** ; **`repository_root/.cursor/agents/agent-paths-registry.md`** §3 bis ; § **Multisite** dans **`repository_root/.cursor/agents/deploy-pprod-or-prod.md`**. **Une seule ligne** : **neuf agents** (site × env) — **`deploy-test-lecoffreio`**, **`deploy-test-enso`**, **`deploy-test-genealogie`**, **`deploy-pprod-lecoffreio`**, **`deploy-pprod-enso`**, **`deploy-pprod-genealogie`**, **`deploy-prod-lecoffreio`**, **`deploy-prod-enso`**, **`deploy-prod-genealogie`** (fichiers **`.smartIde/agents/deploy-*.md`**, playbook canonique sous **`LECOFFRE_REPO/.cursor/agents/`**). **Repli paramétrique** : **`deploy-test-site.md`** (**`deploy-site.sh test <site>`**), **`deploy-pprod-or-prod-site.md`** (align puis **`deploy-site.sh <pprod|prod> <site>`**, sans **`deploy-by-script-to`**).
|
||||
Lorsque le playbook appelle **`repository_root/deploy/scripts_v2/`**, respecter la boucle **`SITE_CODE`** (**`lecoffreio`**, **`enso`**, **`genealogie`**) ou **`deploy-site.sh`** / **`deploy-multisite-lines.sh`** ; **`deploy-by-script-to`** ne positionne pas **`SITE_CODE`**. Secrets : **`.secrets/<site>/<env>/`**. Source normative : **`repository_root/docs/features/multi-site-architecture.md`** ; **`repository_root/.cursor/agents/agent-paths-registry.md`** §3 bis ; § **Multisite** dans **`repository_root/.cursor/agents/deploy-pprod-or-prod.md`**. **Une seule ligne** : **neuf agents** (site × env) — **`deploy-test-lecoffreio`**, **`deploy-test-enso`**, **`deploy-test-genealogie`**, **`deploy-pprod-lecoffreio`**, **`deploy-pprod-enso`**, **`deploy-pprod-genealogie`**, **`deploy-prod-lecoffreio`**, **`deploy-prod-enso`**, **`deploy-prod-genealogie`** (fichiers **`.smartIde/agents/deploy-*.md`**, playbook canonique sous **`LECOFFRE_REPO/.cursor/agents/`**). **Repli paramétrique** : **`deploy-test-site.md`** (**`deploy-site.sh test <site>`**), **`deploy-pprod-or-prod-site.md`** (align puis **`deploy-site.sh <pprod|prod> <site>`**, sans **`deploy-by-script-to`**).
|
||||
|
||||
Cet agent lance le déploiement vers l’**environnement passé au script** (ex. `./deploy/deploy-by-script-to.sh <id> test|pprod|prod`) via **scripts_v2**. **Si `deploy.host_stays_on_test` est absent ou false :** en pratique la branche locale du dépôt applicatif correspond souvent à l’env cible pour **pprod**/**prod**. **Rôle de l’agent :** vérifier le contexte (si **`host_stays_on_test`** : branche locale = **test** ; sinon : cohérence branche / env selon le projet), lancer le script, contrôler la sortie et le code de retour, synthèse et clôture. **Rôle du script :** exécution et orchestration sûre (suivi branches, sync, log, déploiement).
|
||||
|
||||
@ -61,7 +61,7 @@ Cet agent lance le déploiement vers l’**environnement passé au script** (ex.
|
||||
**Horodatage et contexte** : appliquer intégralement le bloc défini dans `.smartIde/rules/cloture-evolution.mdc` (début et fin d'exécution, lancement et retour des sub-agents).
|
||||
|
||||
**Avant d'exécuter un script du projet :**
|
||||
1. Lire le fichier du script avec l'outil de lecture (ex. `deploy/scripts_v2/deploy.sh` ; pour **kogus**, lire aussi **`deploy-site.sh`** / **`deploy-lecoffre-all-sites.sh`** si le flux les utilise).
|
||||
1. Lire le fichier du script avec l'outil de lecture (ex. `deploy/scripts_v2/deploy.sh` ; pour **kogus**, lire aussi **`deploy-site.sh`** / **`deploy-multisite-lines.sh`** si le flux les utilise).
|
||||
2. Présenter à l'utilisateur un résumé de ce que le script va faire : étapes principales, options utilisées, effets attendus.
|
||||
3. Lancer le script uniquement après cette présentation.
|
||||
|
||||
|
||||
@ -82,7 +82,7 @@ Cocher explicitement : **« Ordre anti-duplication : respecté (pas d’agent `/
|
||||
|
||||
## Multisite — projet **kogus** (monorepo LeCoffre ; code produit site `lecoffreio` inchangé)
|
||||
|
||||
Quand **`repository_root`** est le monorepo LeCoffre et **`deploy-by-script-to`** enchaîne **`deploy/scripts_v2/`**, l’orchestration doit couvrir **`notary`**, **`enso`**, **`genealogie`** (**`SITE_CODE`** ou **`deploy-site.sh`** / **`deploy-lecoffre-all-sites.sh`**) ; **`deploy-by-script-to`** ne définit pas **`SITE_CODE`**. Secrets : **`.secrets/<site>/<env>/`**. Doc : **`repository_root/docs/features/multi-site-architecture.md`** ; **`repository_root/.cursor/agents/agent-paths-registry.md`** §3 bis ; **`repository_root/.cursor/agents/deploy-pprod-or-prod.md`** § Multisite.
|
||||
Quand **`repository_root`** est le monorepo LeCoffre et **`deploy-by-script-to`** enchaîne **`deploy/scripts_v2/`**, l’orchestration doit couvrir **`notary`**, **`enso`**, **`genealogie`** (**`SITE_CODE`** ou **`deploy-site.sh`** / **`deploy-multisite-lines.sh`**) ; **`deploy-by-script-to`** ne définit pas **`SITE_CODE`**. Secrets : **`.secrets/<site>/<env>/`**. Doc : **`repository_root/docs/features/multi-site-architecture.md`** ; **`repository_root/.cursor/agents/agent-paths-registry.md`** §3 bis ; **`repository_root/.cursor/agents/deploy-pprod-or-prod.md`** § Multisite.
|
||||
|
||||
## Workflow obligatoire
|
||||
|
||||
@ -90,15 +90,15 @@ Quand **`repository_root`** est le monorepo LeCoffre et **`deploy-by-script-to`*
|
||||
|
||||
2. **Alignement branches (sans déploiement test)** :
|
||||
- **Prérequis** : **`origin/test`** porte le commit à déployer (commits locaux poussés **hors** cet agent : **`/push-by-script`**, **`./deploy/pousse.sh kogus`**, etc.). Si le clone **test** est en avance sur **`origin/test`**, **arrêter** et indiquer de pousser d’abord.
|
||||
- Depuis la racine ia_dev : **`./deploy/change-to-all-branches.sh [project_id] --align-only`** (**pas** d’appel **`deploy-lecoffre-all-sites.sh test`** / **`orchestrator.sh test`** dans cette étape).
|
||||
- Depuis la racine ia_dev : **`./deploy/change-to-all-branches.sh [project_id] --align-only`** (**pas** d’appel **`deploy-multisite-lines.sh test`** / **`orchestrator.sh test`** dans cette étape).
|
||||
- **Ne pas** invoquer l’agent **`/change-to-all-branches`** ici : cet agent enchaîne le déploiement **test** ; pour un déploiement test complet, flux séparé **`/change-to-all-branches`**.
|
||||
- **Si KO :** Analyser la sortie (et **`logs/deploy_*.log`** si un outil amont les a alimentés). Toute correction sur le dépôt applicatif : **test** d’abord (voir section **Corrections découvertes sur pprod ou prod**), puis **au plus une** nouvelle exécution de l’**étape 2** dans le même run si l’échec est purement d’alignement Git ; sinon documenter et s’arrêter.
|
||||
- **Si OK :** Passer à l'étape 3.
|
||||
|
||||
3. **Lancer le script deploy-by-script-to** avec l’environnement en paramètre (`pprod` ou `prod`) :
|
||||
- Le script est lancé depuis la racine de ia_dev. Avec project_id (optionnel), MAIL_TO ou AI_AGENT_TOKEN le dépôt cible est celui de la conf (deploy.secrets_path). Lancer : `./deploy/deploy-by-script-to.sh [project_id] <pprod|prod>`.
|
||||
- **`deploy.host_stays_on_test: true`** dans `projects/<id>/conf.json` (LeCoffre : **true** dans `projects/kogus/conf.json`) : le clone applicatif reste sur **`test`** ; `deploy-by-script-to.sh` ne fait **pas** de `checkout` **pprod**/**prod** ni `reset --hard` sur ces branches ; le playbook **`deploy/scripts_v2`** aligne les remotes / **worktree** et enchaîne **les trois lignes** (**`orchestrator.sh`** ou **`deploy-lecoffre-all-sites.sh`**) — voir **`deploy/README.md`** du dépôt applicatif.
|
||||
- **Sinon :** le script fait en général : passage dans le dépôt du projet, `checkout` sur la branche paramètre, vérification que la base secrets attendue par le projet existe (**kogus** / monorepo LeCoffre : imbriquée **`.secrets/<site>/<env>/`**, voir **`repository_root/docs/features/multi-site-architecture.md`** — le seul plat **`.secrets/<env>/`** n’est pas le contrat nominal multisite), `reset --hard` sur **`origin/<branche>`**, déploiement (**orchestrateur** ou **`deploy-lecoffre-all-sites.sh`** / repli **`deploy.sh`**), puis **`checkout test`**.
|
||||
- **`deploy.host_stays_on_test: true`** dans `projects/<id>/conf.json` (LeCoffre : **true** dans `projects/kogus/conf.json`) : le clone applicatif reste sur **`test`** ; `deploy-by-script-to.sh` ne fait **pas** de `checkout` **pprod**/**prod** ni `reset --hard` sur ces branches ; le playbook **`deploy/scripts_v2`** aligne les remotes / **worktree** et enchaîne **les trois lignes** (**`orchestrator.sh`** ou **`deploy-multisite-lines.sh`**) — voir **`deploy/README.md`** du dépôt applicatif.
|
||||
- **Sinon :** le script fait en général : passage dans le dépôt du projet, `checkout` sur la branche paramètre, vérification que la base secrets attendue par le projet existe (**kogus** / monorepo LeCoffre : imbriquée **`.secrets/<site>/<env>/`**, voir **`repository_root/docs/features/multi-site-architecture.md`** — le seul plat **`.secrets/<env>/`** n’est pas le contrat nominal multisite), `reset --hard` sur **`origin/<branche>`**, déploiement (**orchestrateur** ou **`deploy-multisite-lines.sh`** / repli **`deploy.sh`**), puis **`checkout test`**.
|
||||
- **Si KO :** Analyser la sortie et les logs, identifier la cause. **Ne pas** se limiter à corriger sur la branche **pprod**/**prod** : retour **test**, corrections, push **hors** cet agent si besoin, puis **rejouer depuis l’étape 2** (**`change-to-all-branches.sh --align-only`**) **sans** relancer l’**étape 3** (**`deploy-by-script-to`**) dans le même run — section **Corrections découvertes sur pprod ou prod** et **§ Politique — une seule tentative de déploiement**. Un nouvel essai de **`deploy-by-script-to`** = **nouvelle** invocation **`/deploy-pprod-or-prod`**.
|
||||
- **Si OK :** Passer à l'étape 4.
|
||||
|
||||
|
||||
@ -17,4 +17,4 @@ is_background: false
|
||||
|
||||
## Référence multisite trois lignes (test)
|
||||
|
||||
**`IADEV_REPO/.smartIde/agents/deploy-by-script.md`** § multisite et **`LECOFFRE_REPO/.cursor/agents/deploy-test-by-script.md`** (`deploy-lecoffre-all-sites.sh test`).
|
||||
**`IADEV_REPO/.smartIde/agents/deploy-by-script.md`** § multisite et **`LECOFFRE_REPO/.cursor/agents/deploy-test-by-script.md`** (`deploy-multisite-lines.sh test`).
|
||||
|
||||
@ -71,7 +71,7 @@ fi
|
||||
|
||||
# scripts_v2 lives in the host project's deploy/ (not necessarily under ia_dev)
|
||||
DEPLOY_SCRIPTS_V2="${PROJECT_ROOT}/deploy/scripts_v2"
|
||||
ALL_SITES="${DEPLOY_SCRIPTS_V2}/deploy-lecoffre-all-sites.sh"
|
||||
ALL_SITES="${DEPLOY_SCRIPTS_V2}/deploy-multisite-lines.sh"
|
||||
echo "[change-to-all-branches] Deploying test (--no-sync-origin; business flags from deploy.conf only)..."
|
||||
if [[ -n "${IA_PROJECT_ID:-}" && -x "${DEPLOY_DIR}/orchestrator.sh" ]]; then
|
||||
"${DEPLOY_DIR}/orchestrator.sh" test --no-sync-origin
|
||||
|
||||
@ -134,7 +134,7 @@ else
|
||||
_cfg_script="$(ia_dev_resolve_path_from_conf "$PROJECT_CONFIG_PATH" "$_cfg_script")"
|
||||
[[ -n "$_cfg_script" && -x "$_cfg_script" ]] && deploy_script="$_cfg_script"
|
||||
fi
|
||||
all_sites_script="$PROJECT_ROOT/deploy/scripts_v2/deploy-lecoffre-all-sites.sh"
|
||||
all_sites_script="$PROJECT_ROOT/deploy/scripts_v2/deploy-multisite-lines.sh"
|
||||
if [[ "${IA_PROJECT_ID:-}" == "kogus" && -f "$all_sites_script" && "$deploy_script" == *"/deploy.sh" ]]; then
|
||||
bash "$all_sites_script" "$TARGET_BRANCH"
|
||||
else
|
||||
|
||||
@ -12,7 +12,7 @@
|
||||
"repository_root": "/home/desk/code/lecoffre_ng_test",
|
||||
"scripts_path": "/home/desk/code/lecoffre_ng_test/deploy/scripts_v2",
|
||||
"deploy_script_path": "/home/desk/code/lecoffre_ng_test/deploy/scripts_v2/deploy.sh",
|
||||
"project_orchestrator_path": "deploy/scripts_v2/deploy-lecoffre-all-sites.sh",
|
||||
"project_orchestrator_path": "deploy/scripts_v2/deploy-multisite-lines.sh",
|
||||
"secrets_path": "/home/desk/code/lecoffre_ng_test/.secrets",
|
||||
"host_stays_on_test": true
|
||||
},
|
||||
|
||||
@ -96,7 +96,7 @@
|
||||
- Construire le message de commit (toutes les sections obligatoires)
|
||||
- Mettre à jour CHANGELOG.md
|
||||
- Mettre à jour VERSION (incrément sous-sous-version)
|
||||
- Exécuter `./deploy/pousse.sh` avec le message sur STDIN (builds explicites avant, ou **`--build`** sur la même ligne)
|
||||
- Exécuter `./deploy/pousse.sh` avec le message sur STDIN **sans** **`--build`** lorsque l’invocation est la commande Cursor **`/push-by-script`** (compilation interdite dans cet agent). Builds ou **`--build`** : hors ce flux ou demande utilisateur explicite dans le même message.
|
||||
|
||||
**Script pousse.sh aujourd’hui :**
|
||||
|
||||
@ -122,7 +122,7 @@
|
||||
| `deploy/branch-align.sh` | Ré-exécution depuis la racine git si nécessaire |
|
||||
| `deploy/scripts_v2/deploy.sh` | Par défaut sync `--sync-origin` ; tee vers `logs/deploy_*_kogus_*.log` quand **`SITE_CODE`** est défini (**`deploy-site.sh`**), sinon `logs/deploy_<env>_*.log` ; `--no-sync-origin` pour désactiver le sync local ; métier uniquement `deploy.conf` |
|
||||
| `deploy/pousse.sh` | **Ré-exéc depuis racine** si besoin ; options **`--bump-version`**, **`--build`** ; sans **`--build`** : pas de compilation dans le script |
|
||||
| `deploy/change-to-all-branches.sh` | Vérif branche test, `branch-align.sh test`, puis sauf **`--align-only`** : orchestrateur ou `deploy-lecoffre-all-sites.sh` / `deploy.sh` test `--no-sync-origin` ; logs `./logs/` ; **`--align-only`** = alignement seul (usage **`/deploy-pprod-or-prod`** étape 2) |
|
||||
| `deploy/change-to-all-branches.sh` | Vérif branche test, `branch-align.sh test`, puis sauf **`--align-only`** : orchestrateur ou `deploy-multisite-lines.sh` / `deploy.sh` test `--no-sync-origin` ; logs `./logs/` ; **`--align-only`** = alignement seul (usage **`/deploy-pprod-or-prod`** étape 2) |
|
||||
| Agents .smartIde/agents/*.md | Adapter les consignes pour utiliser les nouvelles options/scripts et alléger les étapes redondantes |
|
||||
|
||||
---
|
||||
@ -139,7 +139,7 @@
|
||||
### push-by-script / pousse.sh
|
||||
|
||||
- **Dans le script :** avec **`--build`** uniquement : build check (`npm run build` / `build:all-sites` selon `build_dirs`) avant staging ; en cas d'échec, sortie en erreur sans commit ni push. Sans **`--build`** : staging/commit/push seulement.
|
||||
- **Dans l'agent :** construire le message, mettre à jour CHANGELOG, exécuter les builds explicites (étape 4 bis) ou **`pousse.sh --build`**, lancer **`pousse.sh`**, contrôler sortie et code de retour.
|
||||
- **Dans l'agent :** construire le message, mettre à jour CHANGELOG, lancer **`pousse.sh` sans `--build`** pour **`/push-by-script`** ; sinon (hors slash-commande ou demande explicite) builds explicites (étape 4 bis) ou **`pousse.sh --build`** ; contrôler sortie et code de retour.
|
||||
|
||||
### Tous les agents
|
||||
|
||||
@ -162,7 +162,7 @@
|
||||
|
||||
### change-to-all-branches.sh
|
||||
|
||||
- Par défaut (sans **`--align-only`**) : après `branch-align.sh test`, appelle `deploy-lecoffre-all-sites.sh test --no-sync-origin` / orchestrateur ou `deploy.sh test --no-sync-origin` (métier dans `deploy.conf`).
|
||||
- Par défaut (sans **`--align-only`**) : après `branch-align.sh test`, appelle `deploy-multisite-lines.sh test --no-sync-origin` / orchestrateur ou `deploy.sh test --no-sync-origin` (métier dans `deploy.conf`).
|
||||
- Avec **`--align-only`** : s’arrête après `branch-align.sh test` (pas de déploiement test ; réservé au flux **`/deploy-pprod-or-prod`** ia_dev).
|
||||
|
||||
### Agents
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user