docs: Ajout de la Phase 6 - Publication sur Gitea

- Étapes détaillées pour créer tags Git et releases Gitea
- Utilisation de l'outil CLI 'tea' pour la gestion des releases
- Commande complète avec upload de tous les assets en une fois
- Procédures de vérification et correction (ajout/suppression assets)
- Section 'Commandes tea utiles' avec exemples pratiques
- Mise à jour du résumé du workflow (16 étapes au total)
This commit is contained in:
Pierre Marx
2025-10-21 15:03:14 -04:00
parent 6b13d5be51
commit 6247888770

View File

@@ -195,9 +195,98 @@ git push origin main
--- ---
## Phase 6 : Déploiement (optionnel) ## Phase 6 : Publication sur Gitea
### 13. Déployer sur le serveur de production ### 13. Créer le tag Git
```bash
# Trouver le commit de release
git log --oneline --grep="X.X.X" -5
# Créer le tag annoté
git tag -a vX.X.X <commit-hash> -m "Release vX.X.X - Titre court
Description des principales fonctionnalités
- Fonctionnalité 1
- Fonctionnalité 2
- Correction 1"
```
### 14. Push du tag vers Gitea
```bash
git push origin vX.X.X
```
### 15. Créer la release sur Gitea avec l'outil `tea`
**Prérequis** : S'assurer que `tea` est configuré avec le login `simpleconnect`
```bash
# Vérifier la configuration tea
tea login list
# Créer la release avec tous les fichiers binaires
tea release create \
--login simpleconnect \
--repo pierre/SimpleConnect-client-electron \
--tag vX.X.X \
--title "SimpleConnect vX.X.X - Titre de la release" \
--note-file releases/vX.X.X.md \
--asset dist/vX.X.X/SimpleConnect-X.X.X.AppImage \
--asset dist/vX.X.X/SimpleConnect-X.X.X-arm64.dmg \
--asset dist/vX.X.X/SimpleConnect-X.X.X-arm64-mac.zip
```
**Notes importantes** :
- L'option `--note-file` utilise le fichier markdown des notes de release
- On peut spécifier plusieurs `--asset` pour uploader tous les binaires en une fois
- Le code source (TAR.GZ et ZIP) est ajouté automatiquement par Gitea
### 16. Vérifier la release sur Gitea
```bash
# Lister toutes les releases
tea release list --login simpleconnect --repo pierre/SimpleConnect-client-electron
# Vérifier les assets d'une release spécifique
tea release assets --login simpleconnect --repo pierre/SimpleConnect-client-electron vX.X.X
```
**Résultat attendu** :
- ✅ SimpleConnect-X.X.X.AppImage (Linux x64)
- ✅ SimpleConnect-X.X.X-arm64.dmg (macOS)
- ✅ SimpleConnect-X.X.X-arm64-mac.zip (macOS)
- ✅ Code source (TAR.GZ et ZIP automatiques)
### 17. Ajouter des assets manquants (si nécessaire)
Si des fichiers ont été oubliés ou doivent être ajoutés après coup :
```bash
tea release assets create \
--login simpleconnect \
--repo pierre/SimpleConnect-client-electron \
vX.X.X \
dist/vX.X.X/fichier-supplementaire.ext
```
### 18. Supprimer des assets en doublon (si nécessaire)
```bash
tea release assets delete \
--login simpleconnect \
--repo pierre/SimpleConnect-client-electron \
--confirm \
vX.X.X \
nom-du-fichier.ext
```
---
## Phase 7 : Déploiement sur serveur (optionnel)
### 19. Déployer sur le serveur de production
```bash ```bash
scp dist/vX.X.X/SimpleConnect-X.X.X.AppImage user@server:/path/to/app/ scp dist/vX.X.X/SimpleConnect-X.X.X.AppImage user@server:/path/to/app/
@@ -205,7 +294,7 @@ scp dist/vX.X.X/SimpleConnect-X.X.X.AppImage user@server:/path/to/app/
--- ---
## Résumé du workflow ## Résumé du workflow complet
``` ```
1. git checkout -b feature/XXX 1. git checkout -b feature/XXX
@@ -219,9 +308,46 @@ scp dist/vX.X.X/SimpleConnect-X.X.X.AppImage user@server:/path/to/app/
5. Commit de release 5. Commit de release
6. Merger dans main (--no-ff) 6. Merger dans main (--no-ff)
7. Push 7. Push
8. Build 8. Build des exécutables
9. Organiser dist/ 9. Organiser dist/vX.X.X/
10. Notes de release 10. Notes de release
11. Commit + push docs 11. Commit + push docs
12. Déployer (optionnel) 12. Créer tag Git
13. Push tag vers Gitea
14. Créer release sur Gitea avec tea
15. Vérifier assets sur Gitea
16. Déployer sur serveur (optionnel)
```
---
## Commandes `tea` utiles
### Gestion des logins
```bash
tea login list # Lister les logins configurés
tea login add # Ajouter un nouveau login
tea login default <nom> # Définir un login par défaut
```
### Gestion des releases
```bash
tea release list --login simpleconnect --repo pierre/SimpleConnect-client-electron
tea release create --help
tea release edit vX.X.X --title "Nouveau titre"
tea release delete vX.X.X --confirm
```
### Gestion des assets
```bash
tea release assets list vX.X.X
tea release assets create vX.X.X fichier.ext
tea release assets delete vX.X.X fichier.ext --confirm
```
### Options globales
```bash
--login simpleconnect # Utiliser le login 'simpleconnect'
--repo pierre/SimpleConnect-client-electron # Spécifier le repository
--output json # Format de sortie (simple, table, json, yaml)
``` ```