[{"data":1,"prerenderedAt":1290},["ShallowReactive",2],{"/fr-fr/blog/getting-started-with-gitlab-working-with-ci-cd-variables":3,"navigation-fr-fr":506,"banner-fr-fr":939,"footer-fr-fr":947,"blog-post-authors-fr-fr-GitLab Team":1186,"blog-related-posts-fr-fr-getting-started-with-gitlab-working-with-ci-cd-variables":1202,"blog-promotions-fr-fr":1228,"next-steps-fr-fr":1281},{"id":4,"title":5,"authors":6,"body":8,"category":481,"date":482,"description":483,"extension":484,"externalUrl":485,"faq":485,"featured":486,"heroImage":487,"meta":488,"navigation":486,"path":489,"seo":490,"slug":495,"stem":496,"tags":497,"template":503,"updatedDate":504,"__hash__":505},"blogPosts/fr-fr/blog/getting-started-with-gitlab-working-with-ci-cd-variables.md","Premiers pas avec GitLab : comment tirer parti des variables CI/CD",[7],"GitLab Team",{"type":9,"value":10,"toc":470},"minimark",[11,31,36,51,55,58,86,90,93,215,219,222,278,282,292,346,350,359,362,388,392,406,410,413,424,428,431,466],[12,13,14,18,19,25,26,30],"p",{},[15,16,17],"em",{},"Bienvenue dans notre série « Premiers pas avec GitLab », conçue pour guider les nouveaux utilisateurs dans la prise en main de la plateforme DevSecOps de GitLab.","\nAprès avoir exploré les bases de ",[20,21,24],"a",{"href":22,"rel":23},"https://about.gitlab.com/fr-fr/blog/getting-started-with-gitlab-understanding-ci-cd/",[],"l'approche CI/CD de GitLab"," dans notre précédent article, concentrons-nous à présent sur les ",[27,28,29],"strong",{},"variables CI/CD"," afin de tirer pleinement parti de leur potentiel.",[32,33,35],"h2",{"id":34},"quest-ce-quune-variable-cicd","Qu’est-ce qu’une variable CI/CD ?",[12,37,38,39,45,46,50],{},"Les variables CI/CD sont des paires clé-valeur dynamiques que vous pouvez définir à différents niveaux (projet, groupe ou instance par exemple) au sein de votre environnement GitLab. Elles permettent de personnaliser les ",[20,40,44],{"href":41,"rel":42,"title":43},"https://about.gitlab.com/fr-fr/topics/ci-cd/cicd-pipeline/",[],"Qu'est-ce qu'un pipeline CI/CD ?","pipelines CI/CD",", de centraliser les configurations et de gérer en toute sécurité des données sensibles. Intégrées directement dans le fichier ",[47,48,49],"code",{},".gitlab-ci.yml"," comme des espaces réservés pour les valeurs correspondantes, elles facilitent la maintenance, renforcent la sécurité et améliorent la flexibilité des workflows CI/CD.",[32,52,54],{"id":53},"quel-est-le-rôle-des-variables-cicd","Quel est le rôle des variables CI/CD ?",[12,56,57],{},"Les variables CI/CD offrent de nombreux avantages :",[59,60,61,68,74,80],"ul",{},[62,63,64,67],"li",{},[27,65,66],{},"Flexibilité"," : adaptez facilement vos pipelines à différents environnements, configurations ou cibles de déploiement sans modifier votre script CI/CD principal.",[62,69,70,73],{},[27,71,72],{},"Sécurité"," : stockez en toute sécurité des informations sensibles telles que des clés API, des mots de passe et des tokens sans les exposer dans votre code.",[62,75,76,79],{},[27,77,78],{},"Maintenabilité"," : en centralisant les valeurs, elles simplifient la gestion et les mises à jour de votre configuration CI/CD pour qu'elle reste structurée correctement.",[62,81,82,85],{},[27,83,84],{},"Réutilisation"," : définies une seule fois, elles peuvent être réutilisées dans plusieurs projets, ce qui favorise la cohérence et réduit les doublons.",[32,87,89],{"id":88},"portées-des-variablescicd-projet-groupe-et-instance","Portées des variables CI/CD : projet, groupe et instance",[12,91,92],{},"GitLab permet de définir des variables CI/CD à différentes niveaux hiérarchiques du projet, avec un contrôle précis sur leur visibilité, leur portée et leur accessibilité :",[59,94,95,101,107,113,119,137,143,149,155,168,174,186,192,198],{},[62,96,97,100],{},[27,98,99],{},"Variables au niveau du projet"," : elles sont propres à un seul projet et idéales pour stocker des paramètres spécifiques, notamment :",[62,102,103,106],{},[27,104,105],{},"L'URL de déploiement"," : définissez des URL distinctes pour les environnements de préproduction et de production.",[62,108,109,112],{},[27,110,111],{},"Les identifiants de connexion à la base de données"," : stockez les données de connexion à la base de données afin de pouvoir les utiliser lors d'un test ou d'un déploiement.",[62,114,115,118],{},[27,116,117],{},"Les feature flags"," : activez ou désactivez les fonctionnalités à différentes étapes de votre pipeline.",[62,120,121,124,125,128,129,132,133,136],{},[27,122,123],{},"Exemple"," : dans le cadre de votre projet ",[47,126,127],{},"MyWebApp",", vous souhaitez stocker l'URL de déploiement de production. Vous pouvez définir une variable au niveau du projet, nommée ",[47,130,131],{},"DPROD_DEPLOY_URL",", avec la valeur ",[47,134,135],{},"https://mywebapp.com"," d'URL de production.",[62,138,139,142],{},[27,140,141],{},"Variables au niveau du groupe"," : elles sont partagées par tous les projets d'un groupe GitLab. Elles sont utiles pour centraliser des paramètres communs à plusieurs projets, notamment :",[62,144,145,148],{},[27,146,147],{},"Les clés API de services partagés"," : stockez-les pour des services tels qu'AWS, Google Cloud ou Docker Hub qui sont utilisés par plusieurs projets au sein du groupe.",[62,150,151,154],{},[27,152,153],{},"Les paramètres de configuration généraux"," : définissez des paramètres de configuration communs qui s'appliquent à tous les projets du groupe.",[62,156,157,159,160,163,164,167],{},[27,158,123],{}," : dans votre groupe ",[47,161,162],{},"Web Apps",", vous souhaitez stocker une clé API pour Docker Hub. Vous pouvez définir une variable au niveau du groupe, nommée ",[47,165,166],{},"DOCKER_HUB_API_KEY",", avec la valeur de clé API correspondante.",[62,169,170,173],{},[27,171,172],{},"Variables au niveau de l'instance"," : elles sont disponibles pour tous les projets d'une instance GitLab et couramment utilisées pour les paramètres généraux qui s'appliquent à l'ensemble de l'entreprise, notamment :",[62,175,176,179,180,185],{},[27,177,178],{},"Le token d'enregistrement de runner par défaut"," : fournissez un token par défaut pour l'enregistrement de nouveaux ",[20,181,184],{"href":182,"rel":183},"https://docs.gitlab.com/runner/",[],"runners",".",[62,187,188,191],{},[27,189,190],{},"Les informations sur la licence"," : stockez les clés de licence des fonctionnalités GitLab ou des outils tiers.",[62,193,194,197],{},[27,195,196],{},"Les paramètres d'environnement généraux"," : définissez des variables d'environnement qui doivent être disponibles pour tous les projets.",[62,199,200,202,203,208,209,132,212,185],{},[27,201,123],{}," : vous souhaitez définir une image ",[20,204,207],{"href":205,"rel":206,"title":207},"https://about.gitlab.com/fr-fr/blog/what-is-docker-comprehensive-guide/",[],"Docker"," par défaut pour tous les projets de votre instance GitLab. Vous pouvez définir une variable au niveau de l'instance, nommée ",[47,210,211],{},"DEFAULT_DOCKER_IMAGE",[47,213,214],{},"ubuntu:latest",[32,216,218],{"id":217},"comment-définir-des-variablescicd","Comment définir des variables CI/CD ?",[12,220,221],{},"Pour définir une variable CI/CD, voici comment procéder :",[223,224,225,232,238,244,259,266,273],"ol",{},[62,226,227,228,231],{},"Cliquez sur les boutons ",[27,229,230],{},"Paramètres > CI/CD"," de votre projet, groupe ou instance.",[62,233,234,235,185],{},"Accédez à la section ",[27,236,237],{},"Variables",[62,239,240,241,185],{},"Cliquez sur ",[27,242,243],{},"Ajouter une variable",[62,245,246,247,250,251,254,255,258],{},"Saisissez la ",[27,248,249],{},"clé"," (par exemple, ",[47,252,253],{},"API_KEY",") et la ",[27,256,257],{},"valeur"," correspondante.",[62,260,261,262,265],{},"Facultatif : cochez l'option ",[27,263,264],{},"Protéger la variable"," si elle contient des données sensibles afin de restreindre son utilisation aux pipelines qui s'exécutent sur des branches ou des tags protégés.",[62,267,268,269,272],{},"Facultatif : cochez la case ",[27,270,271],{},"Masquer la variable"," pour masquer sa valeur dans les job logs, afin d'éviter toute exposition accidentelle.",[62,274,240,275,185],{},[27,276,277],{},"Enregistrer la variable",[32,279,281],{"id":280},"comment-utiliser-des-variablescicd","Comment utiliser des variables CI/CD ?",[12,283,284,285,287,288,291],{},"Pour utiliser une variable CI/CD dans votre fichier ",[47,286,49],{},", faites simplement précéder le nom de la variable du symbole ",[47,289,290],{},"$"," :",[293,294,299],"pre",{"className":295,"code":296,"language":297,"meta":298,"style":298},"language-yaml shiki shiki-themes github-light","deploy_job:\n  script:\n    - echo \"Deploying to production...\"\n    - curl -H \"Authorization: Bearer $API_KEY\" https://api.example.com/deploy\n","yaml","",[47,300,301,314,322,332],{"__ignoreMap":298},[302,303,306,310],"span",{"class":304,"line":305},"line",1,[302,307,309],{"class":308},"shJU0","deploy_job",[302,311,313],{"class":312},"sgsFI",":\n",[302,315,317,320],{"class":304,"line":316},2,[302,318,319],{"class":308},"  script",[302,321,313],{"class":312},[302,323,325,328],{"class":304,"line":324},3,[302,326,327],{"class":312},"    - ",[302,329,331],{"class":330},"sYBdl","echo \"Deploying to production...\"\n",[302,333,335,337,340,343],{"class":304,"line":334},4,[302,336,327],{"class":312},[302,338,339],{"class":308},"curl -H \"Authorization",[302,341,342],{"class":312},": ",[302,344,345],{"class":330},"Bearer $API_KEY\" https://api.example.com/deploy\n",[32,347,349],{"id":348},"comment-utiliser-les-variablescicd-prédéfinies-dans-gitlab","Comment utiliser les variables CI/CD prédéfinies dans GitLab ?",[12,351,352,353,358],{},"GitLab met à disposition un ensemble de ",[20,354,357],{"href":355,"rel":356},"https://docs.gitlab.com/ci/variables/predefined_variables/",[],"variables CI/CD prédéfinies"," que vous pouvez utiliser dans vos pipelines CI/CD. Celles-ci fournissent des informations contextuelles sur le pipeline, le job, le projet en cours, et bien plus encore.",[12,360,361],{},"Voici les variables plus couramment utilisées :",[59,363,364,370,376,382],{},[62,365,366,369],{},[47,367,368],{},"$CI_COMMIT_SHA"," : SHA de validation qui déclenche le pipeline",[62,371,372,375],{},[47,373,374],{},"$CI_PROJECT_DIR"," : répertoire dans lequel le projet est cloné",[62,377,378,381],{},[47,379,380],{},"$CI_PIPELINE_ID"," : ID du pipeline en cours",[62,383,384,387],{},[47,385,386],{},"$CI_ENVIRONMENT_NAME"," : nom de l'environnement de déploiement cible (le cas échéant)",[32,389,391],{"id":390},"bonnes-pratiques-pour-lutilisation-des-variablescicd","Bonnes pratiques pour l'utilisation des variables CI/CD",[59,393,394,397,400,403],{},[62,395,396],{},"Gérez en toute sécurité les variables sensibles : utilisez des variables protégées et masquées pour stocker les clés API, les mots de passe et tout autre secret.",[62,398,399],{},"Évitez de coder en dur les valeurs : stockez les valeurs de configuration dans des variables afin de renforcer la flexibilité et la maintenance de vos pipelines.",[62,401,402],{},"Organisez vos variables : utilisez des noms explicites et regroupez les variables par usage pour faciliter leur gestion.",[62,404,405],{},"Choisissez la portée appropriée : définissez vos variables au niveau du projet, groupe ou instance en fonction de leur utilisation prévue et de leur visibilité.",[32,407,409],{"id":408},"tirez-parti-de-la-puissance-des-variablescicd","Tirez parti de la puissance des variables CI/CD",[12,411,412],{},"Les variables CI/CD sont un outil puissant pour personnaliser et sécuriser vos pipelines GitLab. En maîtrisant leur fonctionnement et en comprenant leurs différentes portées, vous pouvez créer des workflows plus flexibles, plus faciles à maintenir et plus efficaces.",[414,415,416],"blockquote",{},[12,417,418,419,185],{},"Prêt à passer à l’action ? Commencez à utiliser les variables CI/CD dès aujourd'hui et profitez d'un ",[20,420,423],{"href":421,"rel":422},"https://about.gitlab.com/fr-fr/free-trial/",[],"essai gratuit de GitLab Ultimate avec Duo Enterprise",[32,425,427],{"id":426},"articles-de-la-série-premiers-pas-avec-gitlab","Articles de la série « Premiers pas avec GitLab »",[12,429,430],{},"Découvrez les autres articles de notre série « Premiers pas avec GitLab » :",[59,432,433,440,453,460],{},[62,434,435],{},[20,436,439],{"href":437,"rel":438},"https://about.gitlab.com/fr-fr/blog/getting-started-with-gitlab-how-to-manage-users/",[],"Comment gérer les utilisateurs",[62,441,442,447,448],{},[20,443,446],{"href":444,"rel":445},"https://about.gitlab.com/fr-fr/blog/getting-started-with-gitlab-how-to-import-your-projects-to-gitlab/",[],"Comment importer vos projets dans GitLab","  * ",[20,449,452],{"href":450,"rel":451},"https://about.gitlab.com/fr-fr/blog/getting-started-with-gitlab-mastering-project-management/",[],"Comment maîtriser la gestion de projet",[62,454,455],{},[20,456,459],{"href":457,"rel":458},"https://about.gitlab.com/fr-fr/blog/automating-agile-workflows-with-the-gitlab-triage-gem/",[],"La gemme gitlab-triage : votre alliée pour des workflows Agile automatisés",[62,461,462],{},[20,463,465],{"href":22,"rel":464},[],"Comprendre l'approche CI/CD",[467,468,469],"style",{},"html pre.shiki code .shJU0, html code.shiki .shJU0{--shiki-default:#22863A}html pre.shiki code .sgsFI, html code.shiki .sgsFI{--shiki-default:#24292E}html pre.shiki code .sYBdl, html code.shiki .sYBdl{--shiki-default:#032F62}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":298,"searchDepth":316,"depth":316,"links":471},[472,473,474,475,476,477,478,479,480],{"id":34,"depth":316,"text":35},{"id":53,"depth":316,"text":54},{"id":88,"depth":316,"text":89},{"id":217,"depth":316,"text":218},{"id":280,"depth":316,"text":281},{"id":348,"depth":316,"text":349},{"id":390,"depth":316,"text":391},{"id":408,"depth":316,"text":409},{"id":426,"depth":316,"text":427},"product","2025-05-27","Découvrez les variables CI/CD, leur rôle clé dans l'approche DevSecOps ainsi que les bonnes pratiques relatives à leur utilisation.","md",null,true,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659525/Blog/Hero%20Images/blog-getting-started-with-gitlab-banner-0497-option4-fy25.png",{},"/fr-fr/blog/getting-started-with-gitlab-working-with-ci-cd-variables",{"ogTitle":5,"ogImage":487,"ogDescription":483,"ogSiteName":491,"noIndex":492,"ogType":493,"ogUrl":494,"title":5,"canonicalUrls":494,"description":483},"https://about.gitlab.com",false,"article","https://about.gitlab.com/blog/getting-started-with-gitlab-working-with-ci-cd-variables","getting-started-with-gitlab-working-with-ci-cd-variables","fr-fr/blog/getting-started-with-gitlab-working-with-ci-cd-variables",[481,498,499,500,501,502],"tutorial","CI","CD","CI/CD","features","BlogPost","2025-06-10","l12FLxLTjMGy4yGhJa_QWIyK56wlCglz0C-k9YW9A8k",{"logo":507,"freeTrial":512,"sales":517,"login":522,"items":527,"search":854,"minimal":890,"duo":909,"switchNav":918,"pricingDeployment":929},{"config":508},{"href":509,"dataGaName":510,"dataGaLocation":511},"/fr-fr/","gitlab logo","header",{"text":513,"config":514},"Commencer un essai gratuit",{"href":515,"dataGaName":516,"dataGaLocation":511},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/fr-fr&glm_content=default-saas-trial/","free trial",{"text":518,"config":519},"Demander une démo",{"href":520,"dataGaName":521,"dataGaLocation":511},"/fr-fr/sales/?contact-topic=request-demo","sales",{"text":523,"config":524},"Connexion",{"href":525,"dataGaName":526,"dataGaLocation":511},"https://gitlab.com/users/sign_in/","sign in",[528,557,657,662,776,832],{"text":529,"config":530,"menu":532},"Plateforme",{"dataNavLevelOne":531},"platform",{"type":533,"columns":534},"cards",[535,541,549],{"title":529,"description":536,"link":537},"La plateforme d'orchestration intelligente pour le DevSecOps",{"text":538,"config":539},"Explorer notre plateforme",{"href":540,"dataGaName":531,"dataGaLocation":511},"/fr-fr/platform/",{"title":542,"description":543,"link":544},"GitLab Duo Agent Platform","L'IA agentique pour l'ensemble du cycle de développement logiciel",{"text":545,"config":546},"Découvrir GitLab Duo",{"href":547,"dataGaName":548,"dataGaLocation":511},"/fr-fr/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":550,"description":551,"link":552},"Pourquoi GitLab ?","Découvrez les principales raisons pour lesquelles les entreprises choisissent GitLab",{"text":553,"config":554},"En savoir plus",{"href":555,"dataGaName":556,"dataGaLocation":511},"/fr-fr/why-gitlab/","why gitlab",{"text":558,"left":486,"config":559,"menu":561},"Produit",{"dataNavLevelOne":560},"solutions",{"type":562,"link":563,"columns":567,"feature":636},"lists",{"text":564,"config":565},"Voir toutes les solutions",{"href":566,"dataGaName":560,"dataGaLocation":511},"/fr-fr/solutions/",[568,592,614],{"title":569,"description":570,"link":571,"items":576},"Automatisation","CI/CD et automatisation pour accélérer le déploiement",{"config":572},{"icon":573,"href":574,"dataGaName":575,"dataGaLocation":511},"AutomatedCodeAlt","/fr-fr/solutions/delivery-automation/","automated software delivery",[577,580,583,588],{"text":501,"config":578},{"href":579,"dataGaLocation":511,"dataGaName":501},"/fr-fr/solutions/continuous-integration/",{"text":542,"config":581},{"href":547,"dataGaLocation":511,"dataGaName":582},"gitlab duo agent platform - product menu",{"text":584,"config":585},"Gestion du code source",{"href":586,"dataGaLocation":511,"dataGaName":587},"/fr-fr/solutions/source-code-management/","Source Code Management",{"text":589,"config":590},"Livraison de logiciels automatisée",{"href":574,"dataGaLocation":511,"dataGaName":591},"Automated software delivery",{"title":72,"description":593,"link":594,"items":599},"Livrez du code plus rapidement sans compromettre la sécurité",{"config":595},{"href":596,"dataGaName":597,"dataGaLocation":511,"icon":598},"/fr-fr/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[600,604,609],{"text":601,"config":602},"Tests de sécurité des applications",{"href":596,"dataGaName":603,"dataGaLocation":511},"Application security testing",{"text":605,"config":606},"Sécurité de la chaîne d'approvisionnement logicielle",{"href":607,"dataGaLocation":511,"dataGaName":608},"/fr-fr/solutions/supply-chain/","Software supply chain security",{"text":610,"config":611},"Conformité logicielle",{"href":612,"dataGaName":613,"dataGaLocation":511},"/fr-fr/solutions/software-compliance/","software compliance",{"title":615,"link":616,"items":621},"Mesures",{"config":617},{"icon":618,"href":619,"dataGaName":620,"dataGaLocation":511},"DigitalTransformation","/fr-fr/solutions/visibility-measurement/","visibility and measurement",[622,626,631],{"text":623,"config":624},"Visibilité et mesures",{"href":619,"dataGaLocation":511,"dataGaName":625},"Visibility and Measurement",{"text":627,"config":628},"Gestion de la chaîne de valeur",{"href":629,"dataGaLocation":511,"dataGaName":630},"/fr-fr/solutions/value-stream-management/","Value Stream Management",{"text":632,"config":633},"Analyses et informations",{"href":634,"dataGaLocation":511,"dataGaName":635},"/fr-fr/solutions/analytics-and-insights/","Analytics and insights",{"title":637,"type":562,"items":638},"GitLab",[639,645,651],{"text":640,"config":641},"Entreprises",{"icon":642,"href":643,"dataGaLocation":511,"dataGaName":644},"Building","/fr-fr/enterprise/","enterprise",{"text":646,"config":647},"Pour les PME",{"icon":648,"href":649,"dataGaLocation":511,"dataGaName":650},"Work","/fr-fr/small-business/","small business",{"text":652,"config":653},"Pour le secteur public",{"icon":654,"href":655,"dataGaLocation":511,"dataGaName":656},"Organization","/fr-fr/solutions/public-sector/","public sector",{"text":658,"config":659},"Tarifs",{"href":660,"dataGaName":661,"dataGaLocation":511,"dataNavLevelOne":661},"/fr-fr/pricing/","pricing",{"text":663,"config":664,"menu":666},"Ressources",{"dataNavLevelOne":665},"resources",{"type":562,"link":667,"columns":671,"feature":765},{"text":668,"config":669},"Afficher toutes les ressources",{"href":670,"dataGaName":665,"dataGaLocation":511},"/fr-fr/resources/",[672,705,732],{"title":673,"items":674},"Premiers pas",[675,680,685,690,695,700],{"text":676,"config":677},"Installation",{"href":678,"dataGaName":679,"dataGaLocation":511},"/fr-fr/install/","install",{"text":681,"config":682},"Guides de démarrage",{"href":683,"dataGaName":684,"dataGaLocation":511},"/fr-fr/get-started/","quick setup checklists",{"text":686,"config":687},"Apprentissage",{"href":688,"dataGaLocation":511,"dataGaName":689},"https://university.gitlab.com/","learn",{"text":691,"config":692},"Documentation",{"href":693,"dataGaName":694,"dataGaLocation":511},"https://docs.gitlab.com/","product documentation",{"text":696,"config":697},"Vidéos sur les bonnes pratiques",{"href":698,"dataGaName":699,"dataGaLocation":511},"/fr-fr/getting-started-videos/","best practice videos",{"text":701,"config":702},"Intégrations",{"href":703,"dataGaName":704,"dataGaLocation":511},"/fr-fr/integrations/","integrations",{"title":706,"items":707},"Découvrir",[708,713,718,723,727],{"text":709,"config":710},"Témoignages clients",{"href":711,"dataGaName":712,"dataGaLocation":511},"/fr-fr/customers/","customer success stories",{"text":714,"config":715},"Blog",{"href":716,"dataGaName":717,"dataGaLocation":511},"/fr-fr/blog/","blog",{"text":719,"config":720},"Demo Hub",{"href":721,"dataGaName":722,"dataGaLocation":511},"/fr-fr/demo-hub/","demo hub",{"text":724,"config":725},"The Source",{"href":726,"dataGaName":717,"dataGaLocation":511},"/fr-fr/the-source/",{"text":728,"config":729},"Travail à distance",{"href":730,"dataGaName":731,"dataGaLocation":511},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":733,"items":734},"Connecter",[735,740,745,750,755,760],{"text":736,"config":737},"Services GitLab",{"href":738,"dataGaName":739,"dataGaLocation":511},"/fr-fr/services/","services",{"text":741,"config":742},"Contribuer",{"href":743,"dataGaName":744,"dataGaLocation":511},"https://contributors.gitlab.com","contribute",{"text":746,"config":747},"Communauté",{"href":748,"dataGaName":749,"dataGaLocation":511},"/community/","community",{"text":751,"config":752},"Forum",{"href":753,"dataGaName":754,"dataGaLocation":511},"https://forum.gitlab.com/","forum",{"text":756,"config":757},"Événements",{"href":758,"dataGaName":759,"dataGaLocation":511},"/events/","events",{"text":761,"config":762},"Partenaires",{"href":763,"dataGaName":764,"dataGaLocation":511},"/fr-fr/partners/","partners",{"config":766,"title":769,"text":770,"link":771},{"background":767,"textColor":768},"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":772,"config":773},"Lire les articles les plus récents",{"href":774,"dataGaName":775,"dataGaLocation":511},"/fr-fr/whats-new/","whats new",{"text":777,"config":778,"menu":780},"Société",{"dataNavLevelOne":779},"company",{"type":562,"columns":781},[782],{"items":783},[784,789,795,797,802,807,812,817,822,827],{"text":785,"config":786},"À propos",{"href":787,"dataGaName":788,"dataGaLocation":511},"/fr-fr/company/","about",{"text":790,"config":791,"footerGa":794},"Carrières",{"href":792,"dataGaName":793,"dataGaLocation":511},"/jobs/","jobs",{"dataGaName":793},{"text":756,"config":796},{"href":758,"dataGaName":759,"dataGaLocation":511},{"text":798,"config":799},"Leadership",{"href":800,"dataGaName":801,"dataGaLocation":511},"/company/team/e-group/","leadership",{"text":803,"config":804},"Manuel",{"href":805,"dataGaName":806,"dataGaLocation":511},"https://handbook.gitlab.com/","handbook",{"text":808,"config":809},"Relations avec les investisseurs",{"href":810,"dataGaName":811,"dataGaLocation":511},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":813,"config":814},"Trust Center",{"href":815,"dataGaName":816,"dataGaLocation":511},"/fr-fr/security/","trust center",{"text":818,"config":819},"Centre pour la transparence de l'IA",{"href":820,"dataGaName":821,"dataGaLocation":511},"/fr-fr/ai-transparency-center/","ai transparency center",{"text":823,"config":824},"Newsletter",{"href":825,"dataGaName":826,"dataGaLocation":511},"/company/contact/#contact-forms","newsletter",{"text":828,"config":829},"Presse",{"href":830,"dataGaName":831,"dataGaLocation":511},"/press/","press",{"text":833,"config":834,"menu":835},"Nous contacter",{"dataNavLevelOne":779},{"type":562,"columns":836},[837],{"items":838},[839,844,849],{"text":840,"config":841},"Contacter l'équipe commerciale",{"href":842,"dataGaName":843,"dataGaLocation":511},"/fr-fr/sales/","talk to sales",{"text":845,"config":846},"Assistance GitLab",{"href":847,"dataGaName":848,"dataGaLocation":511},"https://support.gitlab.com/hc/en-us","support portal",{"text":850,"config":851},"Portail clients GitLab",{"href":852,"dataGaName":853,"dataGaLocation":511},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":855,"login":856,"suggestions":863},"Fermer",{"text":857,"link":858},"Pour rechercher des dépôts et des projets, connectez-vous à",{"text":859,"config":860},"GitLab.com",{"href":525,"dataGaName":861,"dataGaLocation":862},"search login","search",{"text":864,"default":865},"Suggestions",[866,869,874,876,881,886],{"text":542,"config":867},{"href":547,"dataGaName":868,"dataGaLocation":862},"GitLab Duo Agent Platform",{"text":870,"config":871},"Suggestions de code (IA)",{"href":872,"dataGaName":873,"dataGaLocation":862},"/fr-fr/solutions/code-suggestions/","Code Suggestions (AI)",{"text":501,"config":875},{"href":579,"dataGaName":501,"dataGaLocation":862},{"text":877,"config":878},"GitLab sur AWS",{"href":879,"dataGaName":880,"dataGaLocation":862},"/fr-fr/partners/technology-partners/aws/","GitLab on AWS",{"text":882,"config":883},"GitLab sur Google Cloud",{"href":884,"dataGaName":885,"dataGaLocation":862},"/fr-fr/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":887,"config":888},"Pourquoi utiliser GitLab ?",{"href":555,"dataGaName":889,"dataGaLocation":862},"Why GitLab?",{"freeTrial":891,"mobileIcon":896,"desktopIcon":901,"secondaryButton":904},{"text":892,"config":893},"Commencer votre essai gratuit",{"href":894,"dataGaName":516,"dataGaLocation":895},"https://gitlab.com/-/trials/new/","nav",{"altText":897,"config":898},"Icône GitLab",{"src":899,"dataGaName":900,"dataGaLocation":895},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":897,"config":902},{"src":903,"dataGaName":900,"dataGaLocation":895},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":905,"config":906},"Commencer",{"href":907,"dataGaName":908,"dataGaLocation":895},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/fr-fr/get-started/","get started",{"freeTrial":910,"mobileIcon":914,"desktopIcon":916},{"text":911,"config":912},"En savoir plus sur GitLab Duo",{"href":547,"dataGaName":913,"dataGaLocation":895},"gitlab duo",{"altText":897,"config":915},{"src":899,"dataGaName":900,"dataGaLocation":895},{"altText":897,"config":917},{"src":903,"dataGaName":900,"dataGaLocation":895},{"button":919,"mobileIcon":924,"desktopIcon":926},{"text":920,"config":921},"/switch",{"href":922,"dataGaName":923,"dataGaLocation":895},"#contact","switch",{"altText":897,"config":925},{"src":899,"dataGaName":900,"dataGaLocation":895},{"altText":897,"config":927},{"src":928,"dataGaName":900,"dataGaLocation":895},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":930,"mobileIcon":935,"desktopIcon":937},{"text":931,"config":932},"Retour aux tarifs",{"href":660,"dataGaName":933,"dataGaLocation":895,"icon":934},"back to pricing","GoBack",{"altText":897,"config":936},{"src":899,"dataGaName":900,"dataGaLocation":895},{"altText":897,"config":938},{"src":903,"dataGaName":900,"dataGaLocation":895},{"title":940,"button":941,"config":945},"GitLab Orbit est arrivé : la couche de contexte pour les agents d'IA.",{"text":553,"config":942},{"href":943,"dataGaName":944,"dataGaLocation":511},"/fr-fr/gitlab-orbit/","orbit",{"layout":946,"disabled":492},"release",{"data":948},{"text":949,"source":950,"edit":956,"contribute":961,"config":965,"items":970,"minimal":1178},"Git est une marque déposée de Software Freedom Conservancy et notre utilisation de « GitLab » est sous licence.",{"text":951,"config":952},"Afficher le code source de la page",{"href":953,"dataGaName":954,"dataGaLocation":955},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":957,"config":958},"Modifier cette page",{"href":959,"dataGaName":960,"dataGaLocation":955},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":741,"config":962},{"href":963,"dataGaName":964,"dataGaLocation":955},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":966,"facebook":967,"youtube":968,"linkedin":969},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[971,1017,1070,1113,1145],{"title":658,"links":972,"subMenu":987},[973,977,982],{"text":974,"config":975},"Voir les forfaits",{"href":660,"dataGaName":976,"dataGaLocation":955},"view plans",{"text":978,"config":979},"GitLab Premium",{"href":980,"dataGaName":981,"dataGaLocation":955},"/fr-fr/pricing/premium/","why premium",{"text":983,"config":984},"GitLab Ultimate",{"href":985,"dataGaName":986,"dataGaLocation":955},"/fr-fr/pricing/ultimate/","why ultimate",[988],{"title":833,"links":989},[990,992,994,997,1002,1007,1012],{"text":840,"config":991},{"href":842,"dataGaName":521,"dataGaLocation":955},{"text":845,"config":993},{"href":847,"dataGaName":848,"dataGaLocation":955},{"text":995,"config":996},"Portail clients",{"href":852,"dataGaName":853,"dataGaLocation":955},{"text":998,"config":999},"Statut",{"href":1000,"dataGaName":1001,"dataGaLocation":955},"https://status.gitlab.com/","status",{"text":1003,"config":1004},"Conditions d'utilisation",{"href":1005,"dataGaName":1006,"dataGaLocation":955},"/terms/","terms of use",{"text":1008,"config":1009},"Politique de confidentialité",{"href":1010,"dataGaName":1011,"dataGaLocation":955},"/fr-fr/privacy/","privacy statement",{"text":1013,"config":1014},"Gestion des cookies",{"dataGaName":1015,"dataGaLocation":955,"id":1016,"isOneTrustButton":486},"cookie preferences","ot-sdk-btn",{"title":558,"links":1018,"subMenu":1027},[1019,1023],{"text":1020,"config":1021},"Plateforme DevSecOps",{"href":540,"dataGaName":1022,"dataGaLocation":955},"devsecops platform",{"text":1024,"config":1025},"Développement assisté par l'IA",{"href":547,"dataGaName":1026,"dataGaLocation":955},"ai-assisted development",[1028],{"title":1029,"links":1030},"Thèmes",[1031,1035,1040,1045,1050,1055,1060,1065],{"text":501,"config":1032},{"href":1033,"dataGaName":1034,"dataGaLocation":955},"/fr-fr/topics/ci-cd/","cicd",{"text":1036,"config":1037},"GitOps",{"href":1038,"dataGaName":1039,"dataGaLocation":955},"/fr-fr/topics/gitops/","gitops",{"text":1041,"config":1042},"DevOps",{"href":1043,"dataGaName":1044,"dataGaLocation":955},"/fr-fr/topics/devops/","devops",{"text":1046,"config":1047},"Contrôle de version",{"href":1048,"dataGaName":1049,"dataGaLocation":955},"/fr-fr/topics/version-control/","version control",{"text":1051,"config":1052},"DevSecOps",{"href":1053,"dataGaName":1054,"dataGaLocation":955},"/fr-fr/topics/devsecops/","devsecops",{"text":1056,"config":1057},"Cloud-native",{"href":1058,"dataGaName":1059,"dataGaLocation":955},"/fr-fr/topics/cloud-native/","cloud native",{"text":1061,"config":1062},"IA pour la programmation",{"href":1063,"dataGaName":1064,"dataGaLocation":955},"/fr-fr/topics/devops/ai-for-coding/","ai for coding",{"text":1066,"config":1067},"IA agentique",{"href":1068,"dataGaName":1069,"dataGaLocation":955},"/fr-fr/topics/agentic-ai/","agentic ai",{"title":1071,"links":1072},"Solutions",[1073,1076,1078,1083,1086,1089,1092,1095,1097,1100,1103,1108],{"text":601,"config":1074},{"href":596,"dataGaName":1075,"dataGaLocation":955},"Application Security Testing",{"text":589,"config":1077},{"href":574,"dataGaName":575,"dataGaLocation":955},{"text":1079,"config":1080},"Développement Agile",{"href":1081,"dataGaName":1082,"dataGaLocation":955},"/fr-fr/solutions/agile-delivery/","agile delivery",{"text":584,"config":1084},{"href":586,"dataGaName":1085,"dataGaLocation":955},"source code management",{"text":501,"config":1087},{"href":579,"dataGaName":1088,"dataGaLocation":955},"continuous integration & delivery",{"text":627,"config":1090},{"href":629,"dataGaName":1091,"dataGaLocation":955},"value stream management",{"text":1036,"config":1093},{"href":1094,"dataGaName":1039,"dataGaLocation":955},"/fr-fr/solutions/gitops/",{"text":640,"config":1096},{"href":643,"dataGaName":644,"dataGaLocation":955},{"text":1098,"config":1099},"PME",{"href":649,"dataGaName":650,"dataGaLocation":955},{"text":1101,"config":1102},"Secteur public",{"href":655,"dataGaName":656,"dataGaLocation":955},{"text":1104,"config":1105},"Éducation",{"href":1106,"dataGaName":1107,"dataGaLocation":955},"/fr-fr/solutions/education/","education",{"text":1109,"config":1110},"Services financiers",{"href":1111,"dataGaName":1112,"dataGaLocation":955},"/fr-fr/solutions/finance/","financial services",{"title":663,"links":1114},[1115,1117,1119,1121,1124,1126,1129,1131,1133,1135,1137,1139,1141,1143],{"text":676,"config":1116},{"href":678,"dataGaName":679,"dataGaLocation":955},{"text":681,"config":1118},{"href":683,"dataGaName":684,"dataGaLocation":955},{"text":686,"config":1120},{"href":688,"dataGaName":689,"dataGaLocation":955},{"text":691,"config":1122},{"href":693,"dataGaName":1123,"dataGaLocation":955},"docs",{"text":714,"config":1125},{"href":716,"dataGaName":717,"dataGaLocation":955},{"text":1127,"config":1128},"Nouveautés",{"href":774,"dataGaName":775,"dataGaLocation":955},{"text":709,"config":1130},{"href":711,"dataGaName":712,"dataGaLocation":955},{"text":728,"config":1132},{"href":730,"dataGaName":731,"dataGaLocation":955},{"text":736,"config":1134},{"href":738,"dataGaName":739,"dataGaLocation":955},{"text":741,"config":1136},{"href":743,"dataGaName":744,"dataGaLocation":955},{"text":746,"config":1138},{"href":748,"dataGaName":749,"dataGaLocation":955},{"text":751,"config":1140},{"href":753,"dataGaName":754,"dataGaLocation":955},{"text":756,"config":1142},{"href":758,"dataGaName":759,"dataGaLocation":955},{"text":761,"config":1144},{"href":763,"dataGaName":764,"dataGaLocation":955},{"title":777,"links":1146},[1147,1149,1151,1153,1155,1157,1162,1167,1169,1171,1173],{"text":785,"config":1148},{"href":787,"dataGaName":779,"dataGaLocation":955},{"text":790,"config":1150},{"href":792,"dataGaName":793,"dataGaLocation":955},{"text":798,"config":1152},{"href":800,"dataGaName":801,"dataGaLocation":955},{"text":803,"config":1154},{"href":805,"dataGaName":806,"dataGaLocation":955},{"text":808,"config":1156},{"href":810,"dataGaName":811,"dataGaLocation":955},{"text":1158,"config":1159},"Développement durable",{"href":1160,"dataGaName":1161,"dataGaLocation":955},"/sustainability/","Sustainability",{"text":1163,"config":1164},"Diversité, inclusion et appartenance (DIB)",{"href":1165,"dataGaName":1166,"dataGaLocation":955},"/fr-fr/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":813,"config":1168},{"href":815,"dataGaName":816,"dataGaLocation":955},{"text":823,"config":1170},{"href":825,"dataGaName":826,"dataGaLocation":955},{"text":828,"config":1172},{"href":830,"dataGaName":831,"dataGaLocation":955},{"text":1174,"config":1175},"Déclaration de transparence sur l'esclavage moderne",{"href":1176,"dataGaName":1177,"dataGaLocation":955},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":1179},[1180,1182,1184],{"text":1003,"config":1181},{"href":1005,"dataGaName":1006,"dataGaLocation":955},{"text":1013,"config":1183},{"dataGaName":1015,"dataGaLocation":955,"id":1016,"isOneTrustButton":486},{"text":1008,"config":1185},{"href":1010,"dataGaName":1011,"dataGaLocation":955},[1187],{"id":1188,"title":1189,"body":485,"config":1190,"content":1192,"description":485,"extension":1196,"meta":1197,"navigation":486,"path":1198,"seo":1199,"stem":1200,"__hash__":1201},"blogAuthors/en-us/blog/authors/gitlab-team.yml","Gitlab Team",{"template":1191},"BlogAuthor",{"name":7,"config":1193},{"headshot":1194,"ctfId":1195},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659488/Blog/Author%20Headshots/gitlab-logo-extra-whitespace.png","GitLab-Team","yml",{},"/en-us/blog/authors/gitlab-team",{},"en-us/blog/authors/gitlab-team","lmrXWttQYRbkSz_xfCfucB21pf44aAdxkvbbS48UVcE",[1203,1212,1220],{"title":1204,"description":1205,"heroImage":1206,"category":481,"date":1207,"authors":1208,"slug":1211,"externalUrl":485},"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",[1209,1210],"Magdalena Frankiewicz","Priyanka Palanikumar","gitlab-restricted-access-improvements",{"title":1213,"description":1214,"heroImage":1215,"category":481,"date":1216,"authors":1217,"slug":1219,"externalUrl":485},"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",[1218],"Omid Khan","getting-started-with-gitlab-feature-flags-in-python",{"title":1221,"description":1222,"heroImage":1223,"category":481,"date":1224,"authors":1225,"slug":1227,"externalUrl":485},"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",[1226],"Corinne Dent","track-ci-component-usage",{"promotions":1229},[1230,1244,1255,1267],{"id":1231,"categories":1232,"header":1234,"text":1235,"button":1236,"image":1241},"ai-modernization",[1233],"ai","L'IA tient-elle ses promesses à grande échelle ?","Le questionnaire ne prendra pas plus de 5 minutes.",{"text":1237,"config":1238},"Obtenez votre score de maturité IA",{"href":1239,"dataGaName":1240,"dataGaLocation":717},"/fr-fr/assessments/ai-modernization-assessment/","modernization assessment",{"config":1242},{"src":1243},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":1245,"categories":1246,"header":1247,"text":1235,"button":1248,"image":1252},"devops-modernization",[481,1054],"Vous contentez-vous de gérer des outils ou de livrer des innovations ?",{"text":1249,"config":1250},"Obtenez votre score de maturité DevOps",{"href":1251,"dataGaName":1240,"dataGaLocation":717},"/fr-fr/assessments/devops-modernization-assessment/",{"config":1253},{"src":1254},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":1256,"categories":1257,"header":1259,"text":1235,"button":1260,"image":1264},"security-modernization",[1258],"security","Faut-il sacrifier la rapidité pour garantir la sécurité ?",{"text":1261,"config":1262},"Obtenez votre score de maturité en matière de sécurité",{"href":1263,"dataGaName":1240,"dataGaLocation":717},"/fr-fr/assessments/security-modernization-assessment/",{"config":1265},{"src":1266},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":1268,"paths":1269,"header":1272,"text":1273,"button":1274,"image":1279},"github-azure-migration",[1270,1271],"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":1275,"config":1276},"Découvrez les différences entre GitLab et GitHub",{"href":1277,"dataGaName":1278,"dataGaLocation":717},"/fr-fr/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":1280},{"src":1254},{"header":1282,"blurb":1283,"button":1284,"secondaryButton":1288},"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":513,"config":1285},{"href":1286,"dataGaName":516,"dataGaLocation":1287},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/fr-fr/","feature",{"text":840,"config":1289},{"href":842,"dataGaName":521,"dataGaLocation":1287},1786803763356]