TL ; DR
Planification, Sources, Build, Déploiement, Tests : VSTS. Analyse : Azure VM (SonarQube), Azure SQL.
Détail de la topologie de notre industrie logicielle
Curieux de l’essayer j’ai pris du temps pour le mettre en place avec Visual Studio Team Services. Etant donné que nous utilisons un maximum des services cloud chez Negotium j’ai réalisé l’installation suivante :
Contrôle de code source : VSTS (git ou tfsvc ça n’a pas d’importance)
Système de build : build 2015 VSTS
Machine de build : fournie par VSTS en tant que service
Machine SonarQube : Ubuntu Server hébergée dans Azure
Données SonarQube : SQL Azure 10 DTU
A noter que pour faciliter la gestion de l’installation de SonarQube nous allons installer Docker sur la machine ubuntu. Une fois docker installé, nous allons hydrater deux conteneurs, nginx et sonarqube.
Pourquoi docker ? la philosophie de cet article est que les composants de traitement (sonarqube en tant que tel) sont jetables. On peut les remplacer rapidement si jamais ils venaient à cesser de fonctionner ou bien si une nouvelle version de sonarqube est disponible. Nos données vont résider dans SQL Azure.
Estimation des coûts
VSTS : gratuit car tous nos développeurs ont des comptes MSDN
Machine de build : factureé à la minute (4h offertes par mois)
Machine SonarQube : 60CAD par mois
Base de données : 5 CAD par mois
On peut voir donc que pour 65CAD par mois (prix publique), vous disposez d’une suite complète d’industrie logicielle avec planification du travail, contrôle de code source, intégration continue, tests automatisés, déploiements automatisés et analyse statique automatisée.
J’ai mis environ 1h à installer et configurer le tout de bout en bout, et je n’avais pas d’article pour me guider, ça va donc assez vite.