chore: add diagrams + scripts + archicrat-ia route
All checks were successful
CI / build-and-anchors (push) Successful in 1m46s
SMOKE / smoke (push) Successful in 14s

This commit is contained in:
2026-02-20 18:27:25 +01:00
parent ab3758bbc2
commit 78eb9cbb58
19 changed files with 8442 additions and 0 deletions

View File

@@ -0,0 +1,870 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="1500"
height="940"
viewBox="0 0 1500 940"
role="img"
aria-label="Workflow Git CI - main protégé, PR, CI, release-pack, déploiement blue/green"
version="1.1"
id="svg93"
sodipodi:docname="archicratie-web-edition-git-ci-workflow-v1.svg"
inkscape:version="1.3-alpha (95f74fb, 2023-03-31)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview93"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="0.88133333"
inkscape:cx="253.02572"
inkscape:cy="536.11952"
inkscape:window-width="1472"
inkscape:window-height="1022"
inkscape:window-x="234"
inkscape:window-y="30"
inkscape:window-maximized="0"
inkscape:current-layer="svg93" />
<defs
id="defs2">
<style
id="style1">
/* ✅ Version “Inkscape-safe” : pas de var(), pas de rgba() */
.canvasBg { fill:#f8fafc; stroke:#e2e8f0; stroke-width:1; }
.title { font:800 26px/1.2 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial; fill:#0f172a; }
.subtitle { font:600 14px/1.4 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial; fill:#475569; }
.laneTitle { font:800 14px/1 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial; fill:#0f172a; letter-spacing:.2px; }
.laneNote { font:600 12px/1.4 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial; fill:#475569; }
.boxTitle { font:800 14px/1.2 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial; fill:#0f172a; }
.boxText { font:600 12px/1.35 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial; fill:#475569; }
.mono { font:700 11px/1.35 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,&quot;Liberation Mono&quot;,&quot;Courier New&quot;,monospace; fill:#334155; }
.lane { fill:#f1f5f9; fill-opacity:.70; stroke:#cbd5e1; stroke-width:1; }
.laneAlt { fill:#e2e8f0; fill-opacity:.55; stroke:#cbd5e1; stroke-width:1; }
.box { fill:#ffffff; fill-opacity:.92; stroke:#94a3b8; stroke-width:1.4; }
.boxAlt { fill:#f8fafc; fill-opacity:.92; stroke:#94a3b8; stroke-width:1.4; }
.tag { font:800 10px/1 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial; }
.tagOk { fill:#16a34a; }
.tagWarn { fill:#f59e0b; }
.tagInfo { fill:#2563eb; }
.tagDanger { fill:#dc2626; }
.arrow { stroke:#64748b; stroke-width:2.2; fill:none; marker-end:url(#arrowHead); }
.arrowSoft { stroke:#94a3b8; stroke-width:2; fill:none; marker-end:url(#arrowHeadSoft); }
.dashed { stroke-dasharray:7 6; }
.callout { fill:#ffffff; fill-opacity:.70; stroke:#cbd5e1; stroke-width:1.1; }
.small { font:600 11px/1.35 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial; fill:#475569; }
</style>
<marker
id="arrowHead"
markerWidth="10"
markerHeight="10"
refX="9"
refY="5"
orient="auto">
<path
d="M0,0 L10,5 L0,10 Z"
fill="#64748b"
id="path1" />
</marker>
<marker
id="arrowHeadSoft"
markerWidth="10"
markerHeight="10"
refX="9"
refY="5"
orient="auto">
<path
d="M0,0 L10,5 L0,10 Z"
fill="#94a3b8"
id="path2" />
</marker>
</defs>
<!-- ✅ Fond explicite + bordure douce -->
<rect
x="0.5"
y="0.5"
width="1499"
height="939"
class="canvasBg"
rx="26"
id="rect2" />
<!-- Header -->
<text
x="44"
y="54"
class="title"
id="text2">Archicratie — Workflow Git “pro” (main protégé) + CI + Release + Blue/Green</text>
<text
x="44"
y="82"
class="subtitle"
id="text3">
Objectif : partir dun hotfix appliqué (si besoin), le remettre proprement sous Git (branche → PR → CI → merge),
puis produire une release packagée et déployer sans régression.
</text>
<!-- Lanes -->
<rect
x="40"
y="115"
width="440"
height="770"
class="lane"
rx="18"
id="rect3" />
<rect
x="520"
y="115"
width="430"
height="770"
class="laneAlt"
rx="18"
id="rect4" />
<rect
x="980"
y="115"
width="250"
height="770"
class="lane"
rx="18"
id="rect5" />
<rect
x="1250"
y="115"
width="210"
height="770"
class="laneAlt"
rx="18"
id="rect6" />
<text
x="60"
y="142"
class="laneTitle"
id="text6"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:14px;line-height:1;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">Atelier DEV (Mac Studio)</text>
<text
x="60"
y="164"
class="laneNote"
id="text7"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:12px;line-height:1.4;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">Travail local, build, commit, push de branche</text>
<text
x="540"
y="148"
class="laneTitle"
id="text8">Gitea (remote)</text>
<text
x="540"
y="170"
class="laneNote"
id="text9">main verrouillé · PR obligatoire · historique canon</text>
<text
x="1000"
y="148"
class="laneTitle"
id="text10">CI (CI.yaml)</text>
<text
x="1000"
y="170"
class="laneNote"
id="text11">build checks · gate de merge</text>
<text
x="1270"
y="148"
class="laneTitle"
id="text12">NAS (Prod)</text>
<text
x="1270"
y="170"
class="laneNote"
id="text13">release-pack + blue/green</text>
<!-- Boxes: Mac -->
<rect
x="70"
y="170"
width="380"
height="105"
class="box"
rx="16"
id="rect13" />
<text
x="92"
y="198"
class="boxTitle"
id="text14"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:14px;line-height:1.2;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">1) Se baser sur main (canon)</text>
<text
x="92"
y="220"
class="boxText"
id="text15"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:12px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">Synchroniser le dépôt local sur le dernier état validé.</text>
<text
x="92"
y="242"
class="mono"
id="text16"
style="font-style:normal;font-variant:normal;font-weight:700;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace">git checkout main git pull --ff-only</text>
<text
x="92"
y="264"
class="small"
id="text17"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial"><tspan
class="tag tagInfo"
id="tspan16"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:10px;line-height:1;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">INFO</tspan> main est protégé : pas de commit direct.</text>
<rect
x="70"
y="300"
width="380"
height="125"
class="boxAlt"
rx="16"
id="rect17" />
<text
x="92"
y="328"
class="boxTitle"
id="text18"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:14px;line-height:1.2;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">2) Créer une branche dédiée “hotfix sync”</text>
<text
x="92"
y="350"
class="boxText"
id="text19"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:12px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">Nom explicite + date. Toute la synchro se fait ici.</text>
<text
x="92"
y="372"
class="mono"
id="text20"
style="font-style:normal;font-variant:normal;font-weight:700;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace">git checkout -b chore/step8-sync-hotfix-YYYYMMDD</text>
<text
x="92"
y="394"
class="small"
id="text21"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial"><tspan
sodipodi:role="line"
id="tspan94"
x="92"
y="394"><tspan
class="tag tagWarn"
id="tspan20"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:10px;line-height:1;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">MANUEL</tspan> Optionnel : appliquer un pack hotfix (tar/sha/rsync)</tspan><tspan
sodipodi:role="line"
id="tspan95"
x="92"
y="408.85001">si prod a bougé.</tspan></text>
<rect
x="70"
y="455"
width="380"
height="160"
class="box"
rx="16"
id="rect21" />
<text
x="92"
y="483"
class="boxTitle"
id="text22"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:14px;line-height:1.2;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">3) Appliquer les changements vérifier</text>
<text
x="72"
y="505"
class="boxText"
id="text23"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:12px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">Copier/merge les fichiers (rsync/checksum), puis tester build/dev.</text>
<text
x="92"
y="527"
class="mono"
id="text24"
style="font-style:normal;font-variant:normal;font-weight:700;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace">rm -rf .astro node_modules/.vite</text>
<text
x="92"
y="548"
class="mono"
id="text25"
style="font-style:normal;font-variant:normal;font-weight:700;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace">npm i npm run build</text>
<text
x="92"
y="569"
class="mono"
id="text26"
style="font-style:normal;font-variant:normal;font-weight:700;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace">npm run dev</text>
<text
x="92"
y="593"
class="small"
id="text27"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial"><tspan
class="tag tagOk"
id="tspan26"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:10px;line-height:1;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">OK</tspan> On ne push que si build + postbuild passent.</text>
<rect
x="70"
y="640"
width="380"
height="145"
class="boxAlt"
rx="16"
id="rect27" />
<text
x="92"
y="668"
class="boxTitle"
id="text28"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:14px;line-height:1.2;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">4) Commit propre + diff lisible</text>
<text
x="92"
y="690"
class="boxText"
id="text29"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:12px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">Inspecter, puis commiter en message clair (hotfix étape X).</text>
<text
x="92"
y="712"
class="mono"
id="text30"
style="font-style:normal;font-variant:normal;font-weight:700;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace">git status git diff</text>
<text
x="92"
y="733"
class="mono"
id="text31"
style="font-style:normal;font-variant:normal;font-weight:700;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace"><tspan
sodipodi:role="line"
id="tspan96"
x="92"
y="733">git add -A git commit -m &quot;step8: sync hotfix</tspan><tspan
sodipodi:role="line"
id="tspan97"
x="92"
y="747.84998">(SidePanel/reading)&quot;</tspan></text>
<text
x="92"
y="770"
class="small"
id="text32"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial"><tspan
class="tag tagInfo"
id="tspan31"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:10px;line-height:1;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">TIP</tspan> Garder le commit “gros” mais unique si cest un backport prod.</text>
<rect
x="70"
y="805"
width="380"
height="65"
class="box"
rx="16"
id="rect32" />
<text
x="92"
y="833"
class="boxTitle"
id="text33"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:14px;line-height:1.2;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">5) Push de branche vers Gitea</text>
<text
x="92"
y="855"
class="mono"
id="text34"
style="font-style:normal;font-variant:normal;font-weight:700;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace">git push -u origin chore/step8-sync-hotfix-YYYYMMDD</text>
<!-- Boxes: Gitea -->
<rect
x="536.38428"
y="241.13464"
width="396.0968"
height="123.86536"
class="box"
rx="16"
id="rect34" />
<text
x="572"
y="268"
class="boxTitle"
id="text35">6) Ouvrir une PR vers main</text>
<text
x="554"
y="290"
class="boxText"
id="text36"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:12px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">main protégé → PR obligatoire. Décrire : “backport hotfix prod”.</text>
<text
x="554"
y="312"
class="small"
id="text37"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial"><tspan
class="tag tagWarn"
id="tspan36"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:10px;line-height:1;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">MANUEL</tspan> Ajouter contexte : fichiers touchés, risque, checks attendus.</text>
<text
x="572"
y="334"
class="small"
id="text38"><tspan
class="tag tagInfo"
id="tspan37">INFO</tspan> La PR déclenche CI.yaml (pipeline de validation).</text>
<rect
x="538.65356"
y="396.13464"
width="389.28894"
height="135"
class="boxAlt"
rx="16"
id="rect38" />
<text
x="572"
y="423"
class="boxTitle"
id="text39">7) Review + décisions</text>
<text
x="552"
y="445"
class="boxText"
id="text40"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:12px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">Lecture diff, vérif logique, pas de secrets, pas de régressions UI.</text>
<text
x="572"
y="468"
class="small"
id="text41"><tspan
class="tag tagDanger"
id="tspan40">STOP</tspan> Si CI rouge : corriger sur la branche, push → CI relancé.</text>
<text
x="572"
y="490"
class="small"
id="text42"><tspan
class="tag tagOk"
id="tspan41">OK</tspan> Si CI vert + review OK : merge autorisé.</text>
<rect
x="537.51892"
y="548.65356"
width="390.42358"
height="138.82753"
class="box"
rx="16"
id="rect42" />
<text
x="572"
y="588"
class="boxTitle"
id="text43">8) Merge PR → main (canon)</text>
<text
x="572"
y="610"
class="boxText"
id="text44"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:12px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial"><tspan
sodipodi:role="line"
id="tspan107"
x="572"
y="610">main devient lunique source officielle.</tspan><tspan
sodipodi:role="line"
id="tspan108"
x="572"
y="626.20001">La prod se recale dessus.</tspan></text>
<text
x="572"
y="646"
class="mono"
id="text45"
style="font-style:normal;font-variant:normal;font-weight:700;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace">Merge (UI Gitea) → origin/main updated</text>
<text
x="572"
y="668"
class="small"
id="text46"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial"><tspan
class="tag tagInfo"
id="tspan45"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:10px;line-height:1;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">INFO</tspan> Optionnel : tagger une release (vX.Y / date).</text>
<rect
x="550"
y="705"
width="370"
height="145"
class="boxAlt"
rx="16"
id="rect46" />
<text
x="572"
y="733"
class="boxTitle"
id="text47">9) Préparer une release packagée</text>
<text
x="572"
y="755"
class="boxText"
id="text48"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:12px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial"><tspan
sodipodi:role="line"
id="tspan105"
x="572"
y="755">Générer un paquet de release reproductible</tspan><tspan
sodipodi:role="line"
id="tspan106"
x="572"
y="771.20001">(sources + scripts + config).</tspan></text>
<text
x="572"
y="791"
class="mono"
id="text49"
style="font-style:normal;font-variant:normal;font-weight:700;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace">./release-pack.sh</text>
<text
x="572"
y="813"
class="small"
id="text50"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial"><tspan
class="tag tagWarn"
id="tspan49"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:10px;line-height:1;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">MANUEL</tspan> Le pack sert au déploiement sur NAS (blue/green).</text>
<text
x="572"
y="835"
class="small"
id="text51"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial"><tspan
class="tag tagInfo"
id="tspan50"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:10px;line-height:1;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">TIP</tspan> Conserver checksum + manifest (traçabilité).</text>
<!-- Boxes: CI -->
<rect
x="1000"
y="260"
width="210"
height="160"
class="box"
rx="16"
id="rect51" />
<text
x="1018"
y="288"
class="boxTitle"
id="text52">CI : checks</text>
<text
x="1018"
y="310"
class="boxText"
id="text53">npm ci</text>
<text
x="1018"
y="330"
class="boxText"
id="text54">astro build</text>
<text
x="1018"
y="350"
class="boxText"
id="text55">postbuild scripts</text>
<text
x="1018"
y="370"
class="boxText"
id="text56">pagefind</text>
<text
x="1018"
y="394"
class="small"
id="text57"><tspan
class="tag tagOk"
id="tspan56">PASS</tspan> → merge autorisé</text>
<text
x="1018"
y="414"
class="small"
id="text58"><tspan
class="tag tagDanger"
id="tspan57">FAIL</tspan> → corriger branche</text>
<rect
x="1000"
y="450"
width="210"
height="105"
class="boxAlt"
rx="16"
id="rect58" />
<text
x="1018"
y="478"
class="boxTitle"
id="text59">Artefacts</text>
<text
x="1018"
y="500"
class="boxText"
id="text60">Logs + traces</text>
<text
x="1018"
y="520"
class="boxText"
id="text61">Optionnel : build artefact</text>
<text
x="1018"
y="540"
class="small"
id="text62"><tspan
class="tag tagInfo"
id="tspan61">INFO</tspan> Sert au diagnostic rapide.</text>
<!-- Boxes: NAS -->
<rect
x="1270"
y="260"
width="170"
height="155"
class="box"
rx="16"
id="rect62" />
<text
x="1288"
y="288"
class="boxTitle"
id="text63">Déploiement</text>
<text
x="1288"
y="312"
class="boxText"
id="text64">Importer release</text>
<text
x="1288"
y="332"
class="boxText"
id="text65">docker build</text>
<text
x="1288"
y="352"
class="boxText"
id="text66">web_blue / web_green</text>
<text
x="1288"
y="376"
class="boxText"
id="text67">switch proxy</text>
<text
x="1288"
y="398"
class="small"
id="text68"><tspan
class="tag tagOk"
id="tspan67">OK</tspan> rollback possible</text>
<rect
x="1270"
y="450"
width="170"
height="140"
class="boxAlt"
rx="16"
id="rect68" />
<text
x="1288"
y="478"
class="boxTitle"
id="text69">Runbook</text>
<text
x="1288"
y="500"
class="boxText"
id="text70">healthchecks</text>
<text
x="1288"
y="520"
class="boxText"
id="text71">logs</text>
<text
x="1288"
y="540"
class="boxText"
id="text72">validation UI</text>
<text
x="1288"
y="566"
class="small"
id="text73"><tspan
class="tag tagWarn"
id="tspan72">MANUEL</tspan> staging dabord</text>
<rect
x="1270"
y="640"
width="170"
height="210"
class="box"
rx="16"
id="rect73" />
<text
x="1288"
y="668"
class="boxTitle"
id="text74">Hotfix prod</text>
<text
x="1288"
y="690"
class="boxText"
id="text75">À éviter si possible</text>
<text
x="1288"
y="710"
class="boxText"
id="text76">Si nécessaire :</text>
<text
x="1288"
y="732"
class="boxText"
id="text77">pack (tar+sha)</text>
<text
x="1288"
y="754"
class="boxText"
id="text78">→ rapatrier DEV</text>
<text
x="1288"
y="778"
class="small"
id="text79"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial"><tspan
sodipodi:role="line"
id="tspan109"
x="1288"
y="778"><tspan
style="fill:#ff0000"
id="tspan111">RISK</tspan> Toujours backporter</tspan><tspan
sodipodi:role="line"
id="tspan110"
x="1288"
y="792.84998">via PR.</tspan></text>
<!-- Callout -->
<rect
x="988.19214"
y="665.28741"
width="231.68678"
height="196.73224"
class="callout"
rx="14"
id="rect79" />
<text
x="999"
y="701"
class="boxTitle"
id="text80"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:14px;line-height:1.2;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">Règle dor</text>
<text
x="999"
y="725"
class="boxText"
id="text81"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:12px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial"><tspan
sodipodi:role="line"
id="tspan98"
x="999"
y="725">Le NAS nest pas le dépôt source.</tspan><tspan
sodipodi:role="line"
id="tspan99"
x="999"
y="741.20001">Même si un hotfix a été fait en prod,</tspan></text>
<text
x="999"
y="760"
class="boxText"
id="text82"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:12px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial"><tspan
sodipodi:role="line"
id="tspan100"
x="999"
y="760">létat final “vrai” doit être : branche</tspan><tspan
sodipodi:role="line"
id="tspan101"
x="999"
y="776.20001">→ PR → CI → merge main → release</tspan><tspan
sodipodi:role="line"
x="999"
y="792.87439"
id="tspan102">→ deploy.</tspan></text>
<text
x="999"
y="812"
class="small"
id="text83"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:11px;line-height:1.35;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial"><tspan
sodipodi:role="line"
id="tspan103"
x="999"
y="812"><tspan
class="tag tagOk"
id="tspan82"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:10px;line-height:1;font-family:ui-sans-serif, system-ui, '-apple-system', 'Segoe UI', Roboto, Helvetica, Arial">BUT</tspan> Passation étape 9 = base Git propre</tspan><tspan
sodipodi:role="line"
id="tspan104"
x="999"
y="826.84998">+ reproductible.</tspan></text>
<!-- Arrows -->
<path
class="arrow"
d="m 450,222.34493 c 50,0 46.38427,58.78971 86.38427,78.78971"
id="path83"
sodipodi:nodetypes="cc" />
<path
class="arrow"
d="m 450,835 c 50,0 60,-15 100,-55"
id="path84" />
<path
class="arrow"
d="M 931.75492,299.19062 C 995.29501,300.15129 924.67474,339.65204 1000,340"
id="path85"
sodipodi:nodetypes="cc" />
<path
class="arrowSoft dashed"
d="M 888.63843,365 C 909.06203,422.26929 925.80938,435.71104 1000,500"
id="path86"
sodipodi:nodetypes="cc" />
<path
class="arrow"
d="M1210 340 C1240 340, 1245 340, 1270 340"
id="path87" />
<path
class="arrow"
d="M920 620 C980 620, 1000 620, 1080 620"
id="path88" />
<path
class="arrow"
d="m 920,620 c 60,0 311.3313,0.2118 347.7307,-236.67171"
id="path89"
sodipodi:nodetypes="cc" />
<path
class="arrowSoft dashed"
d="m 1269.652,672.90469 c -83.9636,0.6354 -155.1134,-27.51891 -348.51736,-27.76853"
id="path90"
sodipodi:nodetypes="cc" />
<!-- Footnote -->
<text
x="44"
y="916"
class="subtitle"
id="text93">
Légende : <tspan
class="tag tagInfo"
id="tspan90">INFO</tspan> invariant / contexte · <tspan
class="tag tagWarn"
id="tspan91">MANUEL</tspan> action humaine ·
<tspan
class="tag tagOk"
id="tspan92">OK</tspan> attendu · <tspan
class="tag tagDanger"
id="tspan93">STOP</tspan> bloquant.
</text>
</svg>

After

Width:  |  Height:  |  Size: 29 KiB