Python 33.5%
JavaScript 30.1%
TypeScript 25%
CSS 10%
Shell 1.4%
1#!/bin/bash2# Auteur : Simon-Pierre Boucher — contact@spboucher.ai3# ka-ui/kaid/sync-kaid.sh — redistribue le client KA ID v2 dans les apps,4# directement SUR LES NŒUDS (remote-first). À lancer depuis M3U96a.5# kaid.py → paquet backend de l'app (louka/, jobka/, …)6# ka-id.js → frontend/public/ ET frontend/dist/ (si présents)7# Usage : ./sync-kaid.sh [app…] (défaut : toutes)8# Rebuild frontend + pm2 restart requis par app ensuite.9set -uo pipefail10cd "$(dirname "$0")"1112# app|node|dir_paquet_backend|dir_frontend (public/dist relatifs à celui-ci)13MAP="14lou-ka|M3U96b|~/apps/lou-ka/louka|~/apps/lou-ka/frontend15crea-ka|M3U96b|~/apps/crea-ka/creaka|~/apps/crea-ka/frontend16resto-ka|M3U96b|~/apps/resto-ka/restoka|~/apps/resto-ka/frontend17immo-ka|M4M64a|~/apps/immo-ka/immoka|~/apps/immo-ka/frontend18fabri-ka|M4M64a|~/fabri-ka/fabrika|~/fabri-ka/frontend19auto-ka|M4M64b|~/auto-ka/autoka|~/auto-ka/frontend20food-ka|M4M64b|~/apps/food-ka/foodka|~/apps/food-ka/frontend21sorti-ka|M3U96a|~/apps/sorti-ka/sortika|~/apps/sorti-ka/frontend22job-ka|M3U96a|~/apps/job-ka/jobka|~/apps/job-ka/frontend23"2425only=("$@")26for line in $MAP; do27 IFS='|' read -r app node pkg front <<<"$line"28 if [ ${#only[@]} -gt 0 ]; then29 case " ${only[*]} " in *" $app "*) ;; *) continue ;; esac30 fi31 echo "→ $app ($node)"32 if [ "$node" = "M3U96a" ]; then33 cp kaid.py "${pkg/#\~/$HOME}/" &&34 for d in public dist .; do35 dir="${front/#\~/$HOME}/$d"36 [ -d "$dir" ] && cp ka-id.js "$dir/" && echo " ka-id.js → $d"37 done38 else39 scp -q kaid.py "$node:$pkg/" &&40 ssh "$node" "for d in public dist .; do41 [ -d $front/\$d ] && cp /tmp/ka-id.js.$$ $front/\$d/ 2>/dev/null; done" 2>/dev/null42 scp -q ka-id.js "$node:/tmp/ka-id.js.$$" &&43 ssh "$node" "for d in public dist; do44 [ -d $front/\$d ] && cp /tmp/ka-id.js.$$ $front/\$d/ka-id.js && echo \" ka-id.js → \$d\"; done;45 [ -f $front/index.html ] && cp /tmp/ka-id.js.$$ $front/ka-id.js && echo ' ka-id.js → frontend/';46 rm -f /tmp/ka-id.js.$$"47 fi48 echo " ok"49done50echo "Terminé. Intégration par app : voir kaid/README-KAID.md."51