Créer un pipeline de construction automatisé pour Kotlin dans Gitlab
L’idée derrière les pipelines Gitlab est simple: définir un ensemble d’étapes pour créer et tester votre code, stocker ces étapes dans un fichier dans votre référentiel, utiliser des conteneurs Docker pour exécuter les étapes définies, et enfin, rendre compte des résultats. C’est un concept simple mais très puissant.
La capture d’écran suivante montre une section de l’énorme pipeline de construction utilisé pour créer et tester la propre base de code de Gitlab.
Remarque: Le logiciel Gitlab est open-source et hébergé sur gitlab.com. Gitlab se construit littéralement en utilisant ces pipelines.
En regardant le pipeline, vous pouvez avoir une idée de tout ce qu’il fait. Compilation de toutes sortes d’actifs, exécution de tests, génération de rapports de couverture, etc. Il y a des centaines d’étapes impliquées, réparties sur plusieurs étapes. Ils sont tous automatisés et s’exécutent tous pour chaque validation.
Comment cela peut-il vous aider?
La flexibilité des pipelines vous offre des possibilités infinies. Vous pouvez définir le conteneur Docker à utiliser, les étapes que vous souhaitez, les étapes qui conviennent à chaque étape et les commandes à exécuter pour chaque étape. Il y a toutes sortes de choses que vous pouvez automatiser. Par exemple:
- Testez votre code.
- Exécutez une analyse de code statique pour trouver des anti-modèles.
- Exécutez des vérificateurs de style pour rechercher les erreurs de style.
- Exécutez des analyses de vulnérabilité.
- Vérifiez les dépendances obsolètes.
- Validez les messages de validation pour vous assurer qu’ils respectent une norme donnée.
- Exécutez différentes étapes sur différentes branches / balises (par exemple, exécutez un script de publication spécial uniquement sur la branche principale).
- Créez et hébergez un site statique (Documentation).
- Exécutez des tests sur plusieurs moteurs de base de données pour garantir la compatibilité.
Il y en a bien d’autres. Vous pouvez lire le docs pour l’inspiration ou jetez un oeil à la exemples page.