docs: README d'automatisation SSH complet
Some checks failed
CI/CD Pipeline / test (push) Failing after 25s
CI/CD Pipeline / security (push) Has been skipped
CI/CD Pipeline / integration-test (push) Has been skipped

This commit is contained in:
Nicolas Cantu 2025-08-25 17:00:20 +02:00
parent 4a5fdbed90
commit 48315fa755

142
README_SSH_AUTO.md Normal file
View File

@ -0,0 +1,142 @@
# 🔑 Automatisation SSH pour ihm_client
## 🚀 Démarrage rapide
### Initialisation automatique
```bash
./scripts/init-ssh-env.sh
```
### Push automatique
```bash
# Push rapide
./scripts/auto-ssh-push.sh quick
# Push avec message
./scripts/auto-ssh-push.sh message "feat: nouvelle fonctionnalité"
# Alias Git
git quick-push
git ssh-push "Mon message"
```
## 📋 Fonctionnalités
**Configuration SSH automatique** - Plus besoin de configurer SSH manuellement
**Push automatique** - Ajout, commit et push en une commande
**Alias Git** - Commandes raccourcies pour les push
**Vérification SSH** - Test automatique de la connexion SSH
**Gestion des branches** - Support des branches personnalisées
**Workflow CI/CD** - Intégration avec Gitea Actions
## 🛠️ Scripts disponibles
### `scripts/init-ssh-env.sh`
Script d'initialisation complet de l'environnement SSH :
- Configuration Git pour SSH
- Vérification des clés SSH
- Test de connexion SSH
- Configuration des alias Git
- Vérification des remotes
### `scripts/auto-ssh-push.sh`
Script de push automatique avec plusieurs modes :
- `quick` - Push rapide avec message automatique
- `message "texte"` - Push avec message personnalisé
- `branch nom-branche` - Push sur une branche spécifique
- `merge source target` - Push et préparation merge
- `status` - Status et push conditionnel
### `scripts/setup-ssh-ci.sh`
Script de configuration SSH pour CI/CD :
- Configuration SSH pour Gitea Actions
- Support des variables d'environnement
- Test de connexion SSH
## 🔧 Alias Git
### `git quick-push`
Push rapide avec message automatique :
```bash
git quick-push
```
### `git ssh-push "message"`
Push avec message personnalisé :
```bash
git ssh-push "feat: nouvelle fonctionnalité"
```
## 📚 Documentation complète
- **[Documentation SSH](docs/SSH_SETUP.md)** - Configuration SSH détaillée
- **[Documentation Push Auto](docs/AUTO_SSH_PUSH.md)** - Guide complet des push automatiques
## 🎯 Workflow recommandé
### Développement quotidien
```bash
# 1. Faire vos modifications
# 2. Push rapide
./scripts/auto-ssh-push.sh quick
```
### Développement de fonctionnalités
```bash
# 1. Créer une branche
git checkout -b feature/nouvelle-fonctionnalite
# 2. Développer
# 3. Push sur la branche
./scripts/auto-ssh-push.sh branch feature/nouvelle-fonctionnalite
# 4. Préparer le merge
./scripts/auto-ssh-push.sh merge feature/nouvelle-fonctionnalite main
```
## 🔍 Dépannage
### Vérifier la configuration SSH
```bash
ssh -T git@git.4nkweb.com
```
### Reconfigurer l'environnement
```bash
./scripts/init-ssh-env.sh
```
### Vérifier les remotes
```bash
git remote -v
```
## 🚨 Problèmes courants
### Échec d'authentification SSH
```bash
# Générer une nouvelle clé SSH
ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519_4nk
# Ajouter à l'agent SSH
ssh-add ~/.ssh/id_ed25519_4nk
# Ajouter la clé publique à Gitea
cat ~/.ssh/id_ed25519_4nk.pub
```
### Configuration Git manquante
```bash
# Reconfigurer Git pour SSH
git config --global url."git@git.4nkweb.com:".insteadOf "https://git.4nkweb.com/"
```
## 🎉 Résultat
L'automatisation SSH élimine complètement la nécessité de :
- Configurer manuellement SSH pour chaque push
- Saisir des mots de passe
- Gérer les URLs HTTPS vs SSH
- Configurer les remotes manuellement
**Tous les push utilisent maintenant automatiquement SSH !** 🚀