ci: docker_tag=ext

Update 4NK Environment - Agents IA Integration
- Documentation mise à jour pour agents IA
- Scripts améliorés avec contexte agents IA
- Structure clarifiée (dépôts 4NK vs LeCoffre)
- Contexte et outillage complet pour agents IA
- README.md mis à jour avec architecture agents IA
This commit is contained in:
LeCoffre Deployment 2025-09-21 19:48:39 +00:00
parent 837701773f
commit a82b2fe520
8 changed files with 383 additions and 103 deletions

View File

@ -6,8 +6,8 @@ Respecte totalement et impérativemment les informations de ce document.
## Contexte
Consulte attentivement `lecoffre_node/IA_agents/context.md`.
Consulte attentivement `lecoffre_node/IA_agents/flux.md`.
Consulte attentivement `IA_agents/context.md`.
Consulte attentivement `IA_agents/flux.md`.
Reste toujours sur la branche git "ext"
Fait toujours les build via CI avec des images docker pour le docker registry tagées "ext"
Déclanche toujours avec un tag "ext" remplace le précédent.

103
README.md
View File

@ -1,32 +1,39 @@
# 4NK Environment
Environnement complet pour le déploiement de LeCoffre et tous ses services.
Environnement de développement centralisé pour tous les dépôts 4NK et le projet LeCoffre, incluant le contexte et l'outillage complet pour les agents IA.
## 🏗️ Architecture
### Environnement de développement centralisé avec agents IA
```
4NK_env/
├── lecoffre_node/ # Orchestrateur principal avec Nginx intégré
├── sdk_relay/ # Service de relais WebSocket
├── sdk_signer/ # Service de signature
├── sdk_storage/ # Service de stockage
├── sdk_client/ # Client SDK
├── sdk_common/ # Composants communs
├── sdk-signer-client/ # Client signeur
├── ihm_client/ # Interface utilisateur
├── lecoffre-back-mini/ # API Backend
├── lecoffre-front/ # Frontend Next.js
├── doc_api/ # Documentation API
├── IA_agents/ # Agents IA et documentation
└── scripts/ # Scripts de déploiement
├── clone-all-repos.sh # Clonage de tous les projets
4NK_env/ # Environnement de développement 4NK + Agents IA
├── lecoffre_node/ # Orchestrateur principal LeCoffre (Nginx intégré)
├── sdk_relay/ # Service de relais WebSocket 4NK
├── sdk_signer/ # Service de signature 4NK
├── sdk_storage/ # Service de stockage 4NK
├── sdk_client/ # Client SDK 4NK
├── sdk_common/ # Composants communs 4NK
├── sdk-signer-client/ # Client signeur 4NK
├── ihm_client/ # Interface utilisateur LeCoffre
├── lecoffre-back-mini/ # API Backend LeCoffre
├── lecoffre-front/ # Frontend Next.js LeCoffre
├── doc_api/ # Documentation API 4NK
├── IA_agents/ # 🧠 Agents IA - Contexte et outillage complet
│ ├── context.md # Contexte général des projets
│ ├── deploy.md # Procédures de déploiement
│ ├── flux.md # Architecture des flux
│ └── todo.md # Liste des tâches et améliorations
└── scripts/ # Scripts de gestion et déploiement
├── clone-all-repos.sh # Clonage de tous les dépôts 4NK
├── init-4nk-env-repo.sh # Initialisation du dépôt 4NK_env
└── check-repos-status.sh # Vérification du statut
├── check-repos-status.sh # Vérification du statut des dépôts
├── push-to-remote.sh # Push vers git.4nkweb.com
└── setup-complete-env.sh # Configuration complète
```
## 🚀 Déploiement
### 1. Clonage de tous les projets (branche ext)
### 1. Clonage de tous les dépôts 4NK (branche ext)
```bash
cd /home/debian/4NK_env
./scripts/clone-all-repos.sh
@ -37,12 +44,17 @@ cd /home/debian/4NK_env
./scripts/init-4nk-env-repo.sh
```
### 3. Architecture autonome
### 3. Déploiement LeCoffre (architecture autonome)
```bash
cd lecoffre_node
./scripts/deploy-autonomous.sh
```
### 4. Configuration complète de l'environnement
```bash
./scripts/setup-complete-env.sh
```
## 🌐 Services et Ports
| Service | URL | Description |
@ -63,7 +75,14 @@ cd lecoffre_node
## 🔧 Configuration
### Architecture Autonome
### Environnement de développement avec agents IA
- **Dépôts centralisés** : Tous les projets 4NK et LeCoffre dans un seul environnement
- **Branche unifiée** : `ext` pour tous les dépôts
- **Scripts de gestion** : Automatisation complète du clonage et déploiement
- **Agents IA** : Contexte et outillage complet dans IA_agents/
- **Documentation centralisée** : Toute la documentation technique accessible
### Architecture Autonome LeCoffre
- **Nginx intégré** dans le conteneur `lecoffre_node`
- **Indépendant du host** (Nginx local supprimé)
- **Configuration centralisée** dans `lecoffre_node/conf/`
@ -74,28 +93,27 @@ cd lecoffre_node
- **Loki** : Collecte et stockage des logs
- **Promtail** : Agent de collecte des logs
## 📚 Documentation
## 📚 Documentation et Agents IA
- **IA_agents/context.md** : Contexte général du projet
- **IA_agents/deploy.md** : Procédures de déploiement
- **IA_agents/flux.md** : Architecture des flux
- **lecoffre_node/README-AUTONOMOUS.md** : Architecture autonome
### Agents IA - Contexte et outillage complet (IA_agents/)
- **context.md** : Contexte général des projets 4NK et LeCoffre pour les agents IA
- **deploy.md** : Procédures de déploiement détaillées
- **flux.md** : Architecture des flux et services
- **todo.md** : Liste des tâches et améliorations à suivre
### Documentation spécifique
- **lecoffre_node/README-AUTONOMOUS.md** : Architecture autonome LeCoffre
- **doc_api/** : Documentation API 4NK
## 🛠️ Scripts Utiles
### Vérification du statut
### Gestion des dépôts
```bash
./scripts/check-repos-status.sh
```
### Clonage des projets
```bash
./scripts/clone-all-repos.sh
```
### Initialisation du dépôt
```bash
./scripts/init-4nk-env-repo.sh
./scripts/check-repos-status.sh # Vérifier le statut de tous les dépôts
./scripts/clone-all-repos.sh # Cloner tous les dépôts 4NK (branche ext)
./scripts/init-4nk-env-repo.sh # Initialiser le dépôt 4NK_env
./scripts/push-to-remote.sh # Pousser vers git.4nkweb.com
./scripts/setup-complete-env.sh # Configuration complète de l'environnement
```
## 🔐 Sécurité
@ -135,7 +153,13 @@ cd lecoffre_node
## 🔄 CI/CD
- **Branche** : `ext`
### Environnement de développement avec agents IA
- **Branche unifiée** : `ext` pour tous les dépôts
- **Dépôt central** : `4NK_env` sur git.4nkweb.com
- **Scripts automatisés** : Clonage et déploiement
- **Agents IA** : Contexte et outillage toujours à jour
### LeCoffre
- **Tag Docker** : `ext`
- **Déclenchement** : Push sur `ext`
- **Build** : Automatique via Gitea CI
@ -144,5 +168,6 @@ cd lecoffre_node
Pour toute question ou problème :
1. Vérifier les logs : `docker logs <container>`
2. Consulter la documentation : `IA_agents/`
2. Consulter la documentation des agents IA : `IA_agents/`
3. Vérifier le statut : `./scripts/check-repos-status.sh`
4. Utiliser l'outillage complet : Scripts et documentation centralisés

@ -1 +0,0 @@
Subproject commit 66479e38ceb34ed21f40272172cb060899ba1cc9

View File

@ -1,8 +1,9 @@
#!/bin/bash
set -euo pipefail
echo "🔄 SCRIPT DE CLONAGE GIT - BRANCHES EXT"
echo "======================================="
echo "🔄 SCRIPT DE CLONAGE GIT - ENVIRONNEMENT DE DÉVELOPPEMENT 4NK"
echo "Avec contexte et outillage complet pour les agents IA"
echo "====================================================="
# Fonction de logging
log() {
@ -30,9 +31,24 @@ declare -a PROJECTS=(
"IA_agents"
)
log "📋 Projets à cloner sur la branche '$BRANCH':"
log "📋 Dépôts 4NK et LeCoffre à cloner sur la branche '$BRANCH':"
echo " 🔧 Dépôts 4NK (SDK, services):"
for project in "${PROJECTS[@]}"; do
echo " - $project"
if [[ "$project" == sdk_* ]] || [[ "$project" == "doc_api" ]]; then
echo " - $project"
fi
done
echo " 🏠 Dépôts LeCoffre (applications):"
for project in "${PROJECTS[@]}"; do
if [[ "$project" == lecoffre_* ]] || [[ "$project" == "ihm_client" ]]; then
echo " - $project"
fi
done
echo " 🧠 Agents IA (contexte et outillage):"
for project in "${PROJECTS[@]}"; do
if [[ "$project" == "IA_agents" ]]; then
echo " - $project (contexte complet pour agents IA)"
fi
done
echo ""
@ -92,17 +108,40 @@ for project in "${PROJECTS[@]}"; do
echo ""
done
log "🎉 Clonage terminé !"
log "📊 Résumé des projets clonés:"
log "🎉 Clonage de l'environnement de développement terminé !"
log "📊 Résumé des dépôts clonés:"
echo ""
echo "Projets clonés sur la branche '$BRANCH':"
echo "========================================"
echo "Dépôts clonés sur la branche '$BRANCH':"
echo "======================================="
echo "🔧 Dépôts 4NK (SDK, services):"
for project in "${PROJECTS[@]}"; do
if [ -d "$project" ]; then
echo "$project"
else
echo "$project (échec)"
if [[ "$project" == sdk_* ]] || [[ "$project" == "doc_api" ]]; then
if [ -d "$project" ]; then
echo "$project"
else
echo "$project (échec)"
fi
fi
done
echo "🏠 Dépôts LeCoffre (applications):"
for project in "${PROJECTS[@]}"; do
if [[ "$project" == lecoffre_* ]] || [[ "$project" == "ihm_client" ]]; then
if [ -d "$project" ]; then
echo "$project"
else
echo "$project (échec)"
fi
fi
done
echo "🧠 Agents IA (contexte et outillage):"
for project in "${PROJECTS[@]}"; do
if [[ "$project" == "IA_agents" ]]; then
if [ -d "$project" ]; then
echo "$project (contexte complet pour agents IA)"
else
echo "$project (échec - contexte agents IA manquant)"
fi
fi
done
@ -119,7 +158,9 @@ done
echo ""
log "📝 Prochaines étapes:"
echo " 1. Vérifier que tous les projets sont sur la branche '$BRANCH'"
echo " 1. Vérifier que tous les dépôts sont sur la branche '$BRANCH'"
echo " 2. Configurer les fichiers .gitignore et .dockerignore"
echo " 3. Initialiser le dépôt 4NK_env"
echo " 4. Pousser sur git.4nkweb.com"
echo " 5. Déployer LeCoffre avec l'architecture autonome"
echo " 6. Utiliser le contexte et outillage des agents IA (IA_agents/)"

View File

@ -2,7 +2,9 @@
set -euo pipefail
echo "🚀 INITIALISATION DU DÉPÔT 4NK_ENV"
echo "================================="
echo "Environnement de développement centralisé 4NK"
echo "Avec contexte et outillage complet pour les agents IA"
echo "===================================================="
# Fonction de logging
log() {
@ -66,47 +68,47 @@ if [ ! -f "README.md" ]; then
cat > README.md << 'EOF'
# 4NK Environment
Environnement complet pour le déploiement de LeCoffre et tous ses services.
Environnement de développement centralisé pour tous les dépôts 4NK et le projet LeCoffre.
## Structure
```
4NK_env/
├── lecoffre_node/ # Orchestrateur principal
├── sdk_relay/ # Service de relais WebSocket
├── sdk_signer/ # Service de signature
├── sdk_storage/ # Service de stockage
├── sdk_client/ # Client SDK
├── sdk_common/ # Composants communs
├── sdk-signer-client/ # Client signeur
├── ihm_client/ # Interface utilisateur
├── lecoffre-back-mini/ # API Backend
├── lecoffre-front/ # Frontend Next.js
├── doc_api/ # Documentation API
4NK_env/ # Environnement de développement 4NK
├── lecoffre_node/ # Orchestrateur principal LeCoffre (Nginx intégré)
├── sdk_relay/ # Service de relais WebSocket 4NK
├── sdk_signer/ # Service de signature 4NK
├── sdk_storage/ # Service de stockage 4NK
├── sdk_client/ # Client SDK 4NK
├── sdk_common/ # Composants communs 4NK
├── sdk-signer-client/ # Client signeur 4NK
├── ihm_client/ # Interface utilisateur LeCoffre
├── lecoffre-back-mini/ # API Backend LeCoffre
├── lecoffre-front/ # Frontend Next.js LeCoffre
├── doc_api/ # Documentation API 4NK
├── IA_agents/ # Agents IA et documentation
└── scripts/ # Scripts de déploiement
└── scripts/ # Scripts de gestion et déploiement
```
## Déploiement
### Architecture autonome
### Clonage de tous les dépôts
```bash
./scripts/clone-all-repos.sh
```
### Architecture autonome LeCoffre
```bash
cd lecoffre_node
./scripts/deploy-autonomous.sh
```
### Clonage de tous les projets
```bash
./scripts/clone-all-repos.sh
```
## Services
- **LeCoffre Node** : Orchestrateur principal avec Nginx intégré
- **Bitcoin Signet** : Nœud Bitcoin pour tests
- **Monitoring** : Grafana, Loki, Promtail
- **Services SDK** : Relay, Signer, Storage
- **Applications** : Frontend, Backend, IHM Client
- **Services SDK 4NK** : Relay, Signer, Storage
- **Applications LeCoffre** : Frontend, Backend, IHM Client
## Ports
@ -135,10 +137,12 @@ else
git commit -m "ci: docker_tag=ext
Initial commit - 4NK Environment
- Configuration complète LeCoffre
- Architecture autonome avec Nginx intégré
- Scripts de déploiement
- Documentation IA_agents
- Environnement de développement centralisé 4NK
- Dépôts 4NK (SDK, services) et LeCoffre (applications)
- Contexte et outillage complet pour les agents IA
- Architecture autonome LeCoffre avec Nginx intégré
- Scripts de gestion et déploiement
- Documentation centralisée IA_agents
- Support redirections IdNot (port 3000)
- Monitoring Grafana/Loki/Promtail"
@ -176,5 +180,7 @@ echo ""
log "🚀 Prochaines étapes:"
echo " 1. Vérifier le dépôt sur git.4nkweb.com"
echo " 2. Configurer les workflows CI/CD si nécessaire"
echo " 3. Cloner les projets avec ./scripts/clone-all-repos.sh"
echo " 4. Déployer avec ./lecoffre_node/scripts/deploy-autonomous.sh"
echo " 3. Cloner tous les dépôts avec ./scripts/clone-all-repos.sh"
echo " 4. Déployer LeCoffre avec ./lecoffre_node/scripts/deploy-autonomous.sh"
echo " 5. Utiliser le contexte et outillage des agents IA (IA_agents/)"
echo " 6. Accéder aux services via les URLs configurées"

90
scripts/push-to-remote.sh Executable file
View File

@ -0,0 +1,90 @@
#!/bin/bash
set -euo pipefail
echo "🚀 PUSH DU DÉPÔT 4NK_ENV VERS GIT.4NKWEB.COM"
echo "============================================="
# Fonction de logging
log() {
echo "[$(date '+%Y-%m-%d %H:%M:%S')] $1"
}
# Configuration
BRANCH="ext"
GIT_REMOTE="git@git.4nkweb.com:4nk/4NK_env.git"
log "📋 Configuration:"
echo " Branche: $BRANCH"
echo " Remote: $GIT_REMOTE"
echo ""
# Vérifier qu'on est dans le bon répertoire
if [ ! -d ".git" ]; then
log "❌ Erreur: Vous devez être dans le répertoire 4NK_env"
exit 1
fi
# Vérifier la configuration SSH
log "🔧 Vérification de la configuration Git SSH..."
if ! ssh -T git@git.4nkweb.com 2>&1 | grep -q "successfully authenticated"; then
echo "❌ Erreur: Clé SSH non configurée pour git.4nkweb.com"
echo " Vérifiez votre configuration SSH et vos clés"
exit 1
fi
log "✅ Clé SSH configurée"
# Vérifier le remote
current_remote=$(git remote get-url origin 2>/dev/null || echo "Non configuré")
log "🔗 Remote actuel: $current_remote"
if [ "$current_remote" != "$GIT_REMOTE" ]; then
log "🔧 Configuration du remote origin..."
git remote set-url origin "$GIT_REMOTE"
log "✅ Remote origin configuré"
fi
# Vérifier le statut
log "📊 Statut du dépôt:"
git status --short
# Ajouter tous les fichiers
log "📁 Ajout des fichiers..."
git add .
# Vérifier s'il y a des changements
if git diff --staged --quiet; then
log " Aucun changement à committer"
else
log "💾 Commit des modifications..."
git commit -m "ci: docker_tag=ext
Update 4NK Environment
- Scripts de déploiement et gestion
- Configuration autonome LeCoffre Node
- Documentation complète
- Support redirections IdNot"
log "✅ Commit créé"
fi
# Pousser vers le dépôt distant
log "🚀 Push vers le dépôt distant..."
if git push origin "$BRANCH"; then
log "✅ Push réussi vers git.4nkweb.com"
log "🔗 Dépôt disponible: $GIT_REMOTE"
else
log "❌ Échec du push"
log "💡 Vérifiez que le dépôt '4NK_env' existe sur git.4nkweb.com"
log " et que vous avez les droits d'écriture"
exit 1
fi
echo ""
log "🎉 Dépôt 4NK_env poussé avec succès!"
log "📊 Résumé:"
echo " ✅ Dépôt local synchronisé"
echo " ✅ Branche '$BRANCH' poussée"
echo " ✅ Tous les fichiers inclus"
echo ""
log "🔗 URL du dépôt: $GIT_REMOTE"
log "📝 Branche: $BRANCH"

119
scripts/setup-complete-env.sh Executable file
View File

@ -0,0 +1,119 @@
#!/bin/bash
set -euo pipefail
echo "🎯 CONFIGURATION COMPLÈTE DE L'ENVIRONNEMENT 4NK"
echo "Avec contexte et outillage complet pour les agents IA"
echo "===================================================="
# Fonction de logging
log() {
echo "[$(date '+%Y-%m-%d %H:%M:%S')] $1"
}
log "🚀 Démarrage de la configuration complète..."
echo ""
# Étape 1: Vérification du statut actuel
log "📊 ÉTAPE 1: Vérification du statut actuel"
echo "========================================"
./scripts/check-repos-status.sh
echo ""
# Étape 2: Clonage des projets manquants (optionnel)
log "📦 ÉTAPE 2: Clonage des projets (optionnel)"
echo "=========================================="
echo "💡 Si des projets sont manquants ou pas sur la branche 'ext',"
echo " exécutez: ./scripts/clone-all-repos.sh"
echo ""
# Étape 3: Vérification de l'initialisation Git
log "🔧 ÉTAPE 3: Vérification de l'initialisation Git"
echo "==============================================="
if [ -d ".git" ]; then
current_branch=$(git branch --show-current 2>/dev/null || echo "N/A")
log "✅ Dépôt Git initialisé (branche: $current_branch)"
else
log "⚠️ Dépôt Git non initialisé"
log "💡 Exécutez: ./scripts/init-4nk-env-repo.sh"
fi
echo ""
# Étape 4: Vérification des fichiers de configuration
log "📄 ÉTAPE 4: Vérification des fichiers de configuration"
echo "===================================================="
files=(".gitignore" ".dockerignore" "README.md")
for file in "${files[@]}"; do
if [ -f "$file" ]; then
log "$file présent"
else
log "$file manquant"
fi
done
echo ""
# Étape 5: Vérification des scripts
log "🛠️ ÉTAPE 5: Vérification des scripts"
echo "===================================="
scripts=("clone-all-repos.sh" "init-4nk-env-repo.sh" "check-repos-status.sh" "push-to-remote.sh")
for script in "${scripts[@]}"; do
script_path="scripts/$script"
if [ -f "$script_path" ] && [ -x "$script_path" ]; then
log "$script présent et exécutable"
else
log "$script manquant ou non exécutable"
fi
done
echo ""
# Étape 6: Résumé des actions
log "📋 ÉTAPE 6: Résumé des actions disponibles"
echo "========================================"
echo ""
echo "🔧 Scripts de gestion:"
echo " ./scripts/check-repos-status.sh - Vérifier le statut des dépôts"
echo " ./scripts/clone-all-repos.sh - Cloner tous les projets (branche ext)"
echo " ./scripts/init-4nk-env-repo.sh - Initialiser le dépôt 4NK_env"
echo " ./scripts/push-to-remote.sh - Pousser vers git.4nkweb.com"
echo ""
echo "🚀 Déploiement:"
echo " cd lecoffre_node"
echo " ./scripts/deploy-autonomous.sh - Déployer l'architecture autonome"
echo ""
echo "📚 Documentation et Agents IA:"
echo " README.md - Documentation principale"
echo " IA_agents/ - Contexte et outillage complet pour agents IA"
echo ""
# Étape 7: Instructions finales
log "🎯 ÉTAPE 7: Instructions finales"
echo "==============================="
echo ""
echo "📝 Pour finaliser la configuration:"
echo ""
echo "1. 🔗 Créer le dépôt '4NK_env' sur git.4nkweb.com:"
echo " - Connectez-vous à git.4nkweb.com"
echo " - Créez un nouveau dépôt '4NK_env' dans l'organisation '4nk'"
echo " - Initialisez avec un README"
echo ""
echo "2. 📤 Pousser le dépôt local:"
echo " ./scripts/push-to-remote.sh"
echo ""
echo "3. 🚀 Déployer l'architecture autonome:"
echo " cd lecoffre_node"
echo " ./scripts/deploy-autonomous.sh"
echo ""
echo "4. 🌐 Accéder aux services:"
echo " - Status: http://localhost/status/"
echo " - Grafana: http://localhost/grafana/"
echo " - LeCoffre: http://localhost/lecoffre/"
echo " - IdNot: http://local.4nkweb.com:3000/"
echo ""
echo "5. 🧠 Utiliser les agents IA:"
echo " - Contexte complet: IA_agents/context.md"
echo " - Procédures: IA_agents/deploy.md"
echo " - Architecture: IA_agents/flux.md"
echo " - Tâches: IA_agents/todo.md"
echo ""
log "✅ Configuration de l'environnement 4NK terminée!"
log "🎉 Tous les scripts et fichiers sont prêts"