Description
Déployer une infrastructure avec SaltStack avec l'assurance qualité assurée dans Gitlab avec des linters, et des tests en machine virtuelle avec Kitchen et testinfra.
Pour une infrastructure complexe géré en infrastructure-as-code avec SaltStack, comment nous avons mis en place de l'assurance qualité, des tests pour faciliter l'intégration de modifications, ainsi que l'assurance que la description de l'infrastructure peux s'appliquer. Retour d’expérience de travaux effectué avec un hébergeur utilisant Salt pour sa gestion d'infrastructure et ses déploiements.
Composants exposés :
- saltstack pour décrire son infrastructure
- salt-formulas pour un déploiement de services avec du code mutualisé
- yamllint pour tester la syntaxe et les conventions du yaml
- flake8 pour le code python (pep8 compliance)
- pytest pour tester certains templates jinja
- doc8 pour tester la documentation d'infrastructure
- tox pour lancer les tests dans des environnements reproductibles
- kitchen (ruby) pour piloter le cycle de test (création machine virtuelle, application de l'état désiré, lancement des tests, destruction de la machine virtuelle)
- testinfra pour écrire des tests d'infrastructure en python
- gitlab pour lancer l'ensemble en intégration continue