[{"data":1,"prerenderedAt":769},["ShallowReactive",2],{"/fr-fr/blog/gitlab-flow-duo":3,"navigation-fr-fr":41,"banner-fr-fr":446,"footer-fr-fr":456,"blog-post-authors-fr-fr-Cesar Saavedra":666,"blog-related-posts-fr-fr-gitlab-flow-duo":680,"assessment-promotions-fr-fr":722,"next-steps-fr-fr":760},{"id":4,"title":5,"authorSlugs":6,"body":8,"categorySlug":9,"config":10,"content":14,"description":8,"extension":27,"isFeatured":12,"meta":28,"navigation":29,"path":30,"publishedDate":20,"seo":31,"stem":35,"tagSlugs":36,"__hash__":40},"blogPosts/fr-fr/blog/gitlab-flow-duo.yml","Gitlab Flow Duo",[7],"cesar-saavedra",null,"ai-ml",{"slug":11,"featured":12,"template":13},"gitlab-flow-duo",false,"BlogPost",{"title":15,"description":16,"authors":17,"heroImage":19,"date":20,"body":21,"category":9,"tags":22,"updatedDate":26},"GitLab Flow et GitLab Duo : le combo gagnant pour un workflow puissant","Tirez parti de workflows DevSecOps plus productifs et puissants en combinant GitLab Flow et GitLab Duo au sein de votre cycle de développement logiciel.",[18],"Cesar Saavedra","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662840/Blog/Hero%20Images/ai-experiment-stars.png","2023-07-27","Adopter une approche DevSecOps nécessite de bien réfléchir au workflow qui sera utilisé. Si cette étape peut parfois représenter un défi de taille, GitLab Flow et GitLab Duo sont là pour vous simplifier la tâche :\n\n__GitLab Flow__ est l'approche préconisée pour accompagner les entreprises dans la mise en œuvre réussie de leurs processus DevSecOps. __GitLab Duo__, quant à lui, offre un [ensemble de fonctionnalités alimentées par l'IA](https://about.gitlab.com/blog/supercharge-productivity-with-gitlab-duo/), intégré à la plateforme DevSecOps de GitLab. Il aide les équipes de développement à coder plus efficacement, optimise le cycle de développement logiciel et garantit une livraison de logiciels plus sécurisés.\nEn associant __GitLab Flow__ et __GitLab Duo__, les entreprises peuvent améliorer considérablement l'intégralité de leur workflow, augmenter davantage leur productivité, la fréquence de leurs déploiements, la qualité du code et la sécurité globale, ainsi que la résilience et la disponibilité de l'environnement de production.\n\nDans cet article, découvrez comment GitLab Flow et GitLab Duo peuvent être utilisés conjointement pour aider les entreprises à réussir leur approche [DevSecOps](https://about.gitlab.com/fr-fr/topics/devsecops/ \"Qu'est-ce que DevSecOps ?\").\n\n## Qu'est-ce que GitLab Flow ?\n\n[GitLab Flow](https://about.gitlab.com/fr-fr/topics/version-control/what-is-gitlab-flow/ \"Qu'est-ce que GitLab Flow ? \") est un workflow complet et précis destiné au développement d'applications avec GitLab, notre plateforme DevSecOps alimentée par l'IA offrant une interface utilisateur et un modèle de données uniques.\nGitLab Flow est basé sur les meilleures pratiques et leçons tirées des retours d'expérience de nos clients ainsi que de l'utilisation de nos propres fonctionnalités en interne. En outre, GitLab Flow couvre chacune des [étapes du cycle de vie DevSecOps](https://about.gitlab.com/fr-fr/stages-devops-lifecycle/) créant un workflow efficace comprenant deux boucles de rétroaction :\n- Une __boucle de rétroaction interne__ qui permet d'examiner et d'évaluer une mise à jour spécifique de l'application pour s'assurer qu'elle répond aux critères de qualité et de sécurité. - Une __boucle de rétroaction externe__ qui vise à améliorer l'application dans son ensemble, ainsi que le cycle de développement lui-même.\n![Boucles de rétroaction internes et externes de GitLab Flow](https://about.gitlab.com/images/blogimages/gitlab-flow-duo/The-GitLab-Flow-2023-feedback-loops.png)\n\u003Ccenter>Boucles de rétroaction internes et externes de GitLab Flow\u003C/center>\u003Cp>\u003C/p>\n\nGitLab Flow étant constitué de nombreuses étapes, le développement logiciel ne se limite pas à la simple écriture de code. Découvrez ci-dessous chaque étape du processus DevSecOps dans GitLab Flow ainsi que les avantages d'y ajouter l'utilisation de GitLab Duo.\n### L'étape de planification\n\nLa planification est la première étape de GitLab Flow et fait partie de la boucle de rétroaction externe. Elle inclut les tickets, les merge requests, les epics, les jalons, les itérations, les sorties de nouvelles versions, les preuves de déploiement et bien plus encore. Découvrez le rôle de ces composants dans GitLab Flow et les avantages de les utiliser en parallèle de GitLab Duo.\n\n![Planification : première étape de GitLab Flow](https://about.gitlab.com/images/blogimages/gitlab-flow-duo/The-GitLab-Flow-2023-planning-portion.png)\n\u003Ccenter>Planification : première étape de GitLab Flow\u003C/center>\u003Cp>\u003C/p>\n\n#### Les tickets\nLes tickets sont des espaces collaboratifs dans lesquels les problèmes relatifs au produit sont traités et les nouvelles fonctionnalités sont définies. Lorsque vous créez un ticket, vous commencez par renseigner son titre. Ensuite, vous pouvez utiliser la fonctionnalité de **génération de descriptions de tickets** de GitLab Duo pour automatiquement enrichir le champ de description. Cela vous permet ainsi de gagner un temps précieux et de réduire vos efforts.\nComme de nombreuses personnes peuvent être amenées à collaborer sur un même ticket, la fonctionnalité de **résumé des discussions** alimentée par l'IA de GitLab Duo peut résumer des centaines de commentaires laissés sur un ticket en un paragraphe concis. Ainsi, n'importe quelle partie prenante peut rapidement suivre la conversation, rejoindre la discussion et être immédiatement productive.\n\nLes tickets peuvent être organisés et visualisés dans des tableaux de tickets, qui sont des outils de gestion de projet pouvant être utilisés comme tableaux Kanban ou Scrum. Ces tableaux aident les équipes à planifier, à organiser et à visualiser un workflow relatif à un déploiement d'une fonctionnalité ou d'un produit. Différentes catégories de tableaux peuvent être créées et les tickets peuvent être déplacés d'un tableau à l'autre par simple glisser-déposer.\n\n#### Les merge requests\n\nC'est à l'aide des merge requests que les solutions logicielles sont développées. En tant que composants associés à la sortie de nouvelles versions, les tickets et les merge requests permettent d'auditer et de suivre les modifications apportées aux applications par les parties prenantes. Ils sont essentiels au travail des [ingénieurs DevOps](https://about.gitlab.com/fr-fr/topics/devops/what-is-a-devops-platform-engineer/ \"Qu’est-ce qu’un ingénieur de plateforme DevOps ?\") et des ingénieurs de plateforme, aux administrateurs système et aux administrateurs de base de données, tout comme aux ingénieurs sécurité et aux équipes de développement. En outre, les tickets et les merge requests sont des éléments clés du processus de planification pour la sortie des nouvelles versions.\n\nLes merge requests peuvent être créées individuellement ou à partir d'un ticket existant. La création d'une merge request à partir d'un ticket la relie automatiquement à ce dernier, de sorte que lorsqu'elle est fusionnée, le ticket associé est automatiquement fermé. Il est également possible de lier manuellement une merge request à un ticket.\n\n![Une merge request fusionnée ferme le ticket associé](https://about.gitlab.com/images/blogimages/gitlab-flow-duo/mr-with-its-issue.png)\n\u003Ccenter>Une merge request fusionnée ferme le ticket associé\u003C/center>\u003Cp>\u003C/p>\n\nTout comme les tickets, les merge requests peuvent regrouper une longue liste de mises à jour d'une branche de fonctionnalité réalisées par de nombreuses parties prenantes. Les collaborateurs souhaitant comprendre ou se familiariser avec les mises à jour d'une merge request peuvent utiliser la fonctionnalité de **résumé des merge requests** de GitLab Duo pour prendre rapidement connaissance des modifications qui ont été apportées. De plus, ils peuvent tirer parti de la fonctionnalité de **remplissage automatique d'un modèle de merge request** de GitLab Duo, qui s'appuie sur un template de merge request prédéfini, pour remplir automatiquement le contenu des différentes sections. Ces templates de description permettent de standardiser et d'optimiser la collaboration et la communication entre les parties prenantes tout au long du cycle de développement. Et ce processus est encore plus rapide avec GitLab Duo !\n\nLes tickets appartenant au même thème peuvent être regroupés dans des epics pour organiser les tâches à effectuer. Les epics peuvent inclure des tickets enfants et des sous-epics et/ou être liés aux autres epics de l'entreprise. Les itérations permettent de suivre les sprints de travail. Vous pouvez les planifier soit manuellement, soit automatiquement à l'aide des cadences d'itération de GitLab afin de rationaliser les workflows de planification. De plus, elles incluent des [graphiques d'avancement burndown et burnup](https://docs.gitlab.com/ee/user/project/milestones/burndown_and_burnup_charts.html). Les graphiques d'avancement burndown suivent la progression globale d'un projet, tandis que les graphiques d'avancement burnup suivent quotidiennement le nombre total et le poids des tickets ajoutés et terminés dans une timebox donnée.\n\n#### Les jalons\n\nLes jalons permettent aux équipes DevSecOps d'organiser les tickets et les merge requests dans un groupe cohérent, avec une date de début et une échéance facultatives. Ils sont généralement utilisés pour suivre les nouvelles versions et servent également à suivre les tickets et les merge requests au niveau d'un projet ou d'un groupe. Similaires aux itérations, les jalons fournissent des graphiques d'avancement burndown et burnup montrant l'avancement d'un projet.\n\nIls peuvent être associés à la sortie d'une nouvelle fonctionnalité, dont la création automatisée génère de nombreux artefacts, y compris des preuves de déploiement. La preuve de déploiement est un instantané automatisé des données liées à la sortie d'une nouvelle fonctionnalité. En complément des artefacts de test et des jalons associés, les artefacts de job peuvent éventuellement être inclus dans les preuves de déploiement. Cette démarche facilite la vérification par des audits externes des processus internes de développement et de déploiement des nouvelles versions.\n\nLes epics, jalons et itérations peuvent être visualisés depuis la page Roadmaps, qui permet de suivre la progression de la sortie d'une nouvelle fonctionnalité et de rationaliser ce processus.\nUne fois l'étape de planification terminée, le travail visant à résoudre un problème ou à développer une nouvelle fonctionnalité peut commencer. C'est là que les merge requests entrent en jeu. Examinons plus en détail ce processus dans GitLab Flow.\n### Les merge requests et le push du code\n\n![Merge requests et push du code : deuxième étape de GitLab Flow](https://about.gitlab.com/images/blogimages/gitlab-flow-duo/The-GitLab-Flow-2023-mr-pushing-code-portion.png)\n\u003Ccenter>Merge requests et push du code : deuxième étape de GitLab Flow\u003C/center>\u003Cp>\u003C/p>\n\nLa deuxième étape dans GitLab Flow concerne les merge requests et le push du code. Comme mentionné précédemment, c'est à l'aide des merge requests que les solutions sont développées de façon collaborative par les parties prenantes de l'entreprise. Cette collaboration peut se faire de manière distribuée et asynchrone.\n\nLes participants peuvent tirer parti des fonctionnalités de collaboration, telles que l'ajout de tags, l'intégration de suggestions et de commentaires à la ligne de code, l'ajout de commentaires au sein des merge requests, la revue des fils de discussion et des demandes. Toutes ces fonctionnalités permettent d'améliorer la qualité du code, sa disponibilité, sa fiabilité et ses performances.\nLa boucle de rétroaction interne de GitLab Flow intervient directement après la création de la merge request. Elle inclut le push du code et des corrections, l’exécution des scans et des tests, ainsi que la revue à des fins collaboratives et de mise à jour.\n\n#### Les pipelines\n\nLorsque des mises à jour sont appliquées à une branche de fonctionnalité via des merge requests, les pipelines (s'ils sont définis) sont automatiquement exécutés. Ils peuvent comporter plusieurs étapes et jobs servant à compiler, à tester puis à déployer l'application ou le [microservice](https://about.gitlab.com/fr-fr/blog/what-are-the-benefits-of-a-microservices-architecture/ \"Qu’est-ce qu’une architecture de microservices ? \") dans un environnement de revue. Cet environnement permet de vérifier les mises à jour dynamiquement avant qu'elles ne soient fusionnées dans la branche principale. Cette automatisation rationalise les processus de mise à jour et de revue lors du développement de l'application.\n\nPar ailleurs, lorsqu'elles apportent des mises à jour à l'application via des merge requests, les équipes DevSecOps ont accès à diverses fonctionnalités alimentées par l'IA. Lors de l'écriture ou de la mise à jour du code, la fonctionnalité de **[suggestions de code](https://about.gitlab.com/fr-fr/solutions/code-suggestions/ \"Suggestions de code\")** de GitLab Duo propose la prochaine portion de code à écrire en fonction du contexte. Le développeur est alors libre de l'accepter ou de l'ignorer.\nLes suggestions de code prennent en charge la génération de code via des prompts ainsi que la complétion de code en temps réel. Elles peuvent améliorer l'expérience de programmation en réduisant les erreurs et en aidant les équipes de développement à écrire du code plus rapidement, contribuant ainsi à améliorer la qualité du code de l'environnement de production. Elles peuvent également accroître la productivité des développeurs et développeuses, ainsi qu'accélérer les itérations et les déploiements.\n\nLorsque les différentes parties prenantes au sein du projet participent au développement ou à la revue d'applications, elles se heurtent parfois à un code peu documenté, complexe, difficile à interpréter ou écrit dans un langage de programmation qui ne leur est pas familier. Avec la fonctionnalité d'**explication du code** de GitLab Duo, le code est traduit en langage naturel permettant à quiconque au sein de l'équipe de le comprendre facilement et de devenir opérationnel rapidement.\n\nDe plus, lorsqu'un développeur ou une développeuse effectue une validation des modifications sur une branche de fonctionnalité, la fonctionnalité de **suggestion de relecteurs** de GitLab Duo utilise la merge request de ces modifications et le graphique de contributions pour suggérer une liste de relecteurs appropriés dans la liste déroulante des relecteurs située dans la barre latérale de la merge request. Cette liste inclut des utilisateurs qui connaissent un aspect spécifique de l'application et semblent les meilleurs candidats pour effectuer une revue des mises à jour. Ainsi, les développeurs n'ont plus besoin de rechercher ni d'identifier eux-mêmes les relecteurs appropriés, ce qui évite les retards et garantit la qualité des revues.\n\nLorsque les développeurs modifient le code, il arrive souvent qu'ils n'incluent pas dans la merge request un commentaire sur les modifications apportées. Fort de ce constat, la fonctionnalité de **résumé des merge requests** de GitLab Duo permet à l'auteur de la merge request d'utiliser l'IA pour générer un commentaire en langage naturel qui résume les modifications apportées au code. Les relecteurs peuvent ainsi mieux comprendre les changements apportés et rationaliser l'ensemble du processus de revue.\nLorsque les relecteurs vérifient les modifications apportées au code dans une merge request et qu'ils détectent des anomalies, ils peuvent créer un bloc de revue pouvant inclure de nombreux commentaires impliquant de nombreux fichiers source. Pour aider l'auteur de la merge request à comprendre l'afflux de commentaires fournis par le relecteur, la fonctionnalité de **résumé des revues de code** de GitLab Duo génère un résumé en langage naturel des retours du relecteur. Cela permet de meilleurs transferts entre les auteurs et les relecteurs, tout en simplifiant le processus de revue.\n\nEn outre, lorsque les développeurs ajoutent du nouveau code par le biais d'une merge request, ils peuvent tirer parti de la fonctionnalité de **génération de tests** de GitLab Duo qui utilise l'IA pour générer des tests unitaires afin de vérifier le nouveau code. Cela permet d'augmenter la productivité des équipes de développement, d'améliorer la couverture de test et de détecter les bogues en amont du cycle de développement. Elles peuvent également tirer parti de **[GitLab Duo Chat](https://about.gitlab.com/fr-fr/blog/developing-gitlab-duo-a-roundup-of-recent-chat-enhancements/ \"GitLab Duo Chat\")**, qui est toujours accessible, afin de refactoriser le code et de générer de la documentation intégrée à la ligne de code (par exemple des docstrings) pour leur code source.\n\nBien que les pipelines s'exécutent sur les mises à jour de branches, ils peuvent inclure des tests et des scans automatisés, ce qui permet d'intégrer la [sécurité en amont](https://about.gitlab.com/fr-fr/topics/ci-cd/shift-left-devops/ \"Shift Left\").\n\n### L'intégration de la sécurité en amont\n\n![L'intégration de la sécurité en amont : troisième étape de GitLab Flow](https://about.gitlab.com/images/blogimages/gitlab-flow-duo/The-GitLab-Flow-2023-shift-sec-left-portion.png)\n\u003Ccenter>L'intégration de la sécurité en amont : troisième étape de GitLab Flow\u003C/center>\u003Cp>\u003C/p>\n\nL'intégration de la sécurité en amont est la troisième étape de GitLab Flow. Elle fait également partie de la boucle de rétroaction interne.\n\nLes ingénieurs DevOps et ingénieurs de plateforme, les administrateurs système et administrateurs de base de données, les développeurs ainsi que d'autres parties prenantes collaborant à une merge request peuvent avoir des inquiétudes concernant la sécurité et la conformité. C'est là que les scans de sécurité et les tests automatisés entrent en jeu.\nIl est possible d'inclure les scans de sécurité dans un pipeline via des templates prêts à l'emploi et/ou de les exécuter automatiquement dans un pipeline de merge requests. GitLab fournit un large éventail de scanners et d'analyseurs de sécurité intégrés qui peuvent être utilisés par GitLab Flow. Mais ce n'est pas tout, notre plateforme DevSecOps peut également accueillir des scanners tiers et personnalisés.\n\nGitLab Flow intègre la sécurité en amont dans le pipeline afin de détecter et de résoudre les failles de sécurité le plus tôt possible dans le cycle de développement logiciel. Il est beaucoup plus simple (et moins coûteux) de corriger les vulnérabilités au début du cycle de développement. En effet, une fois qu'une application est en production, une panne imprévue peut avoir des conséquences sur vos utilisateurs, mais aussi vos revenus. Alors, pourquoi ne pas la résoudre avant qu'elle ne se produise ?\nVoici une liste des scanners et analyseurs de sécurité intégrés fournis par GitLab : - les tests unitaires, - l'analyse de l'Infrastructure as Code (IaC), - les scanners SAST (test statique de sécurité des applications), - l'analyse des dépendances, - la détection de secrets, - l'analyse des conteneurs, - la sécurité des API, - les tests d'API web par injection de données aléatoires,\n- les tests à données aléatoires guidés par la couverture de code.\nGitLab fournit par ailleurs un grand nombre de tableaux de bord et de rapports de sécurité permettant de gérer et de visualiser les vulnérabilités (liste des dépendances, tableau de bord de sécurité, rapport sur les vulnérabilités et pages de vulnérabilité).\n\nPour aider les développeurs et les ingénieurs sécurité à mieux comprendre les vulnérabilités et à les corriger plus efficacement, la fonctionnalité d'**explication des vulnérabilités** de GitLab Duo fournit des détails sur une vulnérabilité spécifique, en décrivant comment elle peut être exploitée et, surtout, en proposant des recommandations pour la corriger. Les développeurs peuvent également tirer parti de la fonctionnalité de **résolution des vulnérabilités** de GitLab Duo, qui crée automatiquement une merge request incluant les modifications de code permettant de corriger la vulnérabilité. Ces fonctionnalités alimentées par l'IA rationalisent et optimisent le processus de sécurisation et de renforcement de l'application concernée afin de prévenir les vulnérabilités susceptibles d'être exploitées lors de cyberattaques dans l'environnement de production.\n\nOutre les scanners SAST, GitLab met à disposition de ses utilisateurs des scanners DAST (test dynamique de sécurité des applications) qui nécessitent une application en cours d'exécution pour effectuer les tests. Grâce à ces scanners, GitLab peut provisionner automatiquement un environnement DAST en vue de réaliser des scans DAST, puis effectuer un nettoyage complet de toutes les ressources après les tests DAST. Par ailleurs, pour les conteneurs en cours d'exécution, GitLab fournit une fonctionnalité OCS (Operational Container Scanning) qui analyse les images de conteneurs de votre cluster afin de detecter des failles de sécurité.\n\nIl est possible d'exécuter automatiquement les scans mentionnés ci-dessus dans un pipeline de merge requests ou, dans certains cas, de planifier leur exécution via des stratégies d'exécution de scan et d'approbation des merge requests. Ces stratégies peuvent être définies via l'interface utilisateur de GitLab ou des fichiers YAML. Elles sont configurées dans un projet distinct, ce qui permet de séparer les tâches et ainsi de faciliter la réutilisation, la maintenance et la gestion. Les stratégies d'exécution des scans exigent que les scans de sécurité soient exécutés selon un calendrier précis ou avec le pipeline de projets. Ensuite, les stratégies d'approbation des merge requests prennent des mesures basées sur les résultats des scans. Les équipes ou les ingénieurs sécurité peuvent définir ces stratégies pour appliquer les processus de sécurité dans l'ensemble de l'entreprise, et GitLab Flow peut les détecter ou les exploiter lors de son exécution.\n\nPour renforcer la sécurité et la conformité des projets menés au sein de votre entreprise, vous pouvez utiliser des pipelines et des labels de conformité. Ceux-ci peuvent être rendus obligatoires avant l’exécution du pipeline d’un projet. Ainsi, vous avez la certitude que l'ensemble de vos équipes respectent vos normes de sécurité et de conformité. Cela vous permet par ailleurs de protéger vos applications contre les cyberattaques, tout en respectant les normes de conformité gouvernementales et de toujours être préparé pour un éventuel audit.\n\nL'objectif principal de toutes ces recommandations de sécurité de GitLab Flow est de corriger les vulnérabilités dès le début du cycle de développement, plutôt qu'en production, car les corrections peuvent s'avérer lourdes de conséquences en termes de réputation et de chiffre d'affaires.\n\nÀ mesure que les vulnérabilités sont atténuées dans la boucle de rétroaction interne de GitLab Flow et que des mises à jour sont apportées à l'application dans la branche de fonctionnalité, les parties prenantes doivent effectuer une nouvelle revue des mises à jour pour s'assurer de leur application effective et qu'aucune régression n'a été introduite par inadvertance.\n\n### La revue continue\n\n![La revue : quatrième étape de GitLab Flow](https://about.gitlab.com/images/blogimages/gitlab-flow-duo/The-GitLab-Flow-2023-reviewing-features-portion.png)\n\u003Ccenter>La revue de code : quatrième étape de GitLab Flow\u003C/center>\u003Cp>\u003C/p>\n\nLa revue des fonctionnalités, quatrième étape de GitLab Flow, repose sur une revue continue des applications. Cette étape nécessite de déployer l'application provisoire (branche de fonctionnalité) dans un environnement de revue prévu à cet effet afin que les parties prenantes puissent la vérifier en temps réel et fournir des retours constructifs. L'application provisoire peut ensuite être ajustée en continu jusqu'à ce qu'elle soit prête à être fusionnée dans la branche principale. GitLab Flow recommande également le nettoyage de toutes les ressources de l'environnement de revue provisionnées au moment où la merge request est fusionnée dans la branche principale.\n\nCe processus de revue automatisé et itératif fait partie de la boucle de rétroaction interne de GitLab Flow. Comme mentionné ci-dessus, dans la boucle de rétroaction interne, il est recommandé d'utiliser les fonctionnalités de GitLab Duo suivantes : explication du code, suggestions de code, suggestion de relecteurs, résumé des merge requests, remplissage automatique d'un template de merge request, résumé des revues de code, explication des vulnérabilités, résolution des vulnérabilités et analyse des causes profondes. En effet, celles-ci facilitent le transfert entre les auteurs et les relecteurs tout en simplifiant l'ensemble du processus de revue.\n\nLa boucle de rétroaction interne de GitLab Flow prend fin lorsque tous les éléments de revue sont traités et que la merge request est approuvée et fusionnée dans la branche principale, ce qui déclenche le déploiement de l'application en production.\n\n### Le déploiement des applications et de l'infrastructure\n\n![Le déploiement : cinquième étape de GitLab Flow](https://about.gitlab.com/images/blogimages/gitlab-flow-duo/The-GitLab-Flow-2023-deploy-apps-portion.png)\n\u003Ccenter>Le déploiement : cinquième étape de GitLab Flow\u003C/center>\u003Cp>\u003C/p>\n\nEn fonction des besoins de l'entreprise, GitLab Flow recommande la livraison continue ou le déploiement continu. - La __livraison continue__ consiste à publier fréquemment du code en déclenchant les déploiements manuellement (par exemple, en production). - Le __déploiement continu__ désigne la publication automatisée de code (par exemple, en production) sans intervention humaine.\nIntéressons-nous d'abord à la livraison continue.\n\nLorsque vous publiez votre logiciel en utilisant la livraison continue, vous disposez de plusieurs options de déploiement. Vous pouvez établir une fenêtre de gel, puis déployer le logiciel à l'aide de techniques de déploiement avancées, telles que les déploiements canari, bleu/vert, programmés et incrémentiels. Les déploiements incrémentiels réduisent le risque de panne dans l'environnement de production et améliorent l'expérience utilisateur ainsi que la satisfaction client. Les techniques de déploiement avancées améliorent également l'efficacité du processus de développement et de livraison en simplifiant le processus de sortie de nouvelles versions.\n\nLorsque vous publiez votre logiciel en utilisant le déploiement continu, l'intégralité des changements/mises à jour est directement déployée en production. Les approches de livraison progressive telles que les feature flags, qui vous permettent de séparer la livraison de fonctionnalités spécifiques d'un lancement, sont un bon moyen de réduire les risques et de gérer les fonctionnalités à mettre à la disposition des utilisateurs finaux. Les feature flags prennent en charge plusieurs langages de programmation. Ils permettent aux équipes de développement d'expérimenter et d'effectuer des tests contrôlés. Vous pouvez même utiliser des feature flags pour déployer des fonctionnalités auprès d'utilisateurs spécifiques.\n\nBien que GitLab prenne en charge toutes ces approches de déploiement, GitLab Flow permet d'adopter l'approche qui convient le mieux aux équipes et/ou aux besoins spécifiques du projet.\n\n### La surveillance des applications et des processus DevSecOps\n\nUne fois que votre application a été déployée en production, elle doit être surveillée en permanence pour assurer sa stabilité, ses performances et sa disponibilité. En outre, les processus DevSecOps qui s'exécutent sont mesurés en parallèle, ce qui permet d'améliorer leurs performances et leur efficacité. Les fonctionnalités de surveillance sont fournies par GitLab et, en tant que telles, peuvent être exploitées par GitLab Flow.\n\nPour les conteneurs en cours d'exécution, GitLab fournit une fonctionnalité OCS (Operational Container Scanning) qui analyse les images de conteneurs de votre cluster afin de détecter des failles de sécurité. Il est possible d'automatiser ces scans en planifiant leur exécution. Les vulnérabilités détectées sont automatiquement affichées dans un tableau de bord de sécurité. La fonctionnalité OCS peut vous aider à sécuriser vos applications de cluster et à anticiper toute cyberattaque pouvant entraîner des fuites de données privées et même provoquer des pannes inattendues.\n\nLe suivi des erreurs permet aux équipes de développement de détecter et de visualiser les erreurs générées par leur application. Celles-ci sont affichées dans la liste de suivi des erreurs dans GitLab. Le suivi des erreurs permet d'améliorer la disponibilité et les performances de vos applications en détectant et en résolvant rapidement les conditions d'application inattendues.\n\nGitLab peut recevoir des alertes de n'importe quelle source de surveillance, y compris Prometheus, via un récepteur webhook. Dès qu'une alerte arrive, elle est affichée dans la section Alertes de GitLab, où vous pouvez la gérer manuellement. Les alertes peuvent également déclencher automatiquement la création d'incidents, de ChatOps et d'e-mails à des personnes ou des groupes spécifiques. Toutes ces fonctionnalités rationalisent le processus de résolution et de gestion des alertes.\n\nDès qu'un incident est créé suite à la détection de problèmes dans l'environnement de production, il apparaît dans la liste des incidents de GitLab, où vous pouvez le gérer facilement. Vous pouvez gérer un ou plusieurs incidents, les trier, les rechercher, les assigner, définir leurs statuts et même voir leur compte à rebours calculant l'échéance de l'accord de niveau de service (SLA). De plus, vous pouvez créer des équipes d'astreinte et des rotations, des politiques d'escalade, ainsi que configurer la remontée d'alertes et les notifications pour gérer les incidents. Vous pouvez également associer un incident à une alerte afin que celle-ci soit automatiquement résolue une fois que l'incident est clos. Les chronologies d'incident permettent également aux cadres dirigeants et aux utilisateurs externes de voir ce qui s'est passé lors d'un incident et quelles mesures ont été prises pour le résoudre. Toutes ces fonctionnalités rationalisent et accélèrent le processus de gestion et de résolution des incidents.\n\nLes événements d'audit suivent les événements importants, en permettant notamment d'identifier l'intervenant qui a effectué l'action correspondante et le moment de son intervention dans GitLab. Ces événements sont affichés dans la liste des événements d'audit de GitLab et fournissent, entre autres, l'action qui a été effectuée sur un objet, son auteur, ainsi que sa date et son heure d'occurrence.\n\nL'ensemble des listes et tableaux de bord mentionnés ci-dessus permettent d'anticiper les scénarios de non-conformité afin d'éviter les pénalités et de rationaliser les processus d'audit. Pour vos applications en cours d'exécution, ils génèrent des données et des indicateurs qui peuvent être utilisés dans la boucle de rétroaction externe de GitLab Flow afin de vous aider à améliorer et à optimiser vos applications et à réduire le risque de pannes imprévues dans l'environnement de production.\n\n### L'amélioration continue\nGitLab Flow permet de tirer parti des tableaux de bord et indicateurs de performance des processus à chaque étape du développement logiciel. Ces tableaux offrent des informations précieuses pour améliorer en continu votre application et vos performances dans ce domaine. Ils sont générés automatiquement par GitLab et sont toujours accessibles.\n\n### Le tableau de bord d'analyse des flux de valeur\n\nVous pouvez suivre et surveiller le cycle de développement de vos applications via le tableau de bord d'analyse des flux de valeur, où vous pouvez consulter les statistiques d'un projet ou d'un groupe au fil du temps. Ce tableau de bord est personnalisable, mais vous pouvez commencer rapidement en créant une chaîne de valeur à l'aide d'un template par défaut fourni par GitLab. Celui-ci affiche des indicateurs pour chacune des étapes prédéfinies de l'analyse du flux de valeur (ticket, planification, codage, test, revue et préproduction), ainsi qu'un graphique montrant le délai moyen d'achèvement de chaque étape. Il affiche également les indicateurs clés de l'analyse du flux de valeur : délai d'exécution, durée de cycle, nouveaux tickets, validations et déploiements. Vous pouvez utiliser ces indicateurs pour identifier des axes d'amélioration dans les étapes de votre chaîne de valeur.\n\n### Le tableau de bord des métriques DORA\n\nPour visualiser les indicateurs de performance qui mesurent l'efficacité des pratiques de développement et de livraison de votre entreprise, GitLab met à disposition de ses utilisateurs un tableau de bord des métriques [DORA](https://about.gitlab.com/fr-fr/solutions/value-stream-management/dora/) (DevOps Research and Assessment), qui affiche quatre métriques clés : la fréquence de déploiement, le délai d'exécution des modifications, le délai de rétablissement du service et le taux d'échec des modifications.\n- La fréquence de déploiement mesure la fréquence à laquelle votre entreprise déploie du code en production ou le publie à destination des utilisateurs finaux. - Le délai d'exécution des modifications mesure le temps nécessaire pour passer du code validé au code exécuté avec succès en production. - Le délai de rétablissement du service mesure le temps nécessaire pour rétablir les services au niveau où ils étaient auparavant, en cas d'incident. - Le taux d'échec des modifications correspond au pourcentage de modifications apportées à l'environnement de production ou aux versions destinées aux utilisateurs, qui ont entraîné une dégradation du service (par exemple, une défaillance ou une panne) et ont ensuite nécessité des mesures correctives (solution corrective d'urgence, restauration d'une version antérieure, correctif).\nCes quatre métriques clés mesurent l'efficacité de vos processus actuels et vous donnent la possibilité d'améliorer les facteurs et fonctionnalités permettant de soutenir le travail de vos équipes.\n\n### La personnalisation de votre tableau de bord\n\nLe tableau de bord des flux de valeur est un autre tableau de bord personnalisable qui permet aux décideurs d'identifier les tendances et les opportunités d'amélioration du développement logiciel. Il affiche les métriques DORA suivies des indicateurs d'efficacité du processus d'analyse des flux de valeur et du nombre de vulnérabilités critiques et élevées pour le mois en cours, les deux mois précédents et les six derniers mois.\n\nGitLab Duo peut également vous aider dans vos efforts d'amélioration continue. Par exemple, la fonctionnalité de **prédiction de la chaîne de valeur** prend l'historique des données et utilise les tendances de l'ensemble de votre cycle de développement pour prédire le comportement futur de vos indicateurs de chaîne de valeur. Vous pouvez utiliser ces analyses prédictives dans vos efforts d'optimisation.\n\nL'ensemble de ces tableaux de bord et les indicateurs dont ils rendent compte font partie de la boucle de rétroaction externe de GitLab Flow. Ils vous aident à réduire le risque de pannes imprévues dans l'environnement de production, ainsi qu'à améliorer et à optimiser vos applications et vos workflows DevSecOps.\n\n### La fonctionnalité d'analyse d'impact de l'IA\n\nPour mieux comprendre l'impact de l'utilisation de GitLab Duo (ou de l'IA) tout au long du cycle de développement, vous pouvez consulter le tableau de bord d'[analyse d'impact de l'IA](https://about.gitlab.com/fr-fr/blog/developing-gitlab-duo-ai-impact-analytics-dashboard-measures-the-roi-of-ai/). Ce tableau vous indique comment l'adoption de la fonctionnalité de suggestions de code de GitLab Duo impacte d'autres indicateurs de performance, de qualité et de sécurité, sur les six derniers mois, tels que la durée de cycle, le délai d'exécution, la fréquence de déploiement, le taux d'échec des modifications et les vulnérabilités critiques au fil du temps.\n\nL'analyse d'impact de l'IA mesure l'adoption, l'optimisation et les avantages que l'IA apporte aux équipes et à l'entreprise dans son ensemble, et permet également d'identifier des axes d'amélioration.\n\n## Pourquoi utiliser GitLab Flow ?\n\nGitLab Flow est une approche préconisée, suivie par nos clients et utilisateurs du monde entier, qui offre les avantages suivants : - Une productivité accrue grâce aux fonctionnalités d'automatisation fournies par GitLab, son interface utilisateur unique et son modèle de données unique, le tout exploité par GitLab Flow.\n- Des informations précises sur le cycle de vie DevSecOps complet pour soutenir l'amélioration continue. - Des tableaux de bord et indicateurs intégrés qui peuvent vous aider à optimiser vos applications et vos processus DevSecOps.\n- Une qualité accrue du code et l'amélioration de la fiabilité et de la disponibilité de vos applications.\n- Une meilleure sécurité des applications grâce à des scanners et des fonctionnalités de sécurité intégrés.\n- La conformité et la préparation aux audits via des fonctionnalités de conformité intégrées.\n- Des durées de cycle plus courtes qui peuvent vous aider à augmenter la fréquence de déploiement.\n- La revue en continu activée par la boucle de rétroaction interne de GitLab Flow.\n- La boucle de rétroaction interne de GitLab Flow peut vous aider à optimiser les mises à jour afin d'améliorer la qualité du code, ainsi que la fiabilité et la disponibilité de vos applications.\n- La boucle de rétroaction externe de GitLab Flow peut vous aider à améliorer vos applications ainsi que le cycle de développement lui-même.\n- Des niveaux élevés de collaboration entre les parties prenantes de votre entreprise.\n- L'intégration de la sécurité en amont pour identifier les vulnérabilités dans les applications avant qu'elles ne passent en production, et ainsi éviter les pannes coûteuses et imprévues.\n- La réduction des risques lors du déploiement en production grâce aux techniques de déploiement avancées et aux approches de livraisons échelonnées prises en charge par GitLab.\n- Des fonctionnalités alimentées par l'IA qui couvrent l'ensemble du cycle de développement et peuvent optimiser la productivité, la qualité du code, l'amélioration continue, la sécurité, la conformité et bien plus encore.\n- La prise en charge des applications cloud-native et autres types d'application.\n- La prise en charge multi-cloud pour les applications hybrides/multi-cloud.\n\nPour commencer avec GitLab Flow, tirer parti de la fonctionnalité Auto DevOps de GitLab ou de certains de ses composants est un bon point de départ pour appliquer les principes de GitLab Flow à votre cycle de développement logiciel.\n\n## GitLab Flow et Auto DevOps\n\n![Auto DevOps : une instanciation de GitLab Flow](https://about.gitlab.com/images/blogimages/gitlab-flow-duo/ado-pipeline.png)\n\u003Ccenter>Auto DevOps : une instanciation de GitLab Flow\u003C/center>\u003Cp>\u003C/p>\n\n[Auto DevOps](https://docs.gitlab.com/ee/topics/autodevops/) applique GitLab Flow à l'ensemble des étapes et jobs associés. Vous pouvez le considérer comme un bon exemple pour l'instanciation de GitLab Flow.\n\nAuto DevOps est une collection de templates CI/CD prédéfinis et prêts à l'emploi qui détectent automatiquement le code source dont vous disposez. Basés sur les bonnes pratiques, ces templates détectent, compilent, testent, déploient et surveillent automatiquement vos applications.\n\nLe pipeline Auto DevOps intègre la sécurité en amont pour détecter et prévenir les défauts le plus tôt possible dans le processus de livraison de logiciels. Il déploie ensuite l'application en préproduction pour vérification, puis en production de manière incrémentielle/planifiée.\n\nAuto DevOps vous permet de démarrer rapidement, en augmentant la productivité des équipes de développement. Vous pouvez le personnaliser facilement en fonction de vos besoins, grâce à la prise en charge des frameworks et des langages de programmation les plus courants. Auto DevOps étant modulaire, personnalisable et extensible, vous pouvez utiliser certains de ses composants dans vos pipelines ou l'appliquer intégralement à votre application.\n\n## Conclusion\n[Combinez GitLab Flow et GitLab Duo dès aujourd'hui](https://gitlab.com/-/trials/new?glm_content=default-saas-trial&glm_source=about.gitlab.com%2Fblog%2F) pour améliorer considérablement l'efficacité de votre workflow, à chaque étape du cycle de développement logiciel. Ce duo améliore la productivité, la fréquence des déploiements, la qualité du code et la sécurité dans son ensemble, ainsi que la résilience et la disponibilité de l'environnement de production.\nPour voir un workflow en action qui combine GitLab Flow et GitLab Duo, et découvrir ses avantages, regardez la vidéo suivante :\n\n\u003C!-- blank line -->\n\u003Cfigure class=\"video_container\">\n  \u003Ciframe src=\"https://www.youtube.com/embed/CKrZ4_tKY4I?si=Kf6QsYFIzKkJZpJd\" frameborder=\"0\" allowfullscreen=\"true\"> \u003C/iframe>\n\u003C/figure>\n\u003C!-- blank line -->\n",[23,24,25],"CI/CD","AI/ML","DevSecOps","2025-04-03","yml",{},true,"/fr-fr/blog/gitlab-flow-duo",{"title":15,"description":16,"ogTitle":15,"ogDescription":16,"noIndex":12,"ogImage":19,"ogUrl":32,"ogSiteName":33,"ogType":34,"canonicalUrls":32},"https://about.gitlab.com/blog/gitlab-flow-duo","https://about.gitlab.com","article","fr-fr/blog/gitlab-flow-duo",[37,38,39],"cicd","aiml","devsecops","qiKkyufhnRMNkfZEPkrDSHrq4L5dHHaZQ1M7_K9BI3M",{"data":42},{"logo":43,"freeTrial":48,"sales":53,"login":58,"items":63,"search":372,"minimal":407,"duo":426,"pricingDeployment":436},{"config":44},{"href":45,"dataGaName":46,"dataGaLocation":47},"/fr-fr/","gitlab logo","header",{"text":49,"config":50},"Commencer un essai gratuit",{"href":51,"dataGaName":52,"dataGaLocation":47},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/fr-fr&glm_content=default-saas-trial/","free trial",{"text":54,"config":55},"Contacter l'équipe commerciale",{"href":56,"dataGaName":57,"dataGaLocation":47},"/fr-fr/sales/","sales",{"text":59,"config":60},"Connexion",{"href":61,"dataGaName":62,"dataGaLocation":47},"https://gitlab.com/users/sign_in/","sign in",[64,91,187,192,293,353],{"text":65,"config":66,"cards":68},"Plateforme",{"dataNavLevelOne":67},"platform",[69,75,83],{"title":65,"description":70,"link":71},"La plateforme d'orchestration intelligente pour le DevSecOps",{"text":72,"config":73},"Découvrir notre plateforme",{"href":74,"dataGaName":67,"dataGaLocation":47},"/fr-fr/platform/",{"title":76,"description":77,"link":78},"GitLab Duo Agent Platform","L'IA agentique pour l'ensemble du cycle de développement logiciel",{"text":79,"config":80},"Découvrir GitLab Duo",{"href":81,"dataGaName":82,"dataGaLocation":47},"/fr-fr/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":84,"description":85,"link":86},"Choisir GitLab","Découvrez les principales raisons pour lesquelles les entreprises choisissent GitLab",{"text":87,"config":88},"En savoir plus",{"href":89,"dataGaName":90,"dataGaLocation":47},"/fr-fr/why-gitlab/","why gitlab",{"text":92,"left":29,"config":93,"link":95,"lists":99,"footer":169},"Produit",{"dataNavLevelOne":94},"solutions",{"text":96,"config":97},"Voir toutes les solutions",{"href":98,"dataGaName":94,"dataGaLocation":47},"/fr-fr/solutions/",[100,124,147],{"title":101,"description":102,"link":103,"items":108},"Automatisation","CI/CD et automatisation pour accélérer le déploiement",{"config":104},{"icon":105,"href":106,"dataGaName":107,"dataGaLocation":47},"AutomatedCodeAlt","/fr-fr/solutions/delivery-automation/","automated software delivery",[109,112,115,120],{"text":23,"config":110},{"href":111,"dataGaLocation":47,"dataGaName":23},"/fr-fr/solutions/continuous-integration/",{"text":76,"config":113},{"href":81,"dataGaLocation":47,"dataGaName":114},"gitlab duo agent platform - product menu",{"text":116,"config":117},"Gestion du code source",{"href":118,"dataGaLocation":47,"dataGaName":119},"/fr-fr/solutions/source-code-management/","Source Code Management",{"text":121,"config":122},"Livraison de logiciels automatisée",{"href":106,"dataGaLocation":47,"dataGaName":123},"Automated software delivery",{"title":125,"description":126,"link":127,"items":132},"Sécurité","Livrez du code plus rapidement sans compromettre la sécurité",{"config":128},{"href":129,"dataGaName":130,"dataGaLocation":47,"icon":131},"/fr-fr/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[133,137,142],{"text":134,"config":135},"Tests de sécurité des applications",{"href":129,"dataGaName":136,"dataGaLocation":47},"Application security testing",{"text":138,"config":139},"Sécurité de la chaîne d'approvisionnement logicielle",{"href":140,"dataGaLocation":47,"dataGaName":141},"/fr-fr/solutions/supply-chain/","Software supply chain security",{"text":143,"config":144},"Conformité logicielle",{"href":145,"dataGaName":146,"dataGaLocation":47},"/fr-fr/solutions/software-compliance/","Software Compliance",{"title":148,"link":149,"items":154},"Mesures",{"config":150},{"icon":151,"href":152,"dataGaName":153,"dataGaLocation":47},"DigitalTransformation","/fr-fr/solutions/visibility-measurement/","visibility and measurement",[155,159,164],{"text":156,"config":157},"Visibilité et mesures",{"href":152,"dataGaLocation":47,"dataGaName":158},"Visibility and Measurement",{"text":160,"config":161},"Gestion de la chaîne de valeur",{"href":162,"dataGaLocation":47,"dataGaName":163},"/fr-fr/solutions/value-stream-management/","Value Stream Management",{"text":165,"config":166},"Données d'analyse et informations clés",{"href":167,"dataGaLocation":47,"dataGaName":168},"/fr-fr/solutions/analytics-and-insights/","Analytics and insights",{"title":170,"items":171},"GitLab pour",[172,177,182],{"text":173,"config":174},"Entreprises",{"href":175,"dataGaLocation":47,"dataGaName":176},"/fr-fr/enterprise/","enterprise",{"text":178,"config":179},"PME",{"href":180,"dataGaLocation":47,"dataGaName":181},"/fr-fr/small-business/","small business",{"text":183,"config":184},"Secteur public",{"href":185,"dataGaLocation":47,"dataGaName":186},"/fr-fr/solutions/public-sector/","public sector",{"text":188,"config":189},"Tarifs",{"href":190,"dataGaName":191,"dataGaLocation":47,"dataNavLevelOne":191},"/fr-fr/pricing/","pricing",{"text":193,"config":194,"link":196,"lists":200,"feature":280},"Ressources",{"dataNavLevelOne":195},"resources",{"text":197,"config":198},"Afficher toutes les ressources",{"href":199,"dataGaName":195,"dataGaLocation":47},"/fr-fr/resources/",[201,234,252],{"title":202,"items":203},"Premiers pas",[204,209,214,219,224,229],{"text":205,"config":206},"Installation",{"href":207,"dataGaName":208,"dataGaLocation":47},"/fr-fr/install/","install",{"text":210,"config":211},"Guides de démarrage",{"href":212,"dataGaName":213,"dataGaLocation":47},"/fr-fr/get-started/","quick setup checklists",{"text":215,"config":216},"Apprentissage",{"href":217,"dataGaLocation":47,"dataGaName":218},"https://university.gitlab.com/","learn",{"text":220,"config":221},"Documentation sur le produit",{"href":222,"dataGaName":223,"dataGaLocation":47},"https://docs.gitlab.com/","product documentation",{"text":225,"config":226},"Vidéos sur les bonnes pratiques",{"href":227,"dataGaName":228,"dataGaLocation":47},"/fr-fr/getting-started-videos/","best practice videos",{"text":230,"config":231},"Intégrations",{"href":232,"dataGaName":233,"dataGaLocation":47},"/fr-fr/integrations/","integrations",{"title":235,"items":236},"Découvrir",[237,242,247],{"text":238,"config":239},"Témoignages clients",{"href":240,"dataGaName":241,"dataGaLocation":47},"/fr-fr/customers/","customer success stories",{"text":243,"config":244},"Blog",{"href":245,"dataGaName":246,"dataGaLocation":47},"/fr-fr/blog/","blog",{"text":248,"config":249},"Travail à distance",{"href":250,"dataGaName":251,"dataGaLocation":47},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":253,"items":254},"Connecter",[255,260,265,270,275],{"text":256,"config":257},"Services GitLab",{"href":258,"dataGaName":259,"dataGaLocation":47},"/fr-fr/services/","services",{"text":261,"config":262},"Communauté",{"href":263,"dataGaName":264,"dataGaLocation":47},"/community/","community",{"text":266,"config":267},"Forum",{"href":268,"dataGaName":269,"dataGaLocation":47},"https://forum.gitlab.com/","forum",{"text":271,"config":272},"Événements",{"href":273,"dataGaName":274,"dataGaLocation":47},"/events/","events",{"text":276,"config":277},"Partenaires",{"href":278,"dataGaName":279,"dataGaLocation":47},"/fr-fr/partners/","partners",{"backgroundColor":281,"textColor":282,"text":283,"image":284,"link":288},"#2f2a6b","#fff","L'avenir du développement logiciel. Tendances et perspectives.",{"altText":285,"config":286},"carte promo The Source",{"src":287},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758208064/dzl0dbift9xdizyelkk4.svg",{"text":289,"config":290},"Lire les articles les plus récents",{"href":291,"dataGaName":292,"dataGaLocation":47},"/fr-fr/the-source/","the source",{"text":294,"config":295,"lists":297},"Société",{"dataNavLevelOne":296},"company",[298],{"items":299},[300,305,311,313,318,323,328,333,338,343,348],{"text":301,"config":302},"À propos",{"href":303,"dataGaName":304,"dataGaLocation":47},"/fr-fr/company/","about",{"text":306,"config":307,"footerGa":310},"Carrières",{"href":308,"dataGaName":309,"dataGaLocation":47},"/jobs/","jobs",{"dataGaName":309},{"text":271,"config":312},{"href":273,"dataGaName":274,"dataGaLocation":47},{"text":314,"config":315},"Leadership",{"href":316,"dataGaName":317,"dataGaLocation":47},"/company/team/e-group/","leadership",{"text":319,"config":320},"Équipe",{"href":321,"dataGaName":322,"dataGaLocation":47},"/company/team/","team",{"text":324,"config":325},"Manuel",{"href":326,"dataGaName":327,"dataGaLocation":47},"https://handbook.gitlab.com/","handbook",{"text":329,"config":330},"Relations avec les investisseurs",{"href":331,"dataGaName":332,"dataGaLocation":47},"https://ir.gitlab.com/","investor relations",{"text":334,"config":335},"Centre de confiance",{"href":336,"dataGaName":337,"dataGaLocation":47},"/fr-fr/security/","trust center",{"text":339,"config":340},"Centre pour la transparence de l'IA",{"href":341,"dataGaName":342,"dataGaLocation":47},"/fr-fr/ai-transparency-center/","ai transparency center",{"text":344,"config":345},"Newsletter",{"href":346,"dataGaName":347,"dataGaLocation":47},"/company/contact/#contact-forms","newsletter",{"text":349,"config":350},"Presse",{"href":351,"dataGaName":352,"dataGaLocation":47},"/press/","press",{"text":354,"config":355,"lists":356},"Nous contacter",{"dataNavLevelOne":296},[357],{"items":358},[359,362,367],{"text":54,"config":360},{"href":56,"dataGaName":361,"dataGaLocation":47},"talk to sales",{"text":363,"config":364},"Portail d’assistance",{"href":365,"dataGaName":366,"dataGaLocation":47},"https://support.gitlab.com","support portal",{"text":368,"config":369},"Portail clients GitLab",{"href":370,"dataGaName":371,"dataGaLocation":47},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":373,"login":374,"suggestions":381},"Fermer",{"text":375,"link":376},"Pour rechercher des dépôts et des projets, connectez-vous à",{"text":377,"config":378},"gitlab.com",{"href":61,"dataGaName":379,"dataGaLocation":380},"search login","search",{"text":382,"default":383},"Suggestions",[384,386,391,393,398,403],{"text":76,"config":385},{"href":81,"dataGaName":76,"dataGaLocation":380},{"text":387,"config":388},"Suggestions de code (IA)",{"href":389,"dataGaName":390,"dataGaLocation":380},"/fr-fr/solutions/code-suggestions/","Code Suggestions (AI)",{"text":23,"config":392},{"href":111,"dataGaName":23,"dataGaLocation":380},{"text":394,"config":395},"GitLab sur AWS",{"href":396,"dataGaName":397,"dataGaLocation":380},"/fr-fr/partners/technology-partners/aws/","GitLab on AWS",{"text":399,"config":400},"GitLab sur Google Cloud ",{"href":401,"dataGaName":402,"dataGaLocation":380},"/fr-fr/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":404,"config":405},"Pourquoi utiliser GitLab ?",{"href":89,"dataGaName":406,"dataGaLocation":380},"Why GitLab?",{"freeTrial":408,"mobileIcon":413,"desktopIcon":418,"secondaryButton":421},{"text":409,"config":410},"Commencer votre essai gratuit",{"href":411,"dataGaName":52,"dataGaLocation":412},"https://gitlab.com/-/trials/new/","nav",{"altText":414,"config":415},"Icône GitLab",{"src":416,"dataGaName":417,"dataGaLocation":412},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":414,"config":419},{"src":420,"dataGaName":417,"dataGaLocation":412},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":422,"config":423},"Commencer",{"href":424,"dataGaName":425,"dataGaLocation":412},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/fr-fr/compare/gitlab-vs-github/","get started",{"freeTrial":427,"mobileIcon":432,"desktopIcon":434},{"text":428,"config":429},"En savoir plus sur GitLab Duo",{"href":430,"dataGaName":431,"dataGaLocation":412},"/fr-fr/gitlab-duo/","gitlab duo",{"altText":414,"config":433},{"src":416,"dataGaName":417,"dataGaLocation":412},{"altText":414,"config":435},{"src":420,"dataGaName":417,"dataGaLocation":412},{"freeTrial":437,"mobileIcon":442,"desktopIcon":444},{"text":438,"config":439},"Retour aux tarifs",{"href":190,"dataGaName":440,"dataGaLocation":412,"icon":441},"back to pricing","GoBack",{"altText":414,"config":443},{"src":416,"dataGaName":417,"dataGaLocation":412},{"altText":414,"config":445},{"src":420,"dataGaName":417,"dataGaLocation":412},{"title":447,"button":448,"config":453},"Découvrez comment l'IA agentique transforme la livraison logicielle",{"text":449,"config":450},"Regarder GitLab Transcend maintenant",{"href":451,"dataGaName":452,"dataGaLocation":47},"/fr-fr/events/transcend/virtual/","transcend event",{"layout":454,"icon":455},"release","AiStar",{"data":457},{"text":458,"source":459,"edit":465,"contribute":470,"config":475,"items":480,"minimal":657},"Git est une marque déposée de Software Freedom Conservancy et notre utilisation de « GitLab » est sous licence",{"text":460,"config":461},"Afficher le code source de la page",{"href":462,"dataGaName":463,"dataGaLocation":464},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":466,"config":467},"Modifier cette page",{"href":468,"dataGaName":469,"dataGaLocation":464},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":471,"config":472},"Veuillez contribuer",{"href":473,"dataGaName":474,"dataGaLocation":464},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":476,"facebook":477,"youtube":478,"linkedin":479},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[481,504,558,590,625],{"title":65,"links":482,"subMenu":487},[483],{"text":484,"config":485},"Plateforme DevSecOps",{"href":74,"dataGaName":486,"dataGaLocation":464},"devsecops platform",[488],{"title":188,"links":489},[490,494,499],{"text":491,"config":492},"Voir les forfaits",{"href":190,"dataGaName":493,"dataGaLocation":464},"view plans",{"text":495,"config":496},"Pourquoi choisir GitLab Premium ?",{"href":497,"dataGaName":498,"dataGaLocation":464},"/fr-fr/pricing/premium/","why premium",{"text":500,"config":501},"Pourquoi choisir GitLab Ultimate ?",{"href":502,"dataGaName":503,"dataGaLocation":464},"/fr-fr/pricing/ultimate/","why ultimate",{"title":505,"links":506},"Solutions",[507,512,515,517,522,527,531,534,537,542,544,546,548,553],{"text":508,"config":509},"Transformation digitale",{"href":510,"dataGaName":511,"dataGaLocation":464},"/fr-fr/topics/digital-transformation/","digital transformation",{"text":513,"config":514},"Sécurité et conformité",{"href":129,"dataGaName":136,"dataGaLocation":464},{"text":121,"config":516},{"href":106,"dataGaName":107,"dataGaLocation":464},{"text":518,"config":519},"Développement agile",{"href":520,"dataGaName":521,"dataGaLocation":464},"/fr-fr/solutions/agile-delivery/","agile delivery",{"text":523,"config":524},"Transformation cloud",{"href":525,"dataGaName":526,"dataGaLocation":464},"/fr-fr/topics/cloud-native/","cloud transformation",{"text":528,"config":529},"SCM",{"href":118,"dataGaName":530,"dataGaLocation":464},"source code management",{"text":23,"config":532},{"href":111,"dataGaName":533,"dataGaLocation":464},"continuous integration & delivery",{"text":160,"config":535},{"href":162,"dataGaName":536,"dataGaLocation":464},"value stream management",{"text":538,"config":539},"GitOps",{"href":540,"dataGaName":541,"dataGaLocation":464},"/fr-fr/solutions/gitops/","gitops",{"text":173,"config":543},{"href":175,"dataGaName":176,"dataGaLocation":464},{"text":178,"config":545},{"href":180,"dataGaName":181,"dataGaLocation":464},{"text":183,"config":547},{"href":185,"dataGaName":186,"dataGaLocation":464},{"text":549,"config":550},"Formation",{"href":551,"dataGaName":552,"dataGaLocation":464},"/fr-fr/solutions/education/","education",{"text":554,"config":555},"Services financiers",{"href":556,"dataGaName":557,"dataGaLocation":464},"/fr-fr/solutions/finance/","financial services",{"title":193,"links":559},[560,562,565,567,570,572,575,578,580,582,584,586,588],{"text":205,"config":561},{"href":207,"dataGaName":208,"dataGaLocation":464},{"text":563,"config":564},"Guides de démarrage rapide",{"href":212,"dataGaName":213,"dataGaLocation":464},{"text":215,"config":566},{"href":217,"dataGaName":218,"dataGaLocation":464},{"text":220,"config":568},{"href":222,"dataGaName":569,"dataGaLocation":464},"docs",{"text":243,"config":571},{"href":245,"dataGaName":246},{"text":573,"config":574},"Histoires de réussite client",{"href":240,"dataGaLocation":464},{"text":576,"config":577},"Histoires de succès client",{"href":240,"dataGaName":241,"dataGaLocation":464},{"text":248,"config":579},{"href":250,"dataGaName":251,"dataGaLocation":464},{"text":256,"config":581},{"href":258,"dataGaName":259,"dataGaLocation":464},{"text":261,"config":583},{"href":263,"dataGaName":264,"dataGaLocation":464},{"text":266,"config":585},{"href":268,"dataGaName":269,"dataGaLocation":464},{"text":271,"config":587},{"href":273,"dataGaName":274,"dataGaLocation":464},{"text":276,"config":589},{"href":278,"dataGaName":279,"dataGaLocation":464},{"title":294,"links":591},[592,594,597,599,601,603,605,609,614,616,618,620],{"text":301,"config":593},{"href":303,"dataGaName":296,"dataGaLocation":464},{"text":595,"config":596},"Emplois",{"href":308,"dataGaName":309,"dataGaLocation":464},{"text":314,"config":598},{"href":316,"dataGaName":317,"dataGaLocation":464},{"text":319,"config":600},{"href":321,"dataGaName":322,"dataGaLocation":464},{"text":324,"config":602},{"href":326,"dataGaName":327,"dataGaLocation":464},{"text":329,"config":604},{"href":331,"dataGaName":332,"dataGaLocation":464},{"text":606,"config":607},"Sustainability",{"href":608,"dataGaName":606,"dataGaLocation":464},"/sustainability/",{"text":610,"config":611},"Diversité, inclusion et appartenance (DIB)",{"href":612,"dataGaName":613,"dataGaLocation":464},"/fr-fr/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":334,"config":615},{"href":336,"dataGaName":337,"dataGaLocation":464},{"text":344,"config":617},{"href":346,"dataGaName":347,"dataGaLocation":464},{"text":349,"config":619},{"href":351,"dataGaName":352,"dataGaLocation":464},{"text":621,"config":622},"Déclaration de transparence sur l'esclavage moderne",{"href":623,"dataGaName":624,"dataGaLocation":464},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"title":354,"links":626},[627,630,635,637,642,647,652],{"text":628,"config":629},"Échanger avec un expert",{"href":56,"dataGaName":57,"dataGaLocation":464},{"text":631,"config":632},"Aide",{"href":633,"dataGaName":634,"dataGaLocation":464},"/support/","get help",{"text":368,"config":636},{"href":370,"dataGaName":371,"dataGaLocation":464},{"text":638,"config":639},"Statut",{"href":640,"dataGaName":641,"dataGaLocation":464},"https://status.gitlab.com/","status",{"text":643,"config":644},"Conditions d'utilisation",{"href":645,"dataGaName":646},"/terms/","terms of use",{"text":648,"config":649},"Déclaration de confidentialité",{"href":650,"dataGaName":651,"dataGaLocation":464},"/fr-fr/privacy/","privacy statement",{"text":653,"config":654},"Préférences en matière de cookies",{"dataGaName":655,"dataGaLocation":464,"id":656,"isOneTrustButton":29},"cookie preferences","ot-sdk-btn",{"items":658},[659,661,664],{"text":643,"config":660},{"href":645,"dataGaName":646,"dataGaLocation":464},{"text":662,"config":663},"Politique de confidentialité",{"href":650,"dataGaName":651,"dataGaLocation":464},{"text":653,"config":665},{"dataGaName":655,"dataGaLocation":464,"id":656,"isOneTrustButton":29},[667],{"id":668,"title":18,"body":8,"config":669,"content":671,"description":8,"extension":27,"meta":675,"navigation":29,"path":676,"seo":677,"stem":678,"__hash__":679},"blogAuthors/en-us/blog/authors/cesar-saavedra.yml",{"template":670},"BlogAuthor",{"name":18,"config":672},{"headshot":673,"ctfId":674},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659600/Blog/Author%20Headshots/csaavedra1-headshot.jpg","csaavedra1",{},"/en-us/blog/authors/cesar-saavedra",{},"en-us/blog/authors/cesar-saavedra","SMqRf-z0W5m5GROz_dXGjmuIb3YaOwm_n_RfeK16GcA",[681,693,707],{"content":682,"config":691},{"title":683,"description":684,"authors":685,"date":687,"body":688,"category":9,"tags":689,"heroImage":690},"GitLab Duo Agent Platform : comment réinventer le développement logiciel avec l’IA agentique","Découvrez comment GitLab Duo Agent Platform transforme la collaboration entre équipes de développement et les agents d’IA.\n",[686],"GitLab France Team","2026-02-24","> *Cet article de blog est un résumé de notre webinaire sur la Collaboration entre agents d’IA et développeurs animé par Lucas Rangeard (Solutions Architect) et Chloé Cartron (Senior Solutions Architect). Pour visionner le replay, [cliquez ici](https://learn.gitlab.com/fr-oct-agentic-ai/duo-ai-fr).* \n\nStructurer un besoin client en ticket, diviser un ticket en sous-tâches assignables, et implémenter la fonctionnalité : trois opérations qui, dans un cycle de développement traditionnel, s'enchaînent de manière séquentielle entraînant un goulot d'étranglement bien connu des [équipes DevOps](https://about.gitlab.com/fr-fr/topics/devops/build-a-devops-team/ \"équipes DevOps\").\n\nGrâce à GitLab Duo Agent Platform, ces trois tâches sont exécutées en parallèle, avec une merge request prête à être revue en quelques minutes. \n\nDécouvrez dans cet article les capacités de GitLab Duo Agent Platform conçue pour transformer la collaboration entre équipes de développement et agents intelligents et apprenez comment mettre en place des flows, de la création d’un ticket au développement d’une application à travers trois cas d’usage.\n\n## GitLab Duo Agent Platform : une orchestration agentique native\n\n[GitLab Duo Agent Platform](https://about.gitlab.com/fr-fr/gitlab-duo-agent-platform/ \"GitLab Duo Agent Platform\") représente une évolution majeure dans notre approche du DevSecOps. En disponibilité générale depuis janvier 2026 pour les clients GitLab Premium et GitLab Ultimate (GitLab.com et GitLab Self-Managed), GitLab Duo Agent Platform permet aux équipes de développement de collaborer avec des agents d’IA sur l'ensemble du cycle de développement logiciel ([SDLC](https://about.gitlab.com/fr-fr/blog/what-is-sdlc/ \"Qu'est-ce que le SDLC ?\")).\n\n> 🎯 Essayez [GitLab Duo Agent Platform](https://about.gitlab.com/fr-fr/gitlab-duo-agent-platform/?utm_medium=blog&utm_source=blog&utm_campaign=eg_emea_x_trial_x_fr_blog_fr) dès aujourd'hui !\n\n### L’orchestration agentique au coeur du SDLC\n\nNotre approche repose sur trois piliers interconnectés :\n\n* **Nous conservons ce qui fait notre force** : une plateforme unifiée avec un système de données centralisé et des APIs.\n* **Nous ajoutons une couche d'intelligence agentique** : des agents spécialisés travaillant ensemble et de manière autonome. \n* **Nous créons un graphe de connaissances reliant l'ensemble des données entre elles** : votre code, vos tickets, vos déploiements, vos scans de sécurité. Cette interconnexion permet aux agents de comprendre votre contexte complet et de prendre des décisions éclairées rapidement. \n\n### Des agents spécialisés tout au long du SDLC\n\nGitLab Duo Agent Platform ne vise pas à remplacer les équipes de développement, mais à leur fournir des partenaires capables d'exécuter des tâches en parallèle. \n\nLes utilisateurs ont accès à trois types d’agents différents : les [agents par défaut](https://docs.gitlab.com/user/duo_agent_platform/agents/foundational_agents/) comme [Planner](https://docs.gitlab.com/user/duo_agent_platform/agents/foundational_agents/planner/), [Security Analyst](https://docs.gitlab.com/user/duo_agent_platform/agents/foundational_agents/security_analyst_agent/) et [Data Analyst](https://docs.gitlab.com/user/duo_agent_platform/agents/foundational_agents/data_analyst/) pour les tâches courantes de développement, les [agents personnalisables](https://docs.gitlab.com/user/duo_agent_platform/agents/custom/) pour les workflows spécifiques à votre équipe, ainsi que les [agents externes](https://docs.gitlab.com/user/duo_agent_platform/agents/external/) comme Claude Code ou OpenAI Codex. Pour en savoir plus sur les agents, consultez notre article de blog [GitLab Duo Agent Platform : comprendre les agents](https://about.gitlab.com/fr-fr/blog/understanding-agents-foundational-custom-external/).\n\nCes agents partagent un contexte unifié. Ils peuvent accéder aux tickets, au code source, aux [pipelines CI/CD](https://about.gitlab.com/fr-fr/topics/ci-cd/cicd-pipeline/ \"Qu'est-ce qu'un pipeline CI/CD ?\"), aux merge requests et à l'historique de déploiement, selon les permissions données. \n\n> Chez NatWest, l'intégration des agents d’IA dans le cycle de développement logiciel a permis d'améliorer « la productivité, la vélocité et l'efficacité » des équipes, selon Bal Kang, Engineering Platform Lead. \n\n## Comment l'IA agentique réduit les temps d'attente entre chaque étape ?\n\nDans un cycle de développement traditionnel, les étapes s'enchaînent les unes après les autres. Rédaction des spécifications, découpage en tâches, implémentation, tests, revue de code : chaque phase attend la précédente. Ce modèle séquentiel génère des temps morts et limite la capacité des équipes à traiter plusieurs demandes simultanément.\n\nL'approche agentique change cette dynamique. En déléguant des tâches à des agents autonomes, les équipes de développement peuvent avancer sur plusieurs fronts en parallèle. Pendant qu'un agent implémente une fonctionnalité, un autre structure une nouvelle demande, et un troisième prépare une analyse de sécurité. Le cycle de développement global est raccourci.\n\nL'objectif : permettre aux équipes de développement de déléguer certaines tâches à des agents pendant qu'ils se concentrent sur d'autres tâches à plus forte valeur ajoutée, tout en gardant le contrôle sur les résultats.\n\n## 3 exemples de flows à tester\n\nDécouvrez comment GitLab Duo Agent Platform transforme le quotidien des équipes grâce à ces trois cas d'usage qui peuvent être exécutés simultanément. \n\n### Transformer une idée en ticket structuré\n\nAvec GitLab Duo Agentic Chat, les utilisateurs peuvent générer un ticket complet et personnalisable à partir d'une idée en formulant leur demande en langage naturel à l’aide du modèle IA de leur choix. \n\nCe ticket comprend le titre correspondant au besoin, la user story, les critères d'acceptance, les contraintes techniques, la « definition of done », ainsi que tout autre élément de gestion de projet propre aux équipes : personnes assignées, labels, date de début et date de fin de la tâche, confidentialité du ticket, etc.\n\nL'action proposée est soumise à validation. Une fois approuvé, le ticket apparaît dans le backlog en quelques secondes.\n\n### Diviser un ticket en sous-tâches\n\nUn ticket couvrant plusieurs fonctionnalités peut être divisé automatiquement en sous-tickets distincts. L'agent crée les sous tickets, maintient les références avec le ticket parent, et préserve la cohérence des critères d'acceptance. Ce mécanisme transforme un besoin business global en un ensemble de tâches assignables aux équipes. \n\n### Générer une merge request depuis un ticket\n\nÀ partir d’un ticket décrivant une fonctionnalité à implémenter, l'agent analyse le contexte du projet, comprend l'architecture existante, et génère le code correspondant. Il modifie les fichiers nécessaires, crée une merge request et le pipeline CI/CD se lance automatiquement.\n\nIl est également possible d'assigner GitLab Duo comme relecteur sur une merge request. L'agent analyse les changements, identifie les points d'attention et laisse des commentaires dans la merge request, offrant un premier niveau de revue avant la sollicitation des pairs.\n\n## Une collaboration entre humains et IA\n\nUn aspect distingue GitLab Duo Agent Platform des approches purement automatisées : chaque action proposée par un agent nécessite une validation explicite. L'utilisateur visualise ce que l'agent souhaite exécuter et approuve ou ajuste le travail effectué par l’agent avant d’effectuer une action.\nCette approche répond aux exigences des équipes en matière de gouvernance. L'agent accélère l'exécution, mais les décisions restent sous contrôle humain. Une approche indispensable dans un contexte où la qualité du code et la sécurité ne peuvent être compromises.\n\n## Le catalogue d’IA : un écosystème agentique\n\nAu-delà des agents natifs, GitLab développe un écosystème ouvert : le catalogue d’IA. Ce dernier permet de découvrir, utiliser et partager des agents et des flows développés par GitLab, ainsi que par toute la communauté.\n\nLes options de partage sont flexibles : ouverture à la communauté ou restriction à des usages internes selon les besoins de gouvernance.\n\nCette approche permet d'imaginer un agent expert en migration de bases de données, ou encore un flow d’optimisation de performance tous intégrés nativement dans GitLab. \n\nCes agents et flows s'intègrent à votre interface GitLab et identifient rapidement votre contexte et vos projets.\n\n## Prérequis\n\nPour utiliser GitLab Duo Agent Platform, plusieurs conditions sont requises :\n\n* Disposer de la version 18.8 ou ultérieure de GitLab ou d’un compte GitLab.com.\n* Être abonné à [GitLab Premium](https://about.gitlab.com/fr-fr/pricing/premium/) ou [GitLab Ultimate](https://about.gitlab.com/fr-fr/pricing/ultimate/)\n\nGitLab Duo Agent Platform utilise par défaut les modèles d'IA fournis par GitLab. Une configuration alternative utilisant les modèles des clients est disponible [pour les installations auto hébergées](https://docs.gitlab.com/administration/gitlab_duo_self_hosted/#gitlab-duo-agent-platform). Pour en savoir plus, consultez notre article [IA agentique avec contrôle d'entreprise : GitLab Duo Agent Platform Self-Hosted et BYOM](https://about.gitlab.com/fr-fr/blog/agentic-ai-enterprise-control-self-hosted-duo-agent-platform-and-byom/).\n\n## Perspectives : l'IA agentique au coeur du DevSecOps\n\nGitLab Duo Agent Platform marque une évolution dans l'intégration de l'IA dans le cycle de développement DevSecOps. Il ne s'agit plus uniquement de suggestions de code, mais d'une véritable orchestration agentique où des agents spécialisés prennent en charge des workflows complets.\n\nVous souhaitez en savoir plus sur les flows ? Consultez notre article [Comprendre les flows : workflows multi-agents](https://about.gitlab.com/fr-fr/blog/understanding-flows-multi-agent-workflows/) et découvrez comment utiliser les [flows par défaut](https://docs.gitlab.com/user/duo_agent_platform/flows/foundational_flows/) et les [flows personnalisables](https://docs.gitlab.com/user/duo_agent_platform/flows/custom/).\n\n> 🎯 Essayez [GitLab Duo Agent Platform](https://about.gitlab.com/fr-fr/gitlab-duo-agent-platform/?utm_medium=blog&utm_source=blog&utm_campaign=eg_emea_x_trial_x_fr_blog_fr) dès aujourd'hui !",[24],"https://res.cloudinary.com/about-gitlab-com/image/upload/v1765809212/noh0mdfn9o94ry9ykura.png",{"featured":12,"template":13,"slug":692},"gitlab-duo-agent-platform-software-development-agentic-ai",{"content":694,"config":705},{"title":695,"description":696,"authors":697,"heroImage":699,"date":700,"body":701,"category":9,"tags":702},"IA agentique avec contrôle d'entreprise : GitLab Duo Agent Platform Self-Hosted et BYOM","Découvrez comment GitLab 18.9 offre aux entreprises des secteurs réglementés une IA agentique gouvernée grâce à GitLab Duo Agent Platform Self-Hosted et à la prise en charge Bring Your Own Model.",[698],"Rebecca Carter","https://res.cloudinary.com/about-gitlab-com/image/upload/v1771438388/t6sts5qw4z8561gtlxiq.png","2026-02-19","Pour les organisations qui opèrent dans des secteurs réglementés, la transition vers l'automatisation alimentée par l'IA s'accompagne de contraintes strictes. La résidence des données, le contrôle des fournisseurs et la gouvernance ne sont pas négociables. De nombreuses organisations ont déjà investi massivement dans leurs propres modèles, avec des processus d'approbation rigoureux qui régissent leur fonctionnement et leur déploiement.\n\nAvec [GitLab 18.9](https://about.gitlab.com/releases/2026/02/19/gitlab-18-9-released/), nous proposons deux fonctionnalités qui comblent une lacune stratégique critique pour ces organisations et transformons [GitLab Duo Agent Platform](https://about.gitlab.com/fr-fr/gitlab-duo-agent-platform/) en un plan de contrôle d'IA prêt à être déployé et gouvernable pour les environnements réglementaires les plus stricts.\n\n## GitLab Duo Agent Platform Self-Hosted pour les licences cloud en ligne\nAvec GitLab Duo Agent Platform, les équipes d'ingénierie créent des flows alimentés par l'IA qui automatisent des séquences de tâches, allant de la refactorisation des services au renforcement des pipelines CI/CD en passant par la hiérarchisation des vulnérabilités. Jusqu'à présent, l'utilisation de GitLab Duo Agent Platform en production avec des modèles auto-hébergés était principalement alignée sur des chemins de licence hors ligne ou complémentaires et n'était pas conçue pour les clients disposant de licences cloud en ligne qui opèrent dans des environnements avec des réglementations strictes.\n\nDésormais en disponibilité générale, [GitLab Duo Agent Platform Self-Hosted pour les licences cloud en ligne](https://docs.gitlab.com/subscriptions/subscription-add-ons/#gitlab-duo-agent-platform-self-hosted) introduit un modèle de facturation basé sur l'usage alimenté par les [GitLab Credits](https://about.gitlab.com/fr-fr/blog/introducing-gitlab-credits/). Cette approche offre la mesure transparente et prévisible dont les entreprises ont besoin pour instaurer la confiance et la refacturation interne.\n* **Résidence et contrôle des données** : vous pouvez désormais exécuter GitLab Duo Agent Platform en production sur des licences cloud en ligne tout en utilisant des modèles hébergés sur votre propre infrastructure ou dans des environnements cloud approuvés. Vous contrôlez ainsi le lieu d'exécution des modèles et la façon dont le trafic d'inférence est acheminé dans vos environnements approuvés.\n* **Transparence des coûts et refacturation** : bénéficiez d'une transparence granulaire des coûts grâce aux GitLab Credits et au décompte par requête, deux éléments essentiels pour une refacturation interne précise et le respect des normes réglementaires en matière de reporting.\n* **Accélération de l'adoption** : supprime un obstacle majeur au déploiement de l'IA agentique dans des secteurs comme les services financiers, les administrations publiques et les infrastructures critiques, où l'acheminement des données via des fournisseurs d'IA externes n'est tout simplement pas envisageable. Avec GitLab 18.9, GitLab Duo Agent Platform devient un environnement de déploiement de premier ordre pour les licences cloud en ligne.\n\n## Bring Your Own Model\nL'auto-hébergement de la couche d'orchestration n'est qu'une partie de la solution. De nombreux clients de secteurs réglementés ont déjà investi massivement dans leurs propres modèles : des LLM adaptés à leur domaine, des déploiements dans une région dédiée ou air-gapped pour la souveraineté des données, et des modèles fermés et internes conçus en fonction d'un profil de risque spécifique.\n\n**Bring Your Own Model (BYOM)** renforce la flexibilité de GitLab Duo Agent Platform. Les administrateurs peuvent connecter des modèles tiers ou auto-hébergés via la [passerelle d'IA (AI-Gateway) de GitLab](https://docs.gitlab.com/administration/gitlab_duo/gateway/), et les clients choisissent et contrôlent le modèle.\n* **Intégration et gouvernance** : les modèles BYOM apparaissent aux côtés des modèles gérés par GitLab dans le plan de contrôle d'IA de GitLab. GitLab Duo Agent Platform peut ainsi les traiter comme des options prêtes à l'emploi pour l'entreprise.\n* **Mappage granulaire** : une fois enregistrés via la passerelle d'IA, les modèles peuvent être mappés à des flows ou des fonctionnalités spécifiques de GitLab Duo Agent Platform. Vous pouvez ainsi exercer un contrôle étroit sur les agents et les flows, ainsi que sur les modèles utilisés. Les administrateurs restent toujours responsables de la validation des modèles, des performances et de l'évaluation des risques. Vous êtes responsable de la compatibilité, des performances et de l'évaluation des risques pour les modèles que vous apportez.\n\nEnsemble, ces fonctionnalités donnent aux responsables d'ingénierie un contrôle complet sur l'IA agentique. Ce plan de contrôle unique et gouverné pour l'IA agentique remplace l'ensemble fragmenté de solutions ponctuelles et d'outils d'IA non gérés sur lesquels de nombreuses organisations s'appuient aujourd'hui. Il s'agit d'une combinaison que les organisations réglementées réclamaient depuis longtemps : la liberté de choisir son modèle accompagnée d'une gouvernance forte, au sein de la même plateforme DevSecOps en laquelle elles ont déjà confiance.\n\n> Vous souhaitez essayer GitLab Duo Agent Platform ? [Contactez-nous ou commencez un essai gratuit dès aujourd'hui](https://about.gitlab.com/fr-fr/gitlab-duo-agent-platform/?utm_medium=blog&utm_source=blog&utm_campaign=eg_emea_x_trial_x_fr_blog_fr).\n\n-----------\n\n_Cet article de blog contient des « déclarations prospectives » au sens de la section 27A du Securities Act de 1933, tel que modifié, et de la section 21E du Securities Exchange Act de 1934. Bien que nous croyions que les attentes reflétées dans ces déclarations sont raisonnables, elles sont soumises à des risques, incertitudes, hypothèses et autres facteurs connus et inconnus qui peuvent entraîner des résultats ou des issues réels sensiblement différents. Des informations supplémentaires sur ces risques et autres facteurs sont incluses sous la rubrique « Facteurs de risque » dans nos dépôts auprès de la SEC. Nous ne nous engageons pas à mettre à jour ou à réviser ces déclarations après la date de cet article de blog, sauf si la loi l'exige._",[24,703,704],"product","features",{"featured":29,"template":13,"slug":706},"agentic-ai-enterprise-control-self-hosted-duo-agent-platform-and-byom",{"content":708,"config":720},{"description":709,"body":710,"title":711,"heroImage":712,"date":713,"authors":714,"category":9,"tags":716},"Ce guide explique comment déployer un agent d'IA basé sur l'Agent Development Kit vers Google Kubernetes Engine à l'aide de la plateforme DevSecOps de GitLab en toute simplicité et sécurité.","Créer des [agents d'IA](https://about.gitlab.com/fr-fr/gitlab-duo/agent-platform/) est passionnant, mais leur déploiement sécurisé en production est parfois compliqué. Dans ce tutoriel, vous découvrirez comment [l'intégration native de GitLab avec Google Cloud](https://cloud.google.com/blog/topics/partners/understand-the-google-cloud-gitlab-integration) facilite le déploiement d'agents d'IA vers Google Kubernetes Engine (GKE), avec scans de sécurité intégrés et sans clés de compte de service.\n\n\n\n## Pourquoi choisir GKE pour déployer vos agents d'IA ?\n\n\n\nGKE offre une orchestration d'entreprise qui s'intègre parfaitement aux pipelines [CI/CD](https://about.gitlab.com/fr-fr/topics/ci-cd/) de GitLab grâce à l'authentification OpenID Connect (OIDC). Votre équipe de développement peut déployer des agents d'IA tout en conservant une visibilité, une conformité et un contrôle complets sur votre infrastructure cloud. Ce guide utilise l'Agent Development Kit ([ADK](https://developers.googleblog.com/en/agent-development-kit-easy-to-build-multi-agent-applications/)) de Google afin de créer l'application, ce qui garantit une intégration fluide lors du déploiement avec GitLab.\n\n\n\nVoici trois avantages clés de cette approche :\n\n\n\n**Contrôle total de l'infrastructure :** vos données, vos règles, votre environnement. Vous conservez un contrôle complet sur l'emplacement d'exécution de vos agents d'IA et de leur configuration.\n\n\n\n **Intégration native avec GitLab :** pas de solution de contournement complexe. Vos pipelines existants fonctionnent immédiatement grâce à l'intégration native de GitLab avec Google Cloud.\n\n\n\n **Mise à l'échelle de niveau production :** GKE gère automatiquement la mise à l'échelle et l'orchestration interne à mesure que vos charges de travail d'IA augmentent.\n\n\n\nAvec GKE, GitLab offre la fiabilité d'entreprise dont vos déploiements d'IA ont besoin sans sacrifier l'expérience développeur que vos équipes attendent.\n\n\n\n## Prérequis\n\n\n\nAvant de commencer, assurez-vous d'avoir activé ces API :\n\n\n\n- API GKE\n\n\n- API Artifact Registry\n\n\n- API Vertex AI\n\n\n\nAssurez-vous également de disposer des éléments suivant :\n\n\n- Un projet GitLab créé\n\n\n- Un cluster GKE provisionné\n\n\n- Un dépôt Artifact Registry créé\n\n\n\n## Le processus de déploiement\n\n\n\n### 1. Configurer IAM et les autorisations sur GitLab\n\n\n\nAccédez à vos intégrations GitLab afin de configurer l'authentification Google Cloud (IAM).\n\n\n\nAccédez à **Paramètres > Intégrations** et configurez l'intégration Google Cloud. Si vous utilisez une intégration au niveau du groupe, notez que les paramètres par défaut sont déjà hérités par les projets. Il vous suffit donc de configurer vos paramètres une fois au niveau du groupe pour que tous les projets en bénéficient et les héritent.\n\n\n\nPour configurer les paramètres, vous devez fournir les éléments suivants :\n\n\n- ID du projet\n\n\n- Numéro du projet \n\n\n- ID du pool d'identités de charge de travail\n\n- ID du fournisseur\n\n\n\nUne fois ces informations renseignées, GitLab fournit un script à exécuter dans Google Cloud Console via Cloud Shell. Le résultat de l'exécution de ce script est un pool de fédération d'identité de charge de travail avec l'identité de service de compte principal nécessaire pour permettre l'accès approprié.\n\n\n### 2. Configurer l'intégration à Artifact Registry\n\n\n\nToujours dans les paramètres d'intégration de GitLab, configurez la gestion des artefacts :\n\n\n\n1. Cliquez sur **Gestion des artefacts**.\n\n\n2. Sélectionnez **Google Artifact Registry**.\n\n\n3. Indiquez les éléments suivants :\n      - ID du projet\n      - Nom du dépôt (créé au préalable)\n      - Emplacement du dépôt\n\nGitLab fournit un autre script à exécuter dans Google Cloud Console.\n\n\n\n**Important :** avant de continuer, ajoutez ces rôles supplémentaires au pool de fédération d'identité de charge de travail :\n\n\n- Utilisateur de compte de service\n\n\n- Développeur Kubernetes\n\n\n- Observateur de cluster Kubernetes\n\n\n\nCes autorisations permettent à GitLab de déployer vers GKE dans les étapes suivantes.\n\n\n\n### 3. Créer le pipeline CI/CD\n\n\n\nVoici maintenant la partie essentielle : la création du [pipeline CI/CD](https://about.gitlab.com/fr-fr/topics/ci-cd/cicd-pipeline/ \"Pipeline CI/CD\") pour le déploiement.\n\n\n\nAccédez à **Compilation > Éditeur de pipeline** et définissez votre pipeline en quatre étapes :\n\n\n\n* **Build :** Docker crée l'image de conteneur.\n\n\n\n* **Test :** GitLab Auto DevOps fournit des scans de sécurité intégrés afin de garantir l'absence de vulnérabilités.\n\n\n\n* **Importation :** utilise le composant CI/CD intégré de GitLab pour effectuer un push vers Google Artifact Registry.\n\n\n\n* **Déploiement :** utilise la configuration [Kubernetes](https://about.gitlab.com/fr-fr/blog/kubernetes-the-container-orchestration-solution/ \"Kubernetes\") pour déployer vers GKE.\n\n\n\nVoici le fichier `.gitlab-ci.yml` complet :\n\n\n    ```yaml\n\n\n\n    default:\n      tags: [ saas-linux-2xlarge-amd64 ]\n\n    stages:\n      - build\n      - test\n      - upload\n      - deploy\n\n    variables:\n      GITLAB_IMAGE: $CI_REGISTRY_IMAGE/main:$CI_COMMIT_SHORT_SHA\n      AR_IMAGE: $GOOGLE_ARTIFACT_REGISTRY_REPOSITORY_LOCATION-docker.pkg.dev/$GOOGLE_ARTIFACT_REGISTRY_PROJECT_ID/$GOOGLE_ARTIFACT_REGISTRY_REPOSITORY_NAME/main:$CI_COMMIT_SHORT_SHA\n      GCP_PROJECT_ID: \"your-project-id\"\n      GKE_CLUSTER: \"your-cluster\"\n      GKE_REGION: \"us-central1\"\n      KSA_NAME: \"ai-agent-ksa\"\n\n    build:\n      image: docker:24.0.5\n      stage: build\n      services:\n        - docker:24.0.5-dind\n      before_script:\n        - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY\n      script:\n        - docker build -t $GITLAB_IMAGE .\n        - docker push $GITLAB_IMAGE\n\n    include:\n      - template: Jobs/Dependency-Scanning.gitlab-ci.yml\n      - template: Jobs/Container-Scanning.gitlab-ci.yml\n      - template: Jobs/Secret-Detection.gitlab-ci.yml\n      - component: gitlab.com/google-gitlab-components/artifact-registry/upload-artifact-registry@main\n        inputs:\n          stage: upload\n          source: $GITLAB_IMAGE\n          target: $AR_IMAGE\n\n    deploy:\n      stage: deploy\n      image: google/cloud-sdk:slim\n      identity: google_cloud\n      before_script:\n        - apt-get update && apt-get install -y kubectl google-cloud-sdk-gke-gcloud-auth-plugin\n        - gcloud container clusters get-credentials $GKE_CLUSTER --region $GKE_REGION --project $GCP_PROJECT_ID\n      script:\n        - |\n          kubectl apply -f - \u003C\u003CEOF\n          apiVersion: apps/v1\n          kind: Deployment\n          metadata:\n            name: ai-agent\n            namespace: default\n          spec:\n            replicas: 2\n            selector:\n              matchLabels:\n                app: ai-agent\n            template:\n              metadata:\n                labels:\n                  app: ai-agent\n              spec:\n                serviceAccountName: $KSA_NAME\n                containers:\n                - name: ai-agent\n                  image: $AR_IMAGE\n                  ports:\n                  - containerPort: 8080\n                  resources:\n                    requests: {cpu: 500m, memory: 1Gi}\n                    limits: {cpu: 2000m, memory: 4Gi}\n                  livenessProbe:\n                    httpGet: {path: /health, port: 8080}\n                    initialDelaySeconds: 60\n                  readinessProbe:\n                    httpGet: {path: /health, port: 8080}\n                    initialDelaySeconds: 30\n          ---\n          apiVersion: v1\n          kind: Service\n          metadata:\n            name: ai-agent-service\n            namespace: default\n          spec:\n            type: LoadBalancer\n            ports:\n            - port: 80\n              targetPort: 8080\n            selector:\n              app: ai-agent\n          ---\n          apiVersion: autoscaling/v2\n          kind: HorizontalPodAutoscaler\n          metadata:\n            name: ai-agent-hpa\n            namespace: default\n          spec:\n            scaleTargetRef:\n              apiVersion: apps/v1\n              kind: Deployment\n              name: ai-agent\n            minReplicas: 2\n            maxReplicas: 10\n            metrics:\n            - type: Resource\n              resource:\n                name: cpu\n                target: {type: Utilization, averageUtilization: 70}\n          EOF\n          \n          kubectl rollout status deployment/ai-agent -n default --timeout=5m\n          EXTERNAL_IP=$(kubectl get service ai-agent-service -n default -o jsonpath='{.status.loadBalancer.ingress[0].ip}')\n          echo \"Deployed at: http://$EXTERNAL_IP\"\n      only:\n        - main\n```\n\n\n#### Configuration essentielle pour GKE\n\n\n\nPour que tout fonctionne, et c'est la raison pour laquelle nous avons besoin de cette configuration supplémentaire pour GKE, nous devons disposer d'un compte de service Kubernetes dans le cluster qui peut fonctionner avec Vertex AI. Ce compte de service doit être autorisé à accéder aux capacités d'IA de Google Cloud.\n\n\n\nSans cela, nous pouvons déployer l'application, mais l'agent d'IA ne fonctionnera pas. Nous devons créer un compte de service Kubernetes capable d'accéder à Vertex AI.\n\n\n\nExécutez cette configuration ponctuelle :\n\n\n\n    ```bash\n\n\n\n    #!/bin/bash\n\n\n\n    PROJECT_ID=\"your-project-id\"\n\n\n\n    GSA_NAME=\"ai-agent-vertex\"\n\n\n\n    GSA_EMAIL=\"${GSA_NAME}@${PROJECT_ID}.iam.gserviceaccount.com\"\n\n\n\n    KSA_NAME=\"ai-agent-ksa\"\n\n\n\n    CLUSTER_NAME=\"your-cluster\"\n\n\n\n    REGION=\"us-central1\"\n\n\n\n\n    # Create GCP Service Account\n\n\n\n    gcloud iam service-accounts create $GSA_NAME \\\n        --display-name=\"AI Agent Vertex AI\" \\\n        --project=$PROJECT_ID\n\n    # Grant Vertex AI permissions\n\n\n\n    gcloud projects add-iam-policy-binding $PROJECT_ID \\\n        --member=\"serviceAccount:${GSA_EMAIL}\" \\\n        --role=\"roles/aiplatform.user\"\n\n    # Get cluster credentials\n\n\n\n    gcloud container clusters get-credentials $CLUSTER_NAME \\\n        --region $REGION --project $PROJECT_ID\n\n    # Create Kubernetes Service Account\n\n\n\n    kubectl create serviceaccount $KSA_NAME -n default\n\n\n\n\n    # Link accounts\n\n\n\n    kubectl annotate serviceaccount $KSA_NAME -n default \\\n        iam.gke.io/gcp-service-account=${GSA_EMAIL}\n\n    gcloud iam service-accounts add-iam-policy-binding ${GSA_EMAIL} \\\n        --role=roles/iam.workloadIdentityUser \\\n        --member=\"serviceAccount:${PROJECT_ID}.svc.id.goog[default/${KSA_NAME}]\" \\\n        --project=$PROJECT_ID\n```\n\n\n### 4. Déployer vers GKE\n\n\n\nUne fois que vous avez terminé, effectuez un push vers le pipeline et le tour est joué.\n\n\n\nLe pipeline vient d'être déployé. Accédez à **CI/CD > Pipelines** pour voir les quatre étapes :\n\n\n- Build\n\n\n- Test (avec tous les scans de sécurité définis)\n\n\n- Importation vers Artifact Registry (réussie)\n\n\n- Déploiement vers Kubernetes dans GKE (réussi)\n\n\n\n## Résumé\n\n\n\nAvec GitLab et Google Cloud, vous êtes en mesure de déployer votre agent d'IA vers GKE en toute simplicité et sécurité en quelques étapes seulement grâce à l'intégration native de GitLab avec Google Cloud.\n\n\nRegardez cette démo :\n\n\n\u003C!-- blank line -->\n\n\u003Cfigure class=\"video_container\">\n  \u003Ciframe src=\"https://www.youtube.com/embed/mc2pCL5Qjus?si=QoH02lvz5KH5Ku9O\" frameborder=\"0\" allowfullscreen=\"true\"> \u003C/iframe>\n\u003C/figure>\n\n\u003C!-- blank line -->\n\n\n> Utilisez [l'exemple de code complet de ce tutoriel](https://gitlab.com/gitlab-partners-public/google-cloud/demos/gke-ai-agent) pour commencer dès maintenant. Vous n’utilisez pas encore GitLab ? Découvrez la plateforme DevSecOps et profitez d'[un essai gratuit](https://about.gitlab.com/fr-fr/free-trial/). Les startups hébergées sur Google Cloud disposent d'[une offre spéciale pour essayer et utiliser GitLab](https://about.gitlab.com/fr-fr/solutions/startups/google-cloud/).","Déploiement sécurisé d'agents d'IA sur GKE","https://res.cloudinary.com/about-gitlab-com/image/upload/f_auto,q_auto,c_lfill/v1749670563/Blog/Hero%20Images/cloudcomputing.jpg","2026-02-06",[715],"Regnard Raquedan",[24,717,718,719],"google","cloud native","tutorial",{"featured":12,"template":13,"slug":721},"secure-ai-agent-deployment-to-gke",{"promotions":723},[724,737,748],{"id":725,"categories":726,"header":727,"text":728,"button":729,"image":734},"ai-modernization",[9],"Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":730,"config":731},"Get your AI maturity score",{"href":732,"dataGaName":733,"dataGaLocation":246},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":735},{"src":736},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":738,"categories":739,"header":740,"text":728,"button":741,"image":745},"devops-modernization",[703,39],"Are you just managing tools or shipping innovation?",{"text":742,"config":743},"Get your DevOps maturity score",{"href":744,"dataGaName":733,"dataGaLocation":246},"/assessments/devops-modernization-assessment/",{"config":746},{"src":747},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":749,"categories":750,"header":752,"text":728,"button":753,"image":757},"security-modernization",[751],"security","Are you trading speed for security?",{"text":754,"config":755},"Get your security maturity score",{"href":756,"dataGaName":733,"dataGaLocation":246},"/assessments/security-modernization-assessment/",{"config":758},{"src":759},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"header":761,"blurb":762,"button":763,"secondaryButton":767},"Commencez à développer plus rapidement dès aujourd'hui","Découvrez ce que votre équipe peut accomplir avec la plateforme d'orchestration intelligente pour le DevSecOps.\n",{"text":49,"config":764},{"href":765,"dataGaName":52,"dataGaLocation":766},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/fr-fr/","feature",{"text":54,"config":768},{"href":56,"dataGaName":57,"dataGaLocation":766},1772652095344]