L'idée du DevOps, c'est de rapprocher les équipes de développement des équipes opérationnelles qui exploitent les serveurs. Il s’agit d'arriver à faire en sorte que ce petit monde fonctionne mieux et qu'on joigne les deux univers qui, historiquement, étaient très séparés avec d’un côté les développeurs qui produisaient et livraient du code, et de l’autre les équipes infra qui l’exécutaient.
Aujourd’hui le DevOpsEnsemble de techniques permettant l'intégration, les tests et le déploiement d'une application. peut être à la fois un ensemble de bonnes pratiques, un poste, un service et une philosophie.
Pour retrouver tous nos conseils pour se lancer dans le DevOps
En ajoutant la notion de sécurité, on arrive au DevSecOps, une branche à part entière du DevOps qui se penche sur l’automatisation et les vérification d’intégrations des app.
Les nouveaux outils comme Sonar permettent d’avoir des briques supplémentaires pour vérifier la propreté du code, son optimisation, etc.
L’idée : s’appuyer sur la chaine d’intégration pour ajouter des contrôles de sécurité.
Le DevOps n’est pas un outil mais des références et plateformes intègrent des fonctionnalités qui vont aider à faire vivre cette philosophie qui reste très ouverte.
Attention, elles n’ont pas toute le même périmètre. Contrairement aux langages de programmation, il serait impossible de les comparer point par point.
GitLab
GitLabGitLab, c’est une plateforme permettant d’héberger et de gérer des projets web de A à Z. est l’un des leaders du secteur, celui qui utilise chez AXOPEN !
L’outil permet de déposer entre autre son code et le versionner.
Depuis quelques années, il s’est enrichi avec des fonctionnalités DevOps : compilation du code et déploiement avec CI/CDProcessus d'automatisation : Intégration Continue et Déploiement Continu …
Il est possible d'utiliser Docker dans vos pipelines CI/CD ce qui permet l'utilisation d'un grand nombre d'outils tel que Sonar pour ne citer que le plus connu.
Le défaut selon nous n’est pas des moindre. GitLab n’est pas facile d’accès. Pour un novice, il est difficile de comprendre la configuration des runners et les fichiers YAML. La marche d’entrée est haute mais facile à répliquer. À la clé : un gros gain de temps.
Attention, il y a souvent des mises à jour à faire !
Jenkins
Jenkins propose une autre approche du DevOps.
Il s’agit d’un projet open source qui date de 2011.
Attention, Jenkins est une plateforme qui n’est pas toujours très stable à cause des plugins.
Contrairement à GitLab et aux autres outils, Jenkins ne permet pas de versioning de code mais simplement de faire des pipelines d’intégration et de déploiement avec une gestion des différents agents.
Est-ce une faiblesse ? Pas forcément. C’est même parfois un avantage pour avoir tout au même endroit, au prix d’un peu de configuration
Attention avec Groovy langage compilé propre à Jenkins : tant qu’on a pas lancé la pipeline, on ne sait pas si ça va marcher… Impatients s’abstenir !
Azure DevOps
AzureAzure est la plateforme de Cloud de Microsoft. DevOps est un outil qui fonctionne en mode SaaS. De fait, l’outil intègre plus facilement des services Azure.
Sa philosophie est d’ajouter plein d’outils pour coller à l’agilité : Kanban, gestionnaire de tickets…
A notre sens, c’est le plus simple pour démarrer une démarche DevOps.
C’est la plateforme qui a racheté GitHub, dont nous parlons juste après !
GitHub
Lancé en 2018, GitHub est l’un des plus importants gestionnaires de sources qui hébergement des tas de projets open source, dont de très gros !
Le principal avantage de GitHub : l’outil est très bien intégré et rassemble une communauté nombreuse.
Parti après les autres, GitHub rattrape son retard petit à petit en misant sur la communauté. En effet, il existe un marketplace sur lequel il est possible de partager ces scripts de CI/CD. Avec près de 20 000 scripts écrits par la communauté, vous devrez trouver votre bonheur.
Il est possible d’utiliser plusieurs outils en même temps comme GitLab et Jenkins.
Une chose est sûre, les tests de pipeline ne sont pas toujours une partie de plaisir. Sans maîtriser ce qu’on fait, le DevOps et les pipelines peuvent être une grande perte de temps car une pipeline compliquée peut durer plusieurs dizaines de minutes.
Alors, comment choisir sa plateforme DevOps ?
Tout va dépendre de la typologie de projet
Faites également attention à la tarification : souvent c’est à l’usage de l’outil mais cela peut être également à la minute avec le CI/CD et ça peut devenir très cher, très vite/
Pour débuter, nous vous conseillons la lecture de notre article dédié.
Pour auditer votre système d’information, nous pouvons également vous aider.
Pour échanger sur ce vaste sujet, n’hésitez pas à nous contacter !
Le DevOps n’est pas un outil mais des références et plateformes intègrent des fonctionnalités qui vont aider à faire vivre cette philosophie qui reste très ouverte. Dans cet article, on compare Azure DevOps, GitLab, Jenkins, GitHub !
Lors du développement d’application JSF sur JBoss 7, ce type d’erreur bien particulier peut arriver. Nous allons voir comment y remédier.
Les audits de code source font partie de notre expertise. À force de relire des codes, nous voyons des erreurs qui reviennent invariablement, impactant la performance, la sécurité et la qualité des applications. Voici les 5 principales !