Cas pratique : automatisation du paramétrage d’une suite de tests
Maintenant que nous avons fait le tour de nombreuses techniques assez avancées du Bash, tentons de les mettre en pratique au sein d’un exemple aussi détaillé et concret que possible.
Bienvenue sur la base documentaire des Éditions Diamond !
Sustain Developer - Red Hat
Après sa formation d’ingénieur à l’ESME Sudria en 2005, où il a aussi enseigné à temps partiel jusqu’en 2012, Romain Pelisse mit l’Open Source et le logiciel libre au centre de sa carrière. Après dix ans de consulting autour des technologies Java (JBoss et son écosystème) et Linux, d’abord chez Atos Origin puis chez Red Hat, il rejoint le département R&D et l’équipe de maintenance logicielle autour de JBoss EAP.
Au-delà de ses contributions dans le monde Java (notamment sur les projets Wildfly, PMD et Bugclerk), Romain est aussi passionné par Linux, Git, Ansible et Bash, qui sont des sujets récurrents de ses articles dans GNU/Linux Magazine.
Maintenant que nous avons fait le tour de nombreuses techniques assez avancées du Bash, tentons de les mettre en pratique au sein d’un exemple aussi détaillé et concret que possible.
Le précédent article de notre hors-série a évoqué en détail l’utilitaire sed. Nous allons maintenant nous intéresser à un outil similaire, mais surtout complémentaire, nommé awk. Celui-ci, à l’image de sed, permet aussi une manipulation du flux de données, mais propose une approche et une syntaxe très différentes. Comme le lecteur le comprendra rapidement, awk est un outil tout aussi puissant, dont les fonctionnalités s’ajoutent avec harmonie à celles de sed.
Peu avant la fin de la rédaction de ce hors-série, un collègue, développeur depuis aussi longtemps que moi et certainement bien meilleur que moi en programmation Java, m’a demandé de l’aider à mettre en place une tâche de construction sur notre serveur d’intégration continue.
Comme le précédent article l’a rappelé, on peut facilement obtenir de nombreuses informations à l’aide de nombreux utilitaires disponibles sur un système « Unix ». Ces informations sont généralement fournies dans un format texte, souvent complet, mais quelque peu « brut ». Cet article va donc introduire l’une des commandes les plus puissantes du Shell : l’éditeur de flux de données à la volée sed.
Il existe de nombreux exemples d’utilisation de Docker pour la mise en place de systèmes relativement simples, exécutant en général un seul et unique service. Néanmoins, l’ingénieur logiciel expérimenté sait bien que les déploiements en production restent rarement aussi simples et épurés que leur version initiale. La question de la gestion et maintenance d’une image Docker se pose donc rapidement, avec celle de la limite des capacités de configuration associées au format « Dockerfile »...
Les scripts Shell, et Bash en particulier, sont partout. Ils sont un élément essentiel de toute distribution Linux, mais aussi derrière de nombreuses automatisations, souvent critiques dans la mise en place comme dans la conception et gestion d’environnements « Cloud ». Ce rôle essentiel a incité de nombreux acteurs de l’industrie à revoir leur manière de créer leurs scripts, mais aussi d’améliorer leur industrialisation par le développement et l’utilisation d’outillage de génie logiciel dédié à ces derniers. Tour d’horizon de tout ceci dans cet article…