[{"data":1,"prerenderedAt":1054},["ShallowReactive",2],{"/fr-fr/blog/automate-embedded-systems-compliance-with-gitlab-and-codesonar":3,"navigation-fr-fr":257,"banner-fr-fr":691,"footer-fr-fr":699,"blog-post-authors-fr-fr-Mark Hermeling|Darwin Sanoy":937,"blog-related-posts-fr-fr-automate-embedded-systems-compliance-with-gitlab-and-codesonar":966,"blog-promotions-fr-fr":992,"next-steps-fr-fr":1045},{"id":4,"title":5,"authors":6,"body":9,"category":236,"date":237,"description":238,"extension":239,"externalUrl":240,"faq":240,"featured":241,"heroImage":242,"meta":243,"navigation":241,"path":244,"seo":245,"slug":250,"stem":251,"tags":252,"template":255,"updatedDate":240,"__hash__":256},"blogPosts/fr-fr/blog/automate-embedded-systems-compliance-with-gitlab-and-codesonar.md","Automatisez la conformité des systèmes embarqués avec GitLab et CodeSonar",[7,8],"Mark Hermeling","Darwin Sanoy",{"type":10,"value":11,"toc":227},"minimark",[12,16,25,30,33,41,45,55,58,87,91,94,107,111,114,135,139,142,159,163,177,186,191,213],[13,14,15],"p",{},"Les équipes de développement de systèmes embarqués sont confrontées à un défi récurrent : maintenir une vélocité de développement élevée tout en respectant des exigences strictes en matière de sécurité fonctionnelle et de qualité du code. Les normes telles qu'ISO 26262, IEC 62304, DO-178C et IEC 61508 exigent des processus de vérification rigoureux souvent manuels et chronophages. Les revues de conformité aux normes de codage comme MISRA C/C++, les workflows d'analyse isolés et les vérifications post-développement créent des goulots d'étranglement qui forcent les équipes à choisir entre rapidité et sécurité.",[13,17,18,24],{},[19,20,23],"a",{"href":21,"rel":22},"https://gitlab.com/explore/catalog/codesonar/components/codesonar-ci",[],"L'intégration de GitLab avec CodeSonar"," (d'AdaCore) relève ce défi grâce à une automatisation des workflows de conformité et une vérification continue tout au long du cycle de développement logiciel.",[26,27,29],"h2",{"id":28},"scan-spécialisé-pour-les-systèmes-critiques","Scan spécialisé pour les systèmes critiques",[13,31,32],{},"Les systèmes critiques nécessitent une analyse approfondie du code C/C++ compilé avec des outils embarqués spécialisés. Ces systèmes doivent démontrer leur conformité aux normes de codage (MISRA C/C++, CERT C/C++, AUTOSAR C++) et aux frameworks de sécurité fonctionnelle (ISO 26262, DO-178C, IEC 61508) qui exigent des pistes d'audit détaillées. Outre l'alignement avec les normes de codage, les équipes doivent également traiter les incidents de sécurité et tester les problèmes de mémoire, les variables non initialisées et l'injection de commandes.",[13,34,35,40],{},[19,36,39],{"href":37,"rel":38},"https://www.adacore.com/codesonar",[],"CodeSonar"," effectue une analyse complète du programme avec des capacités d'analyse spécialisées pour ces normes. L'association de CodeSonar avec GitLab permet aux équipes d'automatiser les workflows de conformité et de maintenir des pistes d'audit complètes tout au long du cycle de développement.",[26,42,44],{"id":43},"automatisation-de-la-conformité-du-commit-au-merge","Automatisation de la conformité du commit au merge",[13,46,47,48,54],{},"L'intégration de GitLab et CodeSonar offre une approche Compliance-as-Code qui automatise l'application des politiques dès les premières étapes du développement. CodeSonar fonctionne comme un scanner supplémentaire au sein des ",[19,49,53],{"href":50,"rel":51,"title":52},"https://about.gitlab.com/fr-fr/topics/ci-cd/cicd-pipeline/",[],"Pipeline CI/CD","pipelines CI/CD GitLab"," et analyse le code à chaque commit et merge request.",[13,56,57],{},"Conçu spécifiquement pour les systèmes embarqués, CodeSonar effectue une analyse approfondie du flux de contrôle et de données sur l'ensemble des programmes. Il identifie les vulnérabilités telles que les dépassements de mémoire tampon, la contamination des données, les variables non initialisées, les conditions « use-after-free » (tentative d'accès à la mémoire) et l'injection de commandes : il s'agit là des causes profondes de la plupart des incidents de sécurité dans les systèmes embarqués.",[13,59,60,61,67,68,73,74,80,81,86],{},"L'intégration fonctionne via la configuration ",[19,62,66],{"href":63,"rel":64,"title":65},"https://about.gitlab.com/topics/ci-cd/",[],"Qu'est-ce que le CI/CD ?","CI/CD"," de GitLab. Lorsque les équipes de développement effectuent un push des modifications de code, le pipeline déclenche le scan CodeSonar. Pour les firmwares C et C++, CodeSonar observe les invocations du compilateur pendant le processus de build réel et crée une représentation interne du code en vue d'une analyse sophistiquée. Les résultats sont convertis du format SARIF au format de test statique de sécurité des applications (",[19,69,72],{"href":70,"rel":71},"https://docs.gitlab.com/user/application_security/sast/",[],"SAST",") de GitLab et affichés directement dans les merge requests, où ils alimentent le tableau de bord de sécurité de GitLab Ultimate, la ",[19,75,79],{"href":76,"rel":77,"title":78},"https://about.gitlab.com/fr-fr/blog/what-is-vulnerability-management/",[],"Gestion des vulnerabilités","gestion des vulnérabilités"," et les ",[19,82,85],{"href":83,"rel":84},"https://docs.gitlab.com/user/compliance/compliance_frameworks/",[],"frameworks de conformité",".",[26,88,90],{"id":89},"exemple-de-workflow-conformité-à-la-norme-iso-26262-asil-d","Exemple de workflow : conformité à la norme ISO 26262 ASIL-D",[13,92,93],{},"La vidéo de démonstration ci-dessous présente le workflow complet pour un système embarqué soumis aux exigences de la norme ISO 26262 ASIL-D. Le scénario illustre comment les équipes de développement embarqué peuvent mettre en œuvre une conformité continue sans compromettre la vélocité de développement.",[95,96,98],"div",{"style":97},"padding:56.25% 0 0 0;position:relative;",[99,100],"iframe",{"src":101,"frameBorder":102,"allow":103,"referrerPolicy":104,"style":105,"title":106},"https://player.vimeo.com/video/1139086924?badge=0&autopause=0&player_id=0&app_id=58479","0","autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share","strict-origin-when-cross-origin","position:absolute;top:0;left:0;width:100%;height:100%;","Automated Compliance for Embedded Systems using GitLab and CodeSonar",[108,109],"script",{"src":110},"https://player.vimeo.com/api/player.js",[13,112,113],{},"Le workflow commence lorsqu'un développeur soumet une merge request afin de modifier le firmware. Le pipeline CI/CD de GitLab déclenche automatiquement le scan CodeSonar, qui effectue une analyse approfondie C/C++ des politiques ISO 26262 personnalisées configurées dans le pipeline. Lorsque CodeSonar identifie une vulnérabilité pertinente pour ASIL-D, le pipeline s'arrête automatiquement conformément à la politique de conformité et fournit une documentation claire du problème. Les résultats complets du scan, le suivi des tickets et le workflow d'approbation sont conservés dans GitLab comme source unique de vérité pour les pistes d'audit.",[13,115,116,117,122,123,128,129,134],{},"Les équipes de développement peuvent utiliser à la fois l'interface hub de CodeSonar et ",[19,118,121],{"href":119,"rel":120},"https://docs.gitlab.com/user/gitlab_duo/",[],"GitLab Duo"," pour comprendre la vulnérabilité. CodeSonar fournit des informations détaillées sur le chemin dans le code source qui mène au problème, ainsi que des fonctionnalités de navigation dans le code pour isoler la cause profonde. GitLab Duo ",[19,124,127],{"href":125,"rel":126},"https://docs.gitlab.com/user/application_security/vulnerabilities/#vulnerability-explanation",[],"explique la vulnérabilité"," et fournit des ",[19,130,133],{"href":131,"rel":132},"https://docs.gitlab.com/user/application_security/vulnerabilities/#vulnerability-resolution",[],"recommandations de correction"," spécifiques. Une fois la correction implémentée et la résolution validée, le code est fusionné, et les équipes disposent également de preuves de conformité qui ont été automatiquement collectées tout au long du processus.",[26,136,138],{"id":137},"avantages-de-lintégration","Avantages de l'intégration",[13,140,141],{},"Les organisations qui mettent en œuvre cette conformité intégrée avec GitLab et CodeSonar constateront des améliorations significatives tant au niveau de la vélocité de développement que de la confiance en matière de conformité.",[143,144,145,153],"ul",{},[146,147,148,152],"li",{},[149,150,151],"strong",{},"Gains d'efficacité :"," les équipes de développement réduisent le délai de mise sur le marché, car elles détectent les problèmes de conformité aux normes de codage tôt, lorsqu'ils sont moins coûteux à corriger. L'application automatisée des politiques de sécurité réduit la charge de travail liée aux revues de sécurité manuelles et permet aux spécialistes de se concentrer sur des problèmes complexes plutôt que sur des vérifications routinières. La préparation aux audits s'améliore grâce à la collecte automatisée de preuves. Les artefacts de conformité sont générés comme un sous-produit du développement normal plutôt que lors de tâches de documentation séparées.",[146,154,155,158],{},[149,156,157],{},"Maturité de la conformité :"," cette approche intégrée aide les organisations à maintenir une conformité continue avec les normes et réglementations du secteur. En intégrant la vérification dans chaque modification de code, les équipes construisent des pistes d'audit complètes qui démontrent l'adhésion aux normes ISO 26262, DO-178C, MISRA C/C++ et d'autres exigences. Le workflow automatisé transforme la conformité d'un point de contrôle périodique en un processus de vérification continu.",[26,160,162],{"id":161},"considérations-relatives-à-limplémentation","Considérations relatives à l'implémentation",[13,164,165,166,172,173,176],{},"La mise en œuvre de l'intégration GitLab et CodeSonar nécessite un accès à GitLab Ultimate, un hub CodeSonar, des ",[19,167,171],{"href":168,"rel":169,"title":170},"https://about.gitlab.com/fr-fr/blog/what-is-gitlab-runner/",[],"GitLab Runner","runners GitLab"," où le code peut être compilé et analysé, ainsi que des mécanismes appropriés pour la gestion des fichiers de données d'analyse. GitLab et CodeSonar prennent tous deux entièrement en charge ",[149,174,175],{},"les environnements sur site et air-gapped"," et peuvent également être déployés dans des environnements cloud auto-évolutifs.",[13,178,179,180,185],{},"Les équipes doivent configurer des ",[19,181,184],{"href":182,"rel":183},"https://about.gitlab.com/fr-fr/blog/introducing-custom-compliance-frameworks-in-gitlab/",[],"frameworks de conformité personnalisés"," dans GitLab pour définir des politiques spécifiques à leurs normes pertinentes : ISO 26262 pour l'automobile, DO-178C pour l'aérospatiale, IEC 62304 pour les dispositifs médicaux, et bien d'autres encore. Ces frameworks permettent l'application automatisée des exigences de conformité via des règles d'approbation de merge request, des seuils de vulnérabilité et des portes relatives aux politiques de scans.",[187,188,190],"h1",{"id":189},"lancez-vous","Lancez-vous",[13,192,193,194,198,199,205,206,212],{},"Le ",[19,195,197],{"href":21,"rel":196},[],"composant CI CodeSonar pour GitLab"," est disponible via le catalogue CI/CD de GitLab. Une documentation d'intégration détaillée fournit des instructions de configuration spécifiques à chaque plateforme pour les environnements Linux, ",[19,200,204],{"href":201,"rel":202,"title":203},"https://about.gitlab.com/fr-fr/blog/what-is-docker-comprehensive-guide/",[],"Qu'est-ce que Docker ?","Docker"," et Windows. Pour les organisations qui évaluent cette solution, l'implémentation démontre comment des outils spécialisés pour systèmes embarqués peuvent s'intégrer à une plateforme ",[19,207,211],{"href":208,"rel":209,"title":210},"https://about.gitlab.com/fr-fr/topics/devsecops/",[],"Qu'est-ce que le DevSecOps ?","DevSecOps"," moderne afin d'offrir à la fois vélocité de développement et rigueur de conformité.",[13,214,215,216,221,222,86],{},"Pour plus d'informations sur l'implémentation de GitLab avec CodeSonar pour votre développement de systèmes embarqués, consultez la ",[19,217,220],{"href":218,"rel":219},"https://support-resources.codesecure.com/integrations/gitlab/documentation/",[],"documentation d'intégration CodeSonar",". Vous pouvez également ",[19,223,226],{"href":224,"rel":225},"https://www.adacore.com/request-a-codesonar-trial",[],"demander un essai de CodeSonar",{"title":228,"searchDepth":229,"depth":229,"links":230},"",2,[231,232,233,234,235],{"id":28,"depth":229,"text":29},{"id":43,"depth":229,"text":44},{"id":89,"depth":229,"text":90},{"id":137,"depth":229,"text":138},{"id":161,"depth":229,"text":162},"product","2025-12-18","Découvrez les vérifications continues de conformité pour les normes ISO 26262, DO-178C, MISRA et d'autres normes de qualité du code et de sécurité fonctionnelle.","md",null,true,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659978/Blog/Hero%20Images/automation.png",{},"/fr-fr/blog/automate-embedded-systems-compliance-with-gitlab-and-codesonar",{"config":246,"title":248,"description":249},{"noIndex":247},false,"Automatisez la conformité avec GitLab et CodeSonar","Découvrez les vérifications continues de conformité pour les normes ISO 26262, DO-178C, MISRA et d'autres normes de qualité du code et de sécurité.","automate-embedded-systems-compliance-with-gitlab-and-codesonar","fr-fr/blog/automate-embedded-systems-compliance-with-gitlab-and-codesonar",[253,254,236],"embedded DevOps","tutorial","BlogPost","ImPHMIXAPeXs1Bqo6ICKEwRFsx35Oy39VGLihJib7Rg",{"logo":258,"freeTrial":263,"sales":268,"login":273,"items":278,"search":606,"minimal":642,"duo":661,"switchNav":670,"pricingDeployment":681},{"config":259},{"href":260,"dataGaName":261,"dataGaLocation":262},"/fr-fr/","gitlab logo","header",{"text":264,"config":265},"Commencer un essai gratuit",{"href":266,"dataGaName":267,"dataGaLocation":262},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/fr-fr&glm_content=default-saas-trial/","free trial",{"text":269,"config":270},"Demander une démo",{"href":271,"dataGaName":272,"dataGaLocation":262},"/fr-fr/sales/?contact-topic=request-demo","sales",{"text":274,"config":275},"Connexion",{"href":276,"dataGaName":277,"dataGaLocation":262},"https://gitlab.com/users/sign_in/","sign in",[279,308,409,414,528,584],{"text":280,"config":281,"menu":283},"Plateforme",{"dataNavLevelOne":282},"platform",{"type":284,"columns":285},"cards",[286,292,300],{"title":280,"description":287,"link":288},"La plateforme d'orchestration intelligente pour le DevSecOps",{"text":289,"config":290},"Explorer notre plateforme",{"href":291,"dataGaName":282,"dataGaLocation":262},"/fr-fr/platform/",{"title":293,"description":294,"link":295},"GitLab Duo Agent Platform","L'IA agentique pour l'ensemble du cycle de développement logiciel",{"text":296,"config":297},"Découvrir GitLab Duo",{"href":298,"dataGaName":299,"dataGaLocation":262},"/fr-fr/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":301,"description":302,"link":303},"Pourquoi GitLab ?","Découvrez les principales raisons pour lesquelles les entreprises choisissent GitLab",{"text":304,"config":305},"En savoir plus",{"href":306,"dataGaName":307,"dataGaLocation":262},"/fr-fr/why-gitlab/","why gitlab",{"text":309,"left":241,"config":310,"menu":312},"Produit",{"dataNavLevelOne":311},"solutions",{"type":313,"link":314,"columns":318,"feature":388},"lists",{"text":315,"config":316},"Voir toutes les solutions",{"href":317,"dataGaName":311,"dataGaLocation":262},"/fr-fr/solutions/",[319,343,366],{"title":320,"description":321,"link":322,"items":327},"Automatisation","CI/CD et automatisation pour accélérer le déploiement",{"config":323},{"icon":324,"href":325,"dataGaName":326,"dataGaLocation":262},"AutomatedCodeAlt","/fr-fr/solutions/delivery-automation/","automated software delivery",[328,331,334,339],{"text":66,"config":329},{"href":330,"dataGaLocation":262,"dataGaName":66},"/fr-fr/solutions/continuous-integration/",{"text":293,"config":332},{"href":298,"dataGaLocation":262,"dataGaName":333},"gitlab duo agent platform - product menu",{"text":335,"config":336},"Gestion du code source",{"href":337,"dataGaLocation":262,"dataGaName":338},"/fr-fr/solutions/source-code-management/","Source Code Management",{"text":340,"config":341},"Livraison de logiciels automatisée",{"href":325,"dataGaLocation":262,"dataGaName":342},"Automated software delivery",{"title":344,"description":345,"link":346,"items":351},"Sécurité","Livrez du code plus rapidement sans compromettre la sécurité",{"config":347},{"href":348,"dataGaName":349,"dataGaLocation":262,"icon":350},"/fr-fr/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[352,356,361],{"text":353,"config":354},"Tests de sécurité des applications",{"href":348,"dataGaName":355,"dataGaLocation":262},"Application security testing",{"text":357,"config":358},"Sécurité de la chaîne d'approvisionnement logicielle",{"href":359,"dataGaLocation":262,"dataGaName":360},"/fr-fr/solutions/supply-chain/","Software supply chain security",{"text":362,"config":363},"Conformité logicielle",{"href":364,"dataGaName":365,"dataGaLocation":262},"/fr-fr/solutions/software-compliance/","software compliance",{"title":367,"link":368,"items":373},"Mesures",{"config":369},{"icon":370,"href":371,"dataGaName":372,"dataGaLocation":262},"DigitalTransformation","/fr-fr/solutions/visibility-measurement/","visibility and measurement",[374,378,383],{"text":375,"config":376},"Visibilité et mesures",{"href":371,"dataGaLocation":262,"dataGaName":377},"Visibility and Measurement",{"text":379,"config":380},"Gestion de la chaîne de valeur",{"href":381,"dataGaLocation":262,"dataGaName":382},"/fr-fr/solutions/value-stream-management/","Value Stream Management",{"text":384,"config":385},"Analyses et informations",{"href":386,"dataGaLocation":262,"dataGaName":387},"/fr-fr/solutions/analytics-and-insights/","Analytics and insights",{"title":389,"type":313,"items":390},"GitLab",[391,397,403],{"text":392,"config":393},"Entreprises",{"icon":394,"href":395,"dataGaLocation":262,"dataGaName":396},"Building","/fr-fr/enterprise/","enterprise",{"text":398,"config":399},"Pour les PME",{"icon":400,"href":401,"dataGaLocation":262,"dataGaName":402},"Work","/fr-fr/small-business/","small business",{"text":404,"config":405},"Pour le secteur public",{"icon":406,"href":407,"dataGaLocation":262,"dataGaName":408},"Organization","/fr-fr/solutions/public-sector/","public sector",{"text":410,"config":411},"Tarifs",{"href":412,"dataGaName":413,"dataGaLocation":262,"dataNavLevelOne":413},"/fr-fr/pricing/","pricing",{"text":415,"config":416,"menu":418},"Ressources",{"dataNavLevelOne":417},"resources",{"type":313,"link":419,"columns":423,"feature":517},{"text":420,"config":421},"Afficher toutes les ressources",{"href":422,"dataGaName":417,"dataGaLocation":262},"/fr-fr/resources/",[424,457,484],{"title":425,"items":426},"Premiers pas",[427,432,437,442,447,452],{"text":428,"config":429},"Installation",{"href":430,"dataGaName":431,"dataGaLocation":262},"/fr-fr/install/","install",{"text":433,"config":434},"Guides de démarrage",{"href":435,"dataGaName":436,"dataGaLocation":262},"/fr-fr/get-started/","quick setup checklists",{"text":438,"config":439},"Apprentissage",{"href":440,"dataGaLocation":262,"dataGaName":441},"https://university.gitlab.com/","learn",{"text":443,"config":444},"Documentation",{"href":445,"dataGaName":446,"dataGaLocation":262},"https://docs.gitlab.com/","product documentation",{"text":448,"config":449},"Vidéos sur les bonnes pratiques",{"href":450,"dataGaName":451,"dataGaLocation":262},"/fr-fr/getting-started-videos/","best practice videos",{"text":453,"config":454},"Intégrations",{"href":455,"dataGaName":456,"dataGaLocation":262},"/fr-fr/integrations/","integrations",{"title":458,"items":459},"Découvrir",[460,465,470,475,479],{"text":461,"config":462},"Témoignages clients",{"href":463,"dataGaName":464,"dataGaLocation":262},"/fr-fr/customers/","customer success stories",{"text":466,"config":467},"Blog",{"href":468,"dataGaName":469,"dataGaLocation":262},"/fr-fr/blog/","blog",{"text":471,"config":472},"Demo Hub",{"href":473,"dataGaName":474,"dataGaLocation":262},"/fr-fr/demo-hub/","demo hub",{"text":476,"config":477},"The Source",{"href":478,"dataGaName":469,"dataGaLocation":262},"/fr-fr/the-source/",{"text":480,"config":481},"Travail à distance",{"href":482,"dataGaName":483,"dataGaLocation":262},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":485,"items":486},"Connecter",[487,492,497,502,507,512],{"text":488,"config":489},"Services GitLab",{"href":490,"dataGaName":491,"dataGaLocation":262},"/fr-fr/services/","services",{"text":493,"config":494},"Contribuer",{"href":495,"dataGaName":496,"dataGaLocation":262},"https://contributors.gitlab.com","contribute",{"text":498,"config":499},"Communauté",{"href":500,"dataGaName":501,"dataGaLocation":262},"/community/","community",{"text":503,"config":504},"Forum",{"href":505,"dataGaName":506,"dataGaLocation":262},"https://forum.gitlab.com/","forum",{"text":508,"config":509},"Événements",{"href":510,"dataGaName":511,"dataGaLocation":262},"/events/","events",{"text":513,"config":514},"Partenaires",{"href":515,"dataGaName":516,"dataGaLocation":262},"/fr-fr/partners/","partners",{"config":518,"title":521,"text":522,"link":523},{"background":519,"textColor":520},"url('https://res.cloudinary.com/about-gitlab-com/image/upload/v1777322348/qpq8yrgn8knii57omj0c.png')","#000","Nouveautés de GitLab","Découvrez les dernières fonctionnalités et améliorations.",{"text":524,"config":525},"Lire les articles les plus récents",{"href":526,"dataGaName":527,"dataGaLocation":262},"/fr-fr/whats-new/","whats new",{"text":529,"config":530,"menu":532},"Société",{"dataNavLevelOne":531},"company",{"type":313,"columns":533},[534],{"items":535},[536,541,547,549,554,559,564,569,574,579],{"text":537,"config":538},"À propos",{"href":539,"dataGaName":540,"dataGaLocation":262},"/fr-fr/company/","about",{"text":542,"config":543,"footerGa":546},"Carrières",{"href":544,"dataGaName":545,"dataGaLocation":262},"/jobs/","jobs",{"dataGaName":545},{"text":508,"config":548},{"href":510,"dataGaName":511,"dataGaLocation":262},{"text":550,"config":551},"Leadership",{"href":552,"dataGaName":553,"dataGaLocation":262},"/company/team/e-group/","leadership",{"text":555,"config":556},"Manuel",{"href":557,"dataGaName":558,"dataGaLocation":262},"https://handbook.gitlab.com/","handbook",{"text":560,"config":561},"Relations avec les investisseurs",{"href":562,"dataGaName":563,"dataGaLocation":262},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":565,"config":566},"Trust Center",{"href":567,"dataGaName":568,"dataGaLocation":262},"/fr-fr/security/","trust center",{"text":570,"config":571},"Centre pour la transparence de l'IA",{"href":572,"dataGaName":573,"dataGaLocation":262},"/fr-fr/ai-transparency-center/","ai transparency center",{"text":575,"config":576},"Newsletter",{"href":577,"dataGaName":578,"dataGaLocation":262},"/company/contact/#contact-forms","newsletter",{"text":580,"config":581},"Presse",{"href":582,"dataGaName":583,"dataGaLocation":262},"/press/","press",{"text":585,"config":586,"menu":587},"Nous contacter",{"dataNavLevelOne":531},{"type":313,"columns":588},[589],{"items":590},[591,596,601],{"text":592,"config":593},"Contacter l'équipe commerciale",{"href":594,"dataGaName":595,"dataGaLocation":262},"/fr-fr/sales/","talk to sales",{"text":597,"config":598},"Assistance GitLab",{"href":599,"dataGaName":600,"dataGaLocation":262},"https://support.gitlab.com/hc/en-us","support portal",{"text":602,"config":603},"Portail clients GitLab",{"href":604,"dataGaName":605,"dataGaLocation":262},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":607,"login":608,"suggestions":615},"Fermer",{"text":609,"link":610},"Pour rechercher des dépôts et des projets, connectez-vous à",{"text":611,"config":612},"GitLab.com",{"href":276,"dataGaName":613,"dataGaLocation":614},"search login","search",{"text":616,"default":617},"Suggestions",[618,621,626,628,633,638],{"text":293,"config":619},{"href":298,"dataGaName":620,"dataGaLocation":614},"GitLab Duo Agent Platform",{"text":622,"config":623},"Suggestions de code (IA)",{"href":624,"dataGaName":625,"dataGaLocation":614},"/fr-fr/solutions/code-suggestions/","Code Suggestions (AI)",{"text":66,"config":627},{"href":330,"dataGaName":66,"dataGaLocation":614},{"text":629,"config":630},"GitLab sur AWS",{"href":631,"dataGaName":632,"dataGaLocation":614},"/fr-fr/partners/technology-partners/aws/","GitLab on AWS",{"text":634,"config":635},"GitLab sur Google Cloud",{"href":636,"dataGaName":637,"dataGaLocation":614},"/fr-fr/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":639,"config":640},"Pourquoi utiliser GitLab ?",{"href":306,"dataGaName":641,"dataGaLocation":614},"Why GitLab?",{"freeTrial":643,"mobileIcon":648,"desktopIcon":653,"secondaryButton":656},{"text":644,"config":645},"Commencer votre essai gratuit",{"href":646,"dataGaName":267,"dataGaLocation":647},"https://gitlab.com/-/trials/new/","nav",{"altText":649,"config":650},"Icône GitLab",{"src":651,"dataGaName":652,"dataGaLocation":647},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":649,"config":654},{"src":655,"dataGaName":652,"dataGaLocation":647},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":657,"config":658},"Commencer",{"href":659,"dataGaName":660,"dataGaLocation":647},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/fr-fr/get-started/","get started",{"freeTrial":662,"mobileIcon":666,"desktopIcon":668},{"text":663,"config":664},"En savoir plus sur GitLab Duo",{"href":298,"dataGaName":665,"dataGaLocation":647},"gitlab duo",{"altText":649,"config":667},{"src":651,"dataGaName":652,"dataGaLocation":647},{"altText":649,"config":669},{"src":655,"dataGaName":652,"dataGaLocation":647},{"button":671,"mobileIcon":676,"desktopIcon":678},{"text":672,"config":673},"/switch",{"href":674,"dataGaName":675,"dataGaLocation":647},"#contact","switch",{"altText":649,"config":677},{"src":651,"dataGaName":652,"dataGaLocation":647},{"altText":649,"config":679},{"src":680,"dataGaName":652,"dataGaLocation":647},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":682,"mobileIcon":687,"desktopIcon":689},{"text":683,"config":684},"Retour aux tarifs",{"href":412,"dataGaName":685,"dataGaLocation":647,"icon":686},"back to pricing","GoBack",{"altText":649,"config":688},{"src":651,"dataGaName":652,"dataGaLocation":647},{"altText":649,"config":690},{"src":655,"dataGaName":652,"dataGaLocation":647},{"title":692,"button":693,"config":697},"GitLab Orbit est arrivé : la couche de contexte pour les agents d'IA.",{"text":304,"config":694},{"href":695,"dataGaName":696,"dataGaLocation":262},"/fr-fr/gitlab-orbit/","orbit",{"layout":698,"disabled":247},"release",{"data":700},{"text":701,"source":702,"edit":708,"contribute":713,"config":717,"items":722,"minimal":929},"Git est une marque déposée de Software Freedom Conservancy et notre utilisation de « GitLab » est sous licence.",{"text":703,"config":704},"Afficher le code source de la page",{"href":705,"dataGaName":706,"dataGaLocation":707},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":709,"config":710},"Modifier cette page",{"href":711,"dataGaName":712,"dataGaLocation":707},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":493,"config":714},{"href":715,"dataGaName":716,"dataGaLocation":707},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":718,"facebook":719,"youtube":720,"linkedin":721},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[723,769,821,864,896],{"title":410,"links":724,"subMenu":739},[725,729,734],{"text":726,"config":727},"Voir les forfaits",{"href":412,"dataGaName":728,"dataGaLocation":707},"view plans",{"text":730,"config":731},"GitLab Premium",{"href":732,"dataGaName":733,"dataGaLocation":707},"/fr-fr/pricing/premium/","why premium",{"text":735,"config":736},"GitLab Ultimate",{"href":737,"dataGaName":738,"dataGaLocation":707},"/fr-fr/pricing/ultimate/","why ultimate",[740],{"title":585,"links":741},[742,744,746,749,754,759,764],{"text":592,"config":743},{"href":594,"dataGaName":272,"dataGaLocation":707},{"text":597,"config":745},{"href":599,"dataGaName":600,"dataGaLocation":707},{"text":747,"config":748},"Portail clients",{"href":604,"dataGaName":605,"dataGaLocation":707},{"text":750,"config":751},"Statut",{"href":752,"dataGaName":753,"dataGaLocation":707},"https://status.gitlab.com/","status",{"text":755,"config":756},"Conditions d'utilisation",{"href":757,"dataGaName":758,"dataGaLocation":707},"/terms/","terms of use",{"text":760,"config":761},"Politique de confidentialité",{"href":762,"dataGaName":763,"dataGaLocation":707},"/fr-fr/privacy/","privacy statement",{"text":765,"config":766},"Gestion des cookies",{"dataGaName":767,"dataGaLocation":707,"id":768,"isOneTrustButton":241},"cookie preferences","ot-sdk-btn",{"title":309,"links":770,"subMenu":779},[771,775],{"text":772,"config":773},"Plateforme DevSecOps",{"href":291,"dataGaName":774,"dataGaLocation":707},"devsecops platform",{"text":776,"config":777},"Développement assisté par l'IA",{"href":298,"dataGaName":778,"dataGaLocation":707},"ai-assisted development",[780],{"title":781,"links":782},"Thèmes",[783,787,792,797,802,806,811,816],{"text":66,"config":784},{"href":785,"dataGaName":786,"dataGaLocation":707},"/fr-fr/topics/ci-cd/","cicd",{"text":788,"config":789},"GitOps",{"href":790,"dataGaName":791,"dataGaLocation":707},"/fr-fr/topics/gitops/","gitops",{"text":793,"config":794},"DevOps",{"href":795,"dataGaName":796,"dataGaLocation":707},"/fr-fr/topics/devops/","devops",{"text":798,"config":799},"Contrôle de version",{"href":800,"dataGaName":801,"dataGaLocation":707},"/fr-fr/topics/version-control/","version control",{"text":211,"config":803},{"href":804,"dataGaName":805,"dataGaLocation":707},"/fr-fr/topics/devsecops/","devsecops",{"text":807,"config":808},"Cloud-native",{"href":809,"dataGaName":810,"dataGaLocation":707},"/fr-fr/topics/cloud-native/","cloud native",{"text":812,"config":813},"IA pour la programmation",{"href":814,"dataGaName":815,"dataGaLocation":707},"/fr-fr/topics/devops/ai-for-coding/","ai for coding",{"text":817,"config":818},"IA agentique",{"href":819,"dataGaName":820,"dataGaLocation":707},"/fr-fr/topics/agentic-ai/","agentic ai",{"title":822,"links":823},"Solutions",[824,827,829,834,837,840,843,846,848,851,854,859],{"text":353,"config":825},{"href":348,"dataGaName":826,"dataGaLocation":707},"Application Security Testing",{"text":340,"config":828},{"href":325,"dataGaName":326,"dataGaLocation":707},{"text":830,"config":831},"Développement Agile",{"href":832,"dataGaName":833,"dataGaLocation":707},"/fr-fr/solutions/agile-delivery/","agile delivery",{"text":335,"config":835},{"href":337,"dataGaName":836,"dataGaLocation":707},"source code management",{"text":66,"config":838},{"href":330,"dataGaName":839,"dataGaLocation":707},"continuous integration & delivery",{"text":379,"config":841},{"href":381,"dataGaName":842,"dataGaLocation":707},"value stream management",{"text":788,"config":844},{"href":845,"dataGaName":791,"dataGaLocation":707},"/fr-fr/solutions/gitops/",{"text":392,"config":847},{"href":395,"dataGaName":396,"dataGaLocation":707},{"text":849,"config":850},"PME",{"href":401,"dataGaName":402,"dataGaLocation":707},{"text":852,"config":853},"Secteur public",{"href":407,"dataGaName":408,"dataGaLocation":707},{"text":855,"config":856},"Éducation",{"href":857,"dataGaName":858,"dataGaLocation":707},"/fr-fr/solutions/education/","education",{"text":860,"config":861},"Services financiers",{"href":862,"dataGaName":863,"dataGaLocation":707},"/fr-fr/solutions/finance/","financial services",{"title":415,"links":865},[866,868,870,872,875,877,880,882,884,886,888,890,892,894],{"text":428,"config":867},{"href":430,"dataGaName":431,"dataGaLocation":707},{"text":433,"config":869},{"href":435,"dataGaName":436,"dataGaLocation":707},{"text":438,"config":871},{"href":440,"dataGaName":441,"dataGaLocation":707},{"text":443,"config":873},{"href":445,"dataGaName":874,"dataGaLocation":707},"docs",{"text":466,"config":876},{"href":468,"dataGaName":469,"dataGaLocation":707},{"text":878,"config":879},"Nouveautés",{"href":526,"dataGaName":527,"dataGaLocation":707},{"text":461,"config":881},{"href":463,"dataGaName":464,"dataGaLocation":707},{"text":480,"config":883},{"href":482,"dataGaName":483,"dataGaLocation":707},{"text":488,"config":885},{"href":490,"dataGaName":491,"dataGaLocation":707},{"text":493,"config":887},{"href":495,"dataGaName":496,"dataGaLocation":707},{"text":498,"config":889},{"href":500,"dataGaName":501,"dataGaLocation":707},{"text":503,"config":891},{"href":505,"dataGaName":506,"dataGaLocation":707},{"text":508,"config":893},{"href":510,"dataGaName":511,"dataGaLocation":707},{"text":513,"config":895},{"href":515,"dataGaName":516,"dataGaLocation":707},{"title":529,"links":897},[898,900,902,904,906,908,913,918,920,922,924],{"text":537,"config":899},{"href":539,"dataGaName":531,"dataGaLocation":707},{"text":542,"config":901},{"href":544,"dataGaName":545,"dataGaLocation":707},{"text":550,"config":903},{"href":552,"dataGaName":553,"dataGaLocation":707},{"text":555,"config":905},{"href":557,"dataGaName":558,"dataGaLocation":707},{"text":560,"config":907},{"href":562,"dataGaName":563,"dataGaLocation":707},{"text":909,"config":910},"Développement durable",{"href":911,"dataGaName":912,"dataGaLocation":707},"/sustainability/","Sustainability",{"text":914,"config":915},"Diversité, inclusion et appartenance (DIB)",{"href":916,"dataGaName":917,"dataGaLocation":707},"/fr-fr/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":565,"config":919},{"href":567,"dataGaName":568,"dataGaLocation":707},{"text":575,"config":921},{"href":577,"dataGaName":578,"dataGaLocation":707},{"text":580,"config":923},{"href":582,"dataGaName":583,"dataGaLocation":707},{"text":925,"config":926},"Déclaration de transparence sur l'esclavage moderne",{"href":927,"dataGaName":928,"dataGaLocation":707},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":930},[931,933,935],{"text":755,"config":932},{"href":757,"dataGaName":758,"dataGaLocation":707},{"text":765,"config":934},{"dataGaName":767,"dataGaLocation":707,"id":768,"isOneTrustButton":241},{"text":760,"config":936},{"href":762,"dataGaName":763,"dataGaLocation":707},[938,952],{"id":939,"title":7,"body":240,"config":940,"content":942,"description":240,"extension":946,"meta":947,"navigation":241,"path":948,"seo":949,"stem":950,"__hash__":951},"blogAuthors/en-us/blog/authors/mark-hermeling.yml",{"template":941},"BlogAuthor",{"name":7,"config":943,"bio":228,"role":945},{"headshot":944},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1764087517/ay8u8nobvaebiibelkzx.jpg","Head of Technical Marketing, AdaCore (parent company of CodeSonar product)","yml",{},"/en-us/blog/authors/mark-hermeling",{},"en-us/blog/authors/mark-hermeling","OqPJzf741jcekkwi_E_9NsCfboiDZfeXfhk9d18WbDc",{"id":953,"title":8,"body":240,"config":954,"content":955,"description":240,"extension":946,"meta":961,"navigation":241,"path":962,"seo":963,"stem":964,"__hash__":965},"blogAuthors/en-us/blog/authors/darwin-sanoy.yml",{"template":941},{"role":956,"name":8,"config":957},"Field Chief Cloud Architect",{"headshot":958,"linkedin":959,"ctfId":960},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659751/Blog/Author%20Headshots/Darwin-Sanoy-headshot-395-square-gitlab-teampage-avatar.png","https://linkedin.com/in/darwinsanoy","DarwinJS",{},"/en-us/blog/authors/darwin-sanoy",{},"en-us/blog/authors/darwin-sanoy","UkMMwmU5o2e6Y-wBltA9E_z96LvHuB-bG6VW9DsLzIY",[967,976,984],{"title":968,"description":969,"heroImage":970,"category":236,"date":971,"authors":972,"slug":975,"externalUrl":240},"Maîtrisez vos sièges GitLab avec l'accès restreint","Découvrez comment la fonctionnalité d'accès restreint de GitLab permet d'éviter les dépassements de sièges, s'intègre à votre fournisseur d'identité et garantit des coûts de licence prévisibles.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1774375772/kpaaaiqhokevxxeoxvu0.png","2026-07-15",[973,974],"Magdalena Frankiewicz","Priyanka Palanikumar","gitlab-restricted-access-improvements",{"title":977,"description":978,"heroImage":979,"category":236,"date":980,"authors":981,"slug":983,"externalUrl":240},"Feature flags de GitLab en Python : guide de démarrage","Découvrez comment intégrer les feature flags de GitLab dans une application Flask en Python avec le SDK Unleash pour contrôler le déploiement progressif de fonctionnalités sans redéployer votre application.","https://res.cloudinary.com/about-gitlab-com/image/upload/f_auto,q_auto,c_lfill/v1774465167/n5hlvrsrheadeccyr1oz.png","2026-06-01",[982],"Omid Khan","getting-started-with-gitlab-feature-flags-in-python",{"title":985,"description":986,"heroImage":987,"category":236,"date":988,"authors":989,"slug":991,"externalUrl":240},"Suivez l'utilisation des composants CI dans votre organisation","Avec GitLab 19.0, visualisez comment vos composants CI partagés sont utilisés dans votre organisation, afin de pouvoir prendre les mesures qui s'imposent en fonction de vos observations.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1779189265/iqzyhhiwagxzwywvjzow.png","2026-05-22",[990],"Corinne Dent","track-ci-component-usage",{"promotions":993},[994,1008,1019,1031],{"id":995,"categories":996,"header":998,"text":999,"button":1000,"image":1005},"ai-modernization",[997],"ai","L'IA tient-elle ses promesses à grande échelle ?","Le questionnaire ne prendra pas plus de 5 minutes.",{"text":1001,"config":1002},"Obtenez votre score de maturité IA",{"href":1003,"dataGaName":1004,"dataGaLocation":469},"/fr-fr/assessments/ai-modernization-assessment/","modernization assessment",{"config":1006},{"src":1007},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":1009,"categories":1010,"header":1011,"text":999,"button":1012,"image":1016},"devops-modernization",[236,805],"Vous contentez-vous de gérer des outils ou de livrer des innovations ?",{"text":1013,"config":1014},"Obtenez votre score de maturité DevOps",{"href":1015,"dataGaName":1004,"dataGaLocation":469},"/fr-fr/assessments/devops-modernization-assessment/",{"config":1017},{"src":1018},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":1020,"categories":1021,"header":1023,"text":999,"button":1024,"image":1028},"security-modernization",[1022],"security","Faut-il sacrifier la rapidité pour garantir la sécurité ?",{"text":1025,"config":1026},"Obtenez votre score de maturité en matière de sécurité",{"href":1027,"dataGaName":1004,"dataGaLocation":469},"/fr-fr/assessments/security-modernization-assessment/",{"config":1029},{"src":1030},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":1032,"paths":1033,"header":1036,"text":1037,"button":1038,"image":1043},"github-azure-migration",[1034,1035],"migration-from-azure-devops-to-gitlab","integrating-azure-devops-scm-and-gitlab","Votre équipe est-elle prête pour la migration de GitHub vers Azure ?","GitHub a déjà commencé sa migration vers Azure. Découvrez ce que cela signifie pour vous.",{"text":1039,"config":1040},"Découvrez les différences entre GitLab et GitHub",{"href":1041,"dataGaName":1042,"dataGaLocation":469},"/fr-fr/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":1044},{"src":1018},{"header":1046,"blurb":1047,"button":1048,"secondaryButton":1052},"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":264,"config":1049},{"href":1050,"dataGaName":267,"dataGaLocation":1051},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/fr-fr/","feature",{"text":592,"config":1053},{"href":594,"dataGaName":272,"dataGaLocation":1051},1786803763964]