Bash, les bonnes pratiques

Magazine
Marque
GNU/Linux Magazine
Numéro
192
Mois de parution
avril 2016
Domaines


Résumé
À l'heure du DevOps et de l'« infrastructure as code », la conception de scripts Bash est loin d'avoir disparu, comme certains le pensaient il y a quelques années. Avec des besoins d'automatisation de plus en plus présents, mais aussi de plus en plus souvent placés entre les mains de développeurs plutôt que d'administrateurs système, de nombreux scripts sont produits, et jouent des rôles toujours plus critiques dans la maintenance des systèmes.Mais, paradoxalement, si ces développeurs sont souvent des experts sur leur langage de programmation, qu'il s'agisse de Java, C# ou autre Python, ils semblent souvent comme frappés d'amnésie quand ils implémentent leurs scripts Bash ! En fait, si la syntaxe de ce dernier est très permissive, et ses mécanismes d'interprétation très différents d'un langage de programmation dit « traditionnel », il n'en offre pas moins de nombreuses techniques et pratiques pour en assurer une exécution propre, saine et fiable – pourtant peu utilisées. Démonstration.


Cet article couvre un ensemble de bonnes pratiques et de techniques à utiliser lors de la conception de scripts Bash, pour leur assurer une exécution fiable et robuste.

Les scripts shell (Bash ou autres d'ailleurs) sont partout. On en trouve un peu à toutes les sauces, et dans l'ensemble, ils ne sont que rarement irréprochables, même du point de vue strictement technique. Cependant, ils font la plupart du temps le travail qu'on leur demande, et, s'ils n'y parviennent pas, on se contente généralement de les exécuter une nouvelle fois plutôt que de chercher à les rendre plus « imperméables » aux erreurs.

Leur manque de robustesse, de propreté ou même de certaines fonctionnalités n'est jamais réellement un problème, car ils ne sont que rarement exécutés. Généralement uniquement au démarrage d'une machine ou d'un serveur, ou même parfois encore plus rarement – par exemple lors d'une installation.

Dans ce genre de contexte, s'ils ne s'exécutent pas correctement,...

Cet article est réservé aux abonnés. Il vous reste 95% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Déploiements reproductibles dans le temps avec GNU Guix

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
113
Mois de parution
mars 2021
Domaines
Résumé

Pour la recherche scientifique comme pour d'autres domaines, on a souvent besoin de reproduire un environnement logiciel à l'identique non seulement sur différentes machines, mais aussi à différents instants dans le temps. Docker et les machines virtuelles, qui sont souvent la solution choisie pour répondre à ce besoin, ont des limitations qu’il est facile de ne pas voir. Cet article illustre l’utilisation de GNU Guix pour des déploiements reproductibles, au bit près, dans l’espace et dans le temps.

Générer et manipuler des images ISO

Magazine
Marque
Linux Pratique
Numéro
124
Mois de parution
mars 2021
Domaines
Résumé

Quand bien même leur usage s’est quelque peu atténué au profit d’autres supports de stockage de masse depuis plusieurs années, les CD-ROM et autres DVD-ROM ont toujours une utilité en 2020 : stockage de données, création de disques bootables (pour distributions GNU/Linux entre autres), disques multimédias... S’il est vrai que sa durée de vie a été surestimée à une époque (peut-être pour favoriser son utilisation), la bonne vieille galette n’est pas encore morte, et il lui reste encore de beaux jours à vivre.

Gérez vos projets Git en mode graphique avec GitKraken

Magazine
Marque
Linux Pratique
Numéro
124
Mois de parution
mars 2021
Domaines
Résumé

Je vous ai précédemment présenté GitLab [0], une forge logicielle utilisant Git vous permettant une gestion globale de vos projets en équipe. Comme nous l’avions vu, une connaissance minimale de Git était nécessaire pour l’utilisation de GitLab. Certains de vos collaborateurs ne sont peut-être pas à l’aise avec la ligne de commandes, ne veulent tout simplement pas l’utiliser ou encore ne veulent pas apprendre la syntaxe des commandes Git. GitKraken [1] est fait pour eux. Il leur permettra de réaliser toutes les opérations Git à l’aide d’une interface graphique.

Le DevOps en pratique

Magazine
Marque
Linux Pratique
Numéro
124
Mois de parution
mars 2021
Domaines
Résumé

Aujourd’hui, le terme DevOps est au cœur de la transformation digitale. En effet, lorsqu’on évoque l’agilité dans le cycle de vie de développement logiciel, on est amené à pratiquer des méthodologies permettant d’accélérer d’une part le processus de développement et de fiabiliser la production logicielle d’un autre côté. Parmi ces méthodologies (Scrum, Kanban…), le DevOps est certainement celle qui a été adopté par la plupart des entreprises ayant comme activité principale ou annexe, la digitalisation de leur système d’information pour faire face au défi que représente l’essor des technologies numériques. Dans cet article, nous ferons un premier tour d’horizon de la partie outillage du DevOps. Il existe une panoplie d’outils et il est impossible de les évoquer tous dans un seul article, car chaque outil nécessiterait un ouvrage à part entière.