Intégration continue
Construction
Aujourd'hui, deux VM par distribution de Caméléon (ie, pour un système):
- Une pour l'environnement de construction,
- et une pour un environnement d'installation et de test.
Nous avons en cible la distribution sur ces environnements linux:
- Raspbian sur Arm (raspberry pi 3) (supporté en 2.1),
- Debian 8.8 (supporté en 2.1),
- Ubuntu 16.04 (supporté en 2.1),
- Redhat (supporté en cible),
- CentOs (supporté en cible),
- ArchLinux (supporté en cible),
- Fedhora (supporté en cible).
Et ces environnements windows:
- Windows 7, 8 et 10 (supporté en 2.1).
Pour windows, nous avons besoin que 2 Vm et une seule distribution pour les 3 systèmes cibles, les versions étant compatibles.
Cela représente 8 environnements de construction et de distribution, 8 environnements de tests.
Test
Au regard du nombre d'environnements, il est nécessaire d'automatiser les tests le plus possible. Attention néanmoins, l'application étant graphique, il est impératif de conserver tous les tests d'IHM à la main d'un testeur.
Les critères d'acceptation des passages des phases alpha, beta et release doivent être préciséments définis. En contrainte, il est nécessaire de suivre les recommandations en gestion de version de shinoe: https://framagit.org/ocds/shinoe/blob/master/gdv.md
Objet de l'étude
- Choix de solution de virtualisation. Docker pour les linux? (cela pourrait nous faire merger 14 VM en une, intéressant),
- Choix de solution d'intégration continue (CI de gitlab, hudson)?
- Recommandation de mise en oeuvre et points d'attentions.