[{"data":1,"prerenderedAt":711},["ShallowReactive",2],{"/fr-fr/blog/demystifying-ci-cd-variables/":3,"navigation-fr-fr":40,"banner-fr-fr":459,"footer-fr-fr":471,"Veethika Mishra":683,"next-steps-fr-fr":696},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"seo":8,"content":16,"config":30,"_id":33,"_type":34,"title":35,"_source":36,"_file":37,"_stem":38,"_extension":39},"/fr-fr/blog/demystifying-ci-cd-variables","blog",false,"",{"title":9,"description":10,"ogTitle":9,"ogDescription":10,"noIndex":6,"ogImage":11,"ogUrl":12,"ogSiteName":13,"ogType":14,"canonicalUrls":12,"schema":15},"Variables d’environnement : tout savoir sur les variables CI/CD de GitLab","Les variables CI/CD permettent de contrôler les jobs et les pipelines. Découvrez tout ce que vous devez savoir sur les variables d'environnement de GitLab.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664679/Blog/Hero%20Images/blog-image-template-1800x945__24_.png","https://about.gitlab.com/blog/demystifying-ci-cd-variables","https://about.gitlab.com","article","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Variables d’environnement : tout savoir sur les variables CI/CD de GitLab\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Veethika Mishra\"}],\n        \"datePublished\": \"2021-04-09\",\n      }",{"title":9,"description":10,"authors":17,"heroImage":11,"date":19,"body":20,"category":21,"tags":22,"updatedDate":29},[18],"Veethika Mishra","2021-04-09","Définir et utiliser des variables dans le cadre d'une approche [CI/CD](https://about.gitlab.com/fr-fr/topics/ci-cd/) s'avère une méthode très flexible. Ces variables sont d'une grande utilité pour contrôler les jobs et les pipelines, tout en vous permettant d'éviter de coder en dur des valeurs directement dans votre fichier de configuration `.gitlab-ci.yml`. \n\nDans [GitLab CI/CD](https://docs.gitlab.com/ee/ci/), les variables peuvent être utilisées pour personnaliser les jobs en définissant et en stockant des valeurs spécifiques. Pour définir vos variables CI/CD dans GitLab, accédez à **Paramètres >> CI/CD >> Variables** ou définissez-les simplement dans le fichier `.gitlab-ci.yml`. Sachez que les variables servent également d'alternative aux valeurs codées en dur.\n\nUtiliser des variables s’avère particulièrement utile pour configurer des services tiers dans différents environnements de déploiement, tels que l'environnement de test (`testing`), l'environnement de préproduction (`staging`), l'environnement de production (`production`), et plus encore. Pour modifier les services liés à ces environnements, il suffit de changer simplement la variable qui pointe vers le point de terminaison d'API associé aux services. Vous pouvez également utiliser des variables pour configurer les jobs et les rendre disponibles en tant que variables d'environnement dans les jobs lorsqu'ils s'exécutent.\n\nDécouvrez dans cet article tout ce que vous devez savoir sur les variables d’environnement afin de mieux comprendre leur fonctionnement et leur portée. \n\n![GitLab lit le fichier .gitlab-ci.yml pour analyser la variable référencée, puis envoie les informations à GitLab Runner. Les variables sont exposées et générées par le runner.](https://about.gitlab.com/images/blogimages/demystifying-ci-cd-variables/variables_processing.jpeg)\n\n## La relation entre les variables et les environnements\n\nLe processus de développement logiciel comprend plusieurs étapes destinées à tester un produit avant de le déployer et de le mettre à disposition des utilisateurs. Les [environnements](https://docs.gitlab.com/ee/ci/environments/) sont utilisés pour définir ces étapes, qui peuvent différer d'une équipe à l'autre, voire d'une entreprise à l'autre.\n\nLes variables, quant à elles, sont des valeurs de données susceptibles de changer à la suite d'une interaction entre un utilisateur et un produit. Par exemple, son âge, ses préférences ou toute autre information qui pourrait déterminer l'étape suivante qui lui sera présentée dans le flux de tâches du produit.\n\nLe terme [variable d'environnement](https://docs.gitlab.com/ee/administration/environment_variables.html) fait souvent référence à des variables définies dans un environnement donné, mais en dehors de l'application. Les variables dans GitLab CI/CD offrent aux équipes de développement la possibilité de configurer des valeurs dans le code. L'intérêt principal étant de garantir sa flexibilité. Ces variables permettent aux utilisateurs de modifier une application déployée dans un certain environnement sans toucher au code. Il est possible d'exécuter des tests en toute simplicité ou même d'intégrer des services tiers en modifiant une variable d'environnement de configuration en dehors de l'application.\n\n## La portée des variables dans l'approche CI/CD\n\n![Ordre de priorité des variables CI/CD : 1) Exécution manuelle du pipeline, variables de déclenchement et de planification du pipeline, 2) Variables protégées au niveau du projet, au niveau du groupe et au niveau de l'instance, 3) Variables CI/CD héritées, 4) Variables globales définies dans yml au niveau du job, 5) Variables de déploiement, 6) Variables CI/CD prédéfinies](https://about.gitlab.com/images/blogimages/demystifying-ci-cd-variables/variables_precedence.jpeg)\n\n### Variables définies dans `.gitlab-ci.yml`\n\nLes variables qui doivent être disponibles dans l'environnement du job peuvent être ajoutées à GitLab. Ces variables CI/CD stockent la configuration du projet ne contenant pas de données sensibles, comme l'URL de la base de données dans le fichier `.gitlab-ci.yml`. Réutilisez cette variable dans plusieurs jobs ou scripts, là où la valeur est nécessaire. Si la valeur change, vous n'avez besoin de mettre à jour la variable qu'une seule fois. Le changement se reflète ensuite partout où la variable est utilisée.\n\n### Variables CI/CD au niveau du projet\n\nUn cran au-dessus des exigences spécifiques au dépôt, vous pouvez définir des variables CI/CD dans les [paramètres du projet](https://docs.gitlab.com/ee/ci/variables/#for-a-project), afin qu'elles soient disponibles dans les [pipelines CI/CD](https://about.gitlab.com/fr-fr/topics/ci-cd/cicd-pipeline/ \"Qu'est-ce qu'un pipeline CI/CD ?\"). Celles-ci sont stockées en dehors du dépôt (c'est-à-dire qu'elles ne figurent pas dans le fichier `.gitlab-ci.yml`), mais peuvent néanmoins être utilisées dans les scripts et la configuration CI/CD. Le stockage des variables en dehors du fichier `.gitlab-ci.yml` limite ces valeurs à la portée du projet uniquement, sans les enregistrer en texte brut dans le projet.\n\n### Variables CI/CD au niveau du groupe et de l'instance\n\nCertaines variables sont pertinentes à l'échelle du groupe ou de l'instance et peuvent être utiles à tous les projets associés à un groupe ou à une instance spécifique. Définissez les variables dans les [paramètres du groupe ou de l'instance](https://docs.gitlab.com/ee/ci/variables/#for-a-group) afin que tous les projets de ces portées puissent utiliser les variables sans avoir besoin d'en connaître la valeur ou de les recréer pour chaque projet de portée inférieure. Par exemple, une valeur commune à plusieurs projets se gère facilement si elle ne doit être mise à jour qu'à un seul endroit. Alternativement, plusieurs projets peuvent utiliser un mot de passe spécifique sans avoir besoin de connaître la valeur du mot de passe lui-même.\n\n## Jobs et pipelines en tant qu'environnements\n\nEn plus d'être utilisées comme des variables d'environnement, les variables dans GitLab CI/CD fonctionnent également dans la portée du fichier de configuration `.gitlab-ci.yml` pour définir le comportement du pipeline, indépendamment de son environnement. Les variables peuvent être stockées dans les paramètres du projet/groupe/instance et mises à la disposition des jobs dans les pipelines.\n\nPar exemple :\n\n```  \njob:  \n  rules:  \n    - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH  \n  script:  \n  - echo \"This job ran on the $CI_COMMIT_BRANCH branch.\"  \n```\n\nLa variable `($CI_COMMIT_BRANCH)` dans la section du script s'exécute dans la portée du job dans lequel elle a été définie. Cette portée est l'« environnement du job », ce qui signifie que lorsque le job se lance, le GitLab Runner démarre un conteneur Docker et exécute le job dans cet environnement. Le runner met cette variable (et toutes les autres variables prédéfinies ou personnalisées) à la disposition du job et peut également afficher leur valeur dans les données de sortie du log si nécessaire.\n\nToutefois, la variable est aussi utilisée dans la section `if:` pour déterminer quand le job doit s'exécuter. Il ne s'agit pas en soi d'un environnement, c'est pourquoi nous les appelons variables CI/CD. Elles peuvent être utilisées pour configurer dynamiquement vos jobs CI/CD, ainsi que comme variables d'environnement lorsque le job est en cours d'exécution.\n\n## Variables prédéfinies\n\nUn certain nombre de variables sont [prédéfinies](https://docs.gitlab.com/ee/ci/variables/predefined_variables.html) lorsqu'un pipeline GitLab CI/CD démarre. Un utilisateur peut immédiatement accéder aux valeurs pour des éléments tels que les validations, le projet ou les détails du pipeline sans avoir à définir les variables elles-mêmes.\n\n## Variables CI/CD personnalisées\n\n![Les runners peuvent créer deux types de variables CI/CD personnalisées : Type et Fichier.](https://about.gitlab.com/images/blogimages/demystifying-ci-cd-variables/variable_types.jpeg)\n\nLors de la création d'une variable CI/CD dans les paramètres, GitLab offre à l'utilisateur plus d'options pour configurer la variable. Utilisez ces options de configuration supplémentaires pour exercer un contrôle plus strict sur les variables plus sensibles :\n\n**Portée de l'environnement :** si une variable ne doit être utilisée que dans un environnement spécifique, définissez-la pour qu'elle soit disponible uniquement dans cet environnement. Par exemple, vous pouvez définir un jeton de déploiement pour qu'il ne soit disponible que dans l'environnement `production`.\n\n**Variables protégées :** comme pour la portée de l'environnement, vous pouvez définir une variable pour qu'elle ne soit disponible que lorsque le pipeline s'exécute sur une branche protégée, comme votre branche par défaut.\n\n**Type de variable :** certaines applications nécessitent que la configuration leur soit transmise sous la forme d'un fichier. Si une application nécessite cette configuration, définissez simplement le type de variable comme « Fichier ». Cette configuration de la variable CI/CD signifie que lorsque le runner rend la variable disponible dans l'environnement, il l'écrit dans un fichier temporaire et stocke le chemin d'accès au fichier en tant que valeur. Un utilisateur peut ensuite transmettre le chemin d'accès au fichier à toutes les applications qui en ont besoin.\n\nEn plus des éléments énumérés pour définir et utiliser les variables, GitLab a introduit une fonctionnalité qui génère des variables préremplies lorsqu'un pipeline doit être exécuté manuellement. Les variables préremplies réduisent les risques d'erreur et facilitent l'exécution du pipeline.\n\n**Variables masquées :** les [variables masquées](https://docs.gitlab.com/ee/ci/variables/#mask-a-cicd-variable) sont des variables CI qui ont été **cachées dans les job logs** pour empêcher l'affichage de leur valeur.\n\n**Variables masquées et cachées :** introduites dans [GitLab 17.4](https://about.gitlab.com/releases/2024/09/19/gitlab-17-4-released/#hide-cicd-variable-values-in-the-ui), les variables [masquées et cachées](https://docs.gitlab.com/ee/ci/variables/#hide-a-cicd-variable) offrent la même fonctionnalité de masquage des job logs et **gardent la valeur cachée** **dans l'interface utilisateur des paramètres**. Nous ne recommandons pas d'utiliser ces deux types de variables pour les informations sensibles (comme les secrets), car elles peuvent être exposées par inadvertance.\n\n## Secrets\n\nUn secret est un identifiant de connexion sensible qui doit rester confidentiel. Voici des exemples de secrets :\n\n* Mots de passe\n* Clés SSH\n* Jetons d'accès\n* Tout autre type d'identifiants de connexion dont la divulgation pourrait porter préjudice à l'entreprise\n\nGitLab permet actuellement à ses utilisateurs d'[utiliser des secrets externes](https://docs.gitlab.com/ee/ci/secrets/) dans l'[intégration continue (CI)](https://about.gitlab.com/fr-fr/topics/ci-cd/benefits-continuous-integration/ \"Qu'est-ce que l'intégration continue (CI) ?\"), en tirant parti de HashiCorp Vault, Google Cloud Secret Manager et Azure Key Vault pour gérer de manière sécurisée les clés, les tokens et d'autres secrets au niveau du projet. Les utilisateurs peuvent ainsi séparer ces secrets des autres variables CI/CD pour des raisons de sécurité.\n\n### Gestionnaire de secrets de GitLab\n\nEn plus de fournir une assistance pour les secrets externes dans la CI, GitLab prévoit également de proposer une [solution native de gestion des secrets](https://gitlab.com/groups/gitlab-org/-/epics/10108) permettant de stocker les secrets de manière pratique et sécurisée au sein de sa plateforme. Cette solution aidera également les clients à utiliser les secrets stockés dans les composants et les environnements spécifiques à GitLab, ainsi qu'à gérer facilement les accès au niveau des groupes d'espaces de nommage et des projets.\n\nPour en savoir plus sur le gestionnaire de secrets de GitLab, consultez notre article « [Le gestionnaire de secrets natif de GitLab renforce la sécurité de la chaîne d'approvisionnement logicielle](https://about.gitlab.com/blog/gitlab-native-secrets-manager-to-give-software-supply-chain-security-a-boost/) ». \n\n***Avertissement :** cet article de blog contient des informations relatives aux produits, fonctionnalités et caractéristiques à venir. Il est important de noter que les informations contenues dans cet article de blog ne sont fournies qu'à titre informatif. Veuillez ne pas vous fier à ces informations à des fins d'achat ou de planification. Comme pour tout projet, les éléments mentionnés dans cet article sont susceptibles de changer ou d’être retardés. Le développement, la sortie et le calendrier de tout produit ou fonctionnalité restent à la seule discrétion de GitLab.*\n","engineering",[23,24,25,26,27,28],"CD","features","inside GitLab","CI","CI/CD","tutorial","2025-01-28",{"slug":31,"featured":6,"template":32},"demystifying-ci-cd-variables","BlogPost","content:fr-fr:blog:demystifying-ci-cd-variables.yml","yaml","Demystifying Ci Cd Variables","content","fr-fr/blog/demystifying-ci-cd-variables.yml","fr-fr/blog/demystifying-ci-cd-variables","yml",{"_path":41,"_dir":42,"_draft":6,"_partial":6,"_locale":7,"data":43,"_id":455,"_type":34,"title":456,"_source":36,"_file":457,"_stem":458,"_extension":39},"/shared/fr-fr/main-navigation","fr-fr",{"logo":44,"freeTrial":49,"sales":54,"login":59,"items":64,"search":396,"minimal":432,"duo":446},{"config":45},{"href":46,"dataGaName":47,"dataGaLocation":48},"/fr-fr/","gitlab logo","header",{"text":50,"config":51},"Commencer un essai gratuit",{"href":52,"dataGaName":53,"dataGaLocation":48},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":55,"config":56},"Contacter l'équipe commerciale",{"href":57,"dataGaName":58,"dataGaLocation":48},"/fr-fr/sales/","sales",{"text":60,"config":61},"Connexion",{"href":62,"dataGaName":63,"dataGaLocation":48},"https://gitlab.com/users/sign_in/","sign in",[65,109,207,212,317,377],{"text":66,"config":67,"cards":69,"footer":92},"Plateforme",{"dataNavLevelOne":68},"platform",[70,76,84],{"title":66,"description":71,"link":72},"La plateforme DevSecOps alimentée par l'IA la plus complète",{"text":73,"config":74},"Découvrir notre plateforme",{"href":75,"dataGaName":68,"dataGaLocation":48},"/fr-fr/platform/",{"title":77,"description":78,"link":79},"GitLab Duo (IA)","Créez des logiciels plus rapidement en tirant parti de l'IA à chaque étape du développement",{"text":80,"config":81},"Découvrez GitLab Duo",{"href":82,"dataGaName":83,"dataGaLocation":48},"/fr-fr/gitlab-duo/","gitlab duo ai",{"title":85,"description":86,"link":87},"Choisir GitLab","10 raisons pour lesquelles les entreprises choisissent GitLab",{"text":88,"config":89},"En savoir plus",{"href":90,"dataGaName":91,"dataGaLocation":48},"/fr-fr/why-gitlab/","why gitlab",{"title":93,"items":94},"Démarrer avec",[95,100,105],{"text":96,"config":97},"Ingénierie de plateforme",{"href":98,"dataGaName":99,"dataGaLocation":48},"/fr-fr/solutions/platform-engineering/","platform engineering",{"text":101,"config":102},"Expérience développeur",{"href":103,"dataGaName":104,"dataGaLocation":48},"/fr-fr/developer-experience/","Developer experience",{"text":106,"config":107},"MLOps",{"href":108,"dataGaName":106,"dataGaLocation":48},"/fr-fr/topics/devops/the-role-of-ai-in-devops/",{"text":110,"left":111,"config":112,"link":114,"lists":118,"footer":189},"Produit",true,{"dataNavLevelOne":113},"solutions",{"text":115,"config":116},"Voir toutes les solutions",{"href":117,"dataGaName":113,"dataGaLocation":48},"/fr-fr/solutions/",[119,144,167],{"title":120,"description":121,"link":122,"items":127},"Automatisation","CI/CD et automatisation pour accélérer le déploiement",{"config":123},{"icon":124,"href":125,"dataGaName":126,"dataGaLocation":48},"AutomatedCodeAlt","/fr-fr/solutions/delivery-automation/","automated software delivery",[128,131,135,140],{"text":27,"config":129},{"href":130,"dataGaLocation":48,"dataGaName":27},"/fr-fr/solutions/continuous-integration/",{"text":132,"config":133},"Développement assisté par l'IA",{"href":82,"dataGaLocation":48,"dataGaName":134},"AI assisted development",{"text":136,"config":137},"Gestion du code source",{"href":138,"dataGaLocation":48,"dataGaName":139},"/fr-fr/solutions/source-code-management/","Source Code Management",{"text":141,"config":142},"Livraison de logiciels automatisée",{"href":125,"dataGaLocation":48,"dataGaName":143},"Automated software delivery",{"title":145,"description":146,"link":147,"items":152},"Securité","Livrez du code plus rapidement sans compromettre la sécurité",{"config":148},{"href":149,"dataGaName":150,"dataGaLocation":48,"icon":151},"/fr-fr/solutions/security-compliance/","security and compliance","ShieldCheckLight",[153,157,162],{"text":154,"config":155},"Sécurité et conformité",{"href":149,"dataGaLocation":48,"dataGaName":156},"Security & Compliance",{"text":158,"config":159},"Sécurité de la chaîne d'approvisionnement logicielle",{"href":160,"dataGaLocation":48,"dataGaName":161},"/fr-fr/solutions/supply-chain/","Software supply chain security",{"text":163,"config":164},"Conformité et gouvernance",{"href":165,"dataGaLocation":48,"dataGaName":166},"/fr-fr/solutions/continuous-software-compliance/","Compliance and governance",{"title":168,"link":169,"items":174},"Mesures",{"config":170},{"icon":171,"href":172,"dataGaName":173,"dataGaLocation":48},"DigitalTransformation","/fr-fr/solutions/visibility-measurement/","visibility and measurement",[175,179,184],{"text":176,"config":177},"Visibilité et mesures",{"href":172,"dataGaLocation":48,"dataGaName":178},"Visibility and Measurement",{"text":180,"config":181},"Gestion de la chaîne de valeur",{"href":182,"dataGaLocation":48,"dataGaName":183},"/fr-fr/solutions/value-stream-management/","Value Stream Management",{"text":185,"config":186},"Données d'analyse et informations clés",{"href":187,"dataGaLocation":48,"dataGaName":188},"/fr-fr/solutions/analytics-and-insights/","Analytics and insights",{"title":190,"items":191},"GitLab pour",[192,197,202],{"text":193,"config":194},"Entreprises",{"href":195,"dataGaLocation":48,"dataGaName":196},"/fr-fr/enterprise/","enterprise",{"text":198,"config":199},"PME",{"href":200,"dataGaLocation":48,"dataGaName":201},"/fr-fr/small-business/","small business",{"text":203,"config":204},"Secteur public",{"href":205,"dataGaLocation":48,"dataGaName":206},"/fr-fr/solutions/public-sector/","public sector",{"text":208,"config":209},"Tarifs",{"href":210,"dataGaName":211,"dataGaLocation":48,"dataNavLevelOne":211},"/fr-fr/pricing/","pricing",{"text":213,"config":214,"link":216,"lists":220,"feature":304},"Ressources",{"dataNavLevelOne":215},"resources",{"text":217,"config":218},"Afficher toutes les ressources",{"href":219,"dataGaName":215,"dataGaLocation":48},"/fr-fr/resources/",[221,254,276],{"title":222,"items":223},"Premiers pas",[224,229,234,239,244,249],{"text":225,"config":226},"Installation",{"href":227,"dataGaName":228,"dataGaLocation":48},"/fr-fr/install/","install",{"text":230,"config":231},"Guides de démarrage rapide",{"href":232,"dataGaName":233,"dataGaLocation":48},"/fr-fr/get-started/","quick setup checklists",{"text":235,"config":236},"Apprentissage",{"href":237,"dataGaLocation":48,"dataGaName":238},"https://university.gitlab.com/","learn",{"text":240,"config":241},"Documentation sur le produit",{"href":242,"dataGaName":243,"dataGaLocation":48},"https://docs.gitlab.com/","product documentation",{"text":245,"config":246},"Vidéos sur les bonnes pratiques",{"href":247,"dataGaName":248,"dataGaLocation":48},"/fr-fr/getting-started-videos/","best practice videos",{"text":250,"config":251},"Intégrations",{"href":252,"dataGaName":253,"dataGaLocation":48},"/fr-fr/integrations/","integrations",{"title":255,"items":256},"Découvrir",[257,262,266,271],{"text":258,"config":259},"Histoires de succès client",{"href":260,"dataGaName":261,"dataGaLocation":48},"/fr-fr/customers/","customer success stories",{"text":263,"config":264},"Blog",{"href":265,"dataGaName":5,"dataGaLocation":48},"/fr-fr/blog/",{"text":267,"config":268},"Travail à distance",{"href":269,"dataGaName":270,"dataGaLocation":48},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"text":272,"config":273},"TeamOps",{"href":274,"dataGaName":275,"dataGaLocation":48},"/fr-fr/teamops/","teamops",{"title":277,"items":278},"Connecter",[279,284,289,294,299],{"text":280,"config":281},"Services GitLab",{"href":282,"dataGaName":283,"dataGaLocation":48},"/fr-fr/services/","services",{"text":285,"config":286},"Communauté",{"href":287,"dataGaName":288,"dataGaLocation":48},"/community/","community",{"text":290,"config":291},"Forum",{"href":292,"dataGaName":293,"dataGaLocation":48},"https://forum.gitlab.com/","forum",{"text":295,"config":296},"Événements",{"href":297,"dataGaName":298,"dataGaLocation":48},"/events/","events",{"text":300,"config":301},"Partenaires",{"href":302,"dataGaName":303,"dataGaLocation":48},"/fr-fr/partners/","partners",{"backgroundColor":305,"textColor":306,"text":307,"image":308,"link":312},"#2f2a6b","#fff","L'avenir du développement logiciel. Tendances et perspectives.",{"altText":309,"config":310},"carte promo The Source",{"src":311},"/images/navigation/the-source-promo-card.svg",{"text":313,"config":314},"Lire les articles les plus récents",{"href":315,"dataGaName":316,"dataGaLocation":48},"/fr-fr/the-source/","the source",{"text":318,"config":319,"lists":321},"Société",{"dataNavLevelOne":320},"company",[322],{"items":323},[324,329,335,337,342,347,352,357,362,367,372],{"text":325,"config":326},"À propos",{"href":327,"dataGaName":328,"dataGaLocation":48},"/fr-fr/company/","about",{"text":330,"config":331,"footerGa":334},"Emplois",{"href":332,"dataGaName":333,"dataGaLocation":48},"/jobs/","jobs",{"dataGaName":333},{"text":295,"config":336},{"href":297,"dataGaName":298,"dataGaLocation":48},{"text":338,"config":339},"Leadership",{"href":340,"dataGaName":341,"dataGaLocation":48},"/company/team/e-group/","leadership",{"text":343,"config":344},"Équipe",{"href":345,"dataGaName":346,"dataGaLocation":48},"/company/team/","team",{"text":348,"config":349},"Manuel",{"href":350,"dataGaName":351,"dataGaLocation":48},"https://handbook.gitlab.com/","handbook",{"text":353,"config":354},"Relations avec les investisseurs",{"href":355,"dataGaName":356,"dataGaLocation":48},"https://ir.gitlab.com/","investor relations",{"text":358,"config":359},"Centre de confiance",{"href":360,"dataGaName":361,"dataGaLocation":48},"/fr-fr/security/","trust center",{"text":363,"config":364},"Centre pour la transparence de l'IA",{"href":365,"dataGaName":366,"dataGaLocation":48},"/fr-fr/ai-transparency-center/","ai transparency center",{"text":368,"config":369},"Newsletter",{"href":370,"dataGaName":371,"dataGaLocation":48},"/company/contact/","newsletter",{"text":373,"config":374},"Presse",{"href":375,"dataGaName":376,"dataGaLocation":48},"/press/","press",{"text":378,"config":379,"lists":380},"Nous contacter",{"dataNavLevelOne":320},[381],{"items":382},[383,386,391],{"text":55,"config":384},{"href":57,"dataGaName":385,"dataGaLocation":48},"talk to sales",{"text":387,"config":388},"Aide",{"href":389,"dataGaName":390,"dataGaLocation":48},"/support/","get help",{"text":392,"config":393},"Portail clients GitLab",{"href":394,"dataGaName":395,"dataGaLocation":48},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":397,"login":398,"suggestions":405},"Fermer",{"text":399,"link":400},"Pour rechercher des dépôts et des projets, connectez-vous à",{"text":401,"config":402},"gitlab.com",{"href":62,"dataGaName":403,"dataGaLocation":404},"search login","search",{"text":406,"default":407},"Suggestions",[408,411,416,418,423,428],{"text":77,"config":409},{"href":82,"dataGaName":410,"dataGaLocation":404},"GitLab Duo (AI)",{"text":412,"config":413},"Suggestions de code (IA)",{"href":414,"dataGaName":415,"dataGaLocation":404},"/fr-fr/solutions/code-suggestions/","Code Suggestions (AI)",{"text":27,"config":417},{"href":130,"dataGaName":27,"dataGaLocation":404},{"text":419,"config":420},"GitLab sur AWS",{"href":421,"dataGaName":422,"dataGaLocation":404},"/fr-fr/partners/technology-partners/aws/","GitLab on AWS",{"text":424,"config":425},"GitLab sur Google Cloud ",{"href":426,"dataGaName":427,"dataGaLocation":404},"/fr-fr/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":429,"config":430},"Pourquoi utiliser GitLab ?",{"href":90,"dataGaName":431,"dataGaLocation":404},"Why GitLab?",{"freeTrial":433,"mobileIcon":438,"desktopIcon":443},{"text":434,"config":435},"Commencer votre essai gratuit",{"href":436,"dataGaName":53,"dataGaLocation":437},"https://gitlab.com/-/trials/new/","nav",{"altText":439,"config":440},"Icône GitLab",{"src":441,"dataGaName":442,"dataGaLocation":437},"/images/brand/gitlab-logo-tanuki.svg","gitlab icon",{"altText":439,"config":444},{"src":445,"dataGaName":442,"dataGaLocation":437},"/images/brand/gitlab-logo-type.svg",{"freeTrial":447,"mobileIcon":451,"desktopIcon":453},{"text":448,"config":449},"En savoir plus sur GitLab Duo",{"href":82,"dataGaName":450,"dataGaLocation":437},"gitlab duo",{"altText":439,"config":452},{"src":441,"dataGaName":442,"dataGaLocation":437},{"altText":439,"config":454},{"src":445,"dataGaName":442,"dataGaLocation":437},"content:shared:fr-fr:main-navigation.yml","Main Navigation","shared/fr-fr/main-navigation.yml","shared/fr-fr/main-navigation",{"_path":460,"_dir":42,"_draft":6,"_partial":6,"_locale":7,"title":461,"button":462,"config":466,"_id":468,"_type":34,"_source":36,"_file":469,"_stem":470,"_extension":39},"/shared/fr-fr/banner","GitLab Duo Agent Platform est maintenant disponible en version bêta publique !",{"text":88,"config":463},{"href":464,"dataGaName":465,"dataGaLocation":48},"/gitlab-duo/agent-platform/","duo banner",{"layout":467},"release","content:shared:fr-fr:banner.yml","shared/fr-fr/banner.yml","shared/fr-fr/banner",{"_path":472,"_dir":42,"_draft":6,"_partial":6,"_locale":7,"data":473,"_id":679,"_type":34,"title":680,"_source":36,"_file":681,"_stem":682,"_extension":39},"/shared/fr-fr/main-footer",{"text":474,"source":475,"edit":481,"contribute":486,"config":491,"items":496,"minimal":670},"Git est une marque déposée de Software Freedom Conservancy et notre utilisation de « GitLab » est sous licence",{"text":476,"config":477},"Afficher le code source de la page",{"href":478,"dataGaName":479,"dataGaLocation":480},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":482,"config":483},"Modifier cette page",{"href":484,"dataGaName":485,"dataGaLocation":480},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":487,"config":488},"Veuillez contribuer",{"href":489,"dataGaName":490,"dataGaLocation":480},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":492,"facebook":493,"youtube":494,"linkedin":495},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[497,520,574,607,641],{"title":66,"links":498,"subMenu":503},[499],{"text":500,"config":501},"Plateforme DevSecOps",{"href":75,"dataGaName":502,"dataGaLocation":480},"devsecops platform",[504],{"title":208,"links":505},[506,510,515],{"text":507,"config":508},"Voir les forfaits",{"href":210,"dataGaName":509,"dataGaLocation":480},"view plans",{"text":511,"config":512},"Pourquoi choisir GitLab Premium ?",{"href":513,"dataGaName":514,"dataGaLocation":480},"/fr-fr/pricing/premium/","why premium",{"text":516,"config":517},"Pourquoi choisir GitLab Ultimate ?",{"href":518,"dataGaName":519,"dataGaLocation":480},"/fr-fr/pricing/ultimate/","why ultimate",{"title":521,"links":522},"Solutions",[523,528,531,533,538,543,547,550,553,558,560,562,564,569],{"text":524,"config":525},"Transformation digitale",{"href":526,"dataGaName":527,"dataGaLocation":480},"/fr-fr/topics/digital-transformation/","digital transformation",{"text":154,"config":529},{"href":149,"dataGaName":530,"dataGaLocation":480},"security & compliance",{"text":141,"config":532},{"href":125,"dataGaName":126,"dataGaLocation":480},{"text":534,"config":535},"Développement agile",{"href":536,"dataGaName":537,"dataGaLocation":480},"/fr-fr/solutions/agile-delivery/","agile delivery",{"text":539,"config":540},"Transformation cloud",{"href":541,"dataGaName":542,"dataGaLocation":480},"/fr-fr/topics/cloud-native/","cloud transformation",{"text":544,"config":545},"SCM",{"href":138,"dataGaName":546,"dataGaLocation":480},"source code management",{"text":27,"config":548},{"href":130,"dataGaName":549,"dataGaLocation":480},"continuous integration & delivery",{"text":180,"config":551},{"href":182,"dataGaName":552,"dataGaLocation":480},"value stream management",{"text":554,"config":555},"GitOps",{"href":556,"dataGaName":557,"dataGaLocation":480},"/fr-fr/solutions/gitops/","gitops",{"text":193,"config":559},{"href":195,"dataGaName":196,"dataGaLocation":480},{"text":198,"config":561},{"href":200,"dataGaName":201,"dataGaLocation":480},{"text":203,"config":563},{"href":205,"dataGaName":206,"dataGaLocation":480},{"text":565,"config":566},"Formation",{"href":567,"dataGaName":568,"dataGaLocation":480},"/fr-fr/solutions/education/","education",{"text":570,"config":571},"Services financiers",{"href":572,"dataGaName":573,"dataGaLocation":480},"/fr-fr/solutions/finance/","financial services",{"title":213,"links":575},[576,578,580,582,585,587,591,593,595,597,599,601,603,605],{"text":225,"config":577},{"href":227,"dataGaName":228,"dataGaLocation":480},{"text":230,"config":579},{"href":232,"dataGaName":233,"dataGaLocation":480},{"text":235,"config":581},{"href":237,"dataGaName":238,"dataGaLocation":480},{"text":240,"config":583},{"href":242,"dataGaName":584,"dataGaLocation":480},"docs",{"text":263,"config":586},{"href":265,"dataGaName":5},{"text":588,"config":589},"Histoires de réussite client",{"href":590,"dataGaLocation":480},"/customers/",{"text":258,"config":592},{"href":260,"dataGaName":261,"dataGaLocation":480},{"text":267,"config":594},{"href":269,"dataGaName":270,"dataGaLocation":480},{"text":280,"config":596},{"href":282,"dataGaName":283,"dataGaLocation":480},{"text":272,"config":598},{"href":274,"dataGaName":275,"dataGaLocation":480},{"text":285,"config":600},{"href":287,"dataGaName":288,"dataGaLocation":480},{"text":290,"config":602},{"href":292,"dataGaName":293,"dataGaLocation":480},{"text":295,"config":604},{"href":297,"dataGaName":298,"dataGaLocation":480},{"text":300,"config":606},{"href":302,"dataGaName":303,"dataGaLocation":480},{"title":318,"links":608},[609,611,613,615,617,619,621,625,630,632,634,636],{"text":325,"config":610},{"href":327,"dataGaName":320,"dataGaLocation":480},{"text":330,"config":612},{"href":332,"dataGaName":333,"dataGaLocation":480},{"text":338,"config":614},{"href":340,"dataGaName":341,"dataGaLocation":480},{"text":343,"config":616},{"href":345,"dataGaName":346,"dataGaLocation":480},{"text":348,"config":618},{"href":350,"dataGaName":351,"dataGaLocation":480},{"text":353,"config":620},{"href":355,"dataGaName":356,"dataGaLocation":480},{"text":622,"config":623},"Sustainability",{"href":624,"dataGaName":622,"dataGaLocation":480},"/sustainability/",{"text":626,"config":627},"Diversité, inclusion et appartenance (DIB)",{"href":628,"dataGaName":629,"dataGaLocation":480},"/fr-fr/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":358,"config":631},{"href":360,"dataGaName":361,"dataGaLocation":480},{"text":368,"config":633},{"href":370,"dataGaName":371,"dataGaLocation":480},{"text":373,"config":635},{"href":375,"dataGaName":376,"dataGaLocation":480},{"text":637,"config":638},"Déclaration de transparence sur l'esclavage moderne",{"href":639,"dataGaName":640,"dataGaLocation":480},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"title":378,"links":642},[643,646,648,650,655,660,665],{"text":644,"config":645},"Échanger avec un expert",{"href":57,"dataGaName":58,"dataGaLocation":480},{"text":387,"config":647},{"href":389,"dataGaName":390,"dataGaLocation":480},{"text":392,"config":649},{"href":394,"dataGaName":395,"dataGaLocation":480},{"text":651,"config":652},"Statut",{"href":653,"dataGaName":654,"dataGaLocation":480},"https://status.gitlab.com/","status",{"text":656,"config":657},"Conditions d'utilisation",{"href":658,"dataGaName":659},"/terms/","terms of use",{"text":661,"config":662},"Déclaration de confidentialité",{"href":663,"dataGaName":664,"dataGaLocation":480},"/fr-fr/privacy/","privacy statement",{"text":666,"config":667},"Préférences en matière de cookies",{"dataGaName":668,"dataGaLocation":480,"id":669,"isOneTrustButton":111},"cookie preferences","ot-sdk-btn",{"items":671},[672,674,677],{"text":656,"config":673},{"href":658,"dataGaName":659,"dataGaLocation":480},{"text":675,"config":676},"Politique de confidentialité",{"href":663,"dataGaName":664,"dataGaLocation":480},{"text":666,"config":678},{"dataGaName":668,"dataGaLocation":480,"id":669,"isOneTrustButton":111},"content:shared:fr-fr:main-footer.yml","Main Footer","shared/fr-fr/main-footer.yml","shared/fr-fr/main-footer",[684],{"_path":685,"_dir":686,"_draft":6,"_partial":6,"_locale":7,"content":687,"config":691,"_id":693,"_type":34,"title":18,"_source":36,"_file":694,"_stem":695,"_extension":39},"/en-us/blog/authors/veethika-mishra","authors",{"name":18,"config":688},{"headshot":689,"ctfId":690},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664676/Blog/Author%20Headshots/veethika-headshot.jpg","veethika",{"template":692},"BlogAuthor","content:en-us:blog:authors:veethika-mishra.yml","en-us/blog/authors/veethika-mishra.yml","en-us/blog/authors/veethika-mishra",{"_path":697,"_dir":42,"_draft":6,"_partial":6,"_locale":7,"header":698,"eyebrow":699,"blurb":700,"button":701,"secondaryButton":705,"_id":707,"_type":34,"title":708,"_source":36,"_file":709,"_stem":710,"_extension":39},"/shared/fr-fr/next-steps","Commencez à livrer des logiciels de meilleurs qualité plus rapidement","Plus de 50 % des entreprises du classement Fortune 100 font confiance à GitLab","Découvrez comment la plateforme DevSecOps intelligente\n\n\npeut aider votre équipe.\n",{"text":50,"config":702},{"href":703,"dataGaName":53,"dataGaLocation":704},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":55,"config":706},{"href":57,"dataGaName":58,"dataGaLocation":704},"content:shared:fr-fr:next-steps.yml","Next Steps","shared/fr-fr/next-steps.yml","shared/fr-fr/next-steps",1754424540543]