[{"data":1,"prerenderedAt":1015},["ShallowReactive",2],{"/blog/getting-started-gitlab-ci-gcp":3,"navigation-en-us":229,"banner-en-us":656,"footer-en-us":666,"blog-post-authors-en-us-GitLab":910,"blog-related-posts-en-us-getting-started-gitlab-ci-gcp":925,"blog-promotions-en-us":951,"next-steps-en-us":1005},{"id":4,"title":5,"authors":6,"body":8,"category":207,"date":208,"description":209,"extension":210,"externalUrl":211,"faq":211,"featured":212,"heroImage":213,"meta":214,"navigation":215,"path":216,"seo":217,"slug":221,"stem":222,"tags":223,"template":227,"updatedDate":211,"__hash__":228},"blogPosts/en-us/blog/getting-started-gitlab-ci-gcp.md","Getting started with GitLab CI/CD and Google Cloud Platform",[7],"GitLab",{"type":9,"value":10,"toc":195},"minimark",[11,41,45,58,61,66,69,76,102,108,112,127,134,139,142,148,151,155,169,173,188],[12,13,14,15,20,21,25,26,30,31,35,36,40],"p",{},"Earlier this month ",[16,17,19],"a",{"href":18},"/blog/gke-gitlab-integration/","we announced our new native integration with Google Kubernetes Engine (GKE)",",\nallowing you to ",[16,22,24],{"href":23},"/topics/ci-cd/","set up CI/CD"," and Kubernetes deployment in just a few clicks. If you're new to\nGitLab CI on Google Cloud Platform (GCP), we've put together a quick ",[16,27,29],{"href":28},"#demo","demo"," and ",[16,32,34],{"href":33},"#instructions","instructions"," you can view below. For a more detailed walkthrough and the chance to ask questions, join us on April 26 for a ",[16,37,39],{"href":38},"#join-google-and-gitlab-for-a-live-demo","live demo",".",[42,43,44],"h2",{"id":29},"Demo",[46,47,50,51],"figure",{"className":48},[49],"video_container","\n  ",[52,53,57],"iframe",{"src":54,"frameBorder":55,"allowFullScreen":56},"https://www.youtube.com/embed/u3jFf3tTtMk","0","true"," ",[42,59,60],{"id":34},"Instructions",[62,63,65],"h3",{"id":64},"add-a-kubernetes-engine-cluster","Add a Kubernetes Engine cluster",[12,67,68],{},"Head on over to the CI/CD -> Kubernetes menu option in the GitLab UI. Here you can add your existing cluster to your project or create a brand new one.",[12,70,71],{},[72,73],"img",{"alt":74,"src":75},"Add your Kubernetes cluster","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782398348/blog/Content%20Images/gitlab-ci-gcp/step1.png",[12,77,78,79,84,85,84,90,95,96,101],{},"Once connected, you can install applications like ",[16,80,83],{"href":81,"rel":82},"https://helm.sh/",[],"Helm Tiller",", ",[16,86,89],{"href":87,"rel":88},"https://kubernetes.io/docs/concepts/services-networking/ingress/",[],"Ingress",[16,91,94],{"href":92,"rel":93},"https://docs.gitlab.com/administration/monitoring/prometheus/",[],"Prometheus",", and ",[16,97,100],{"href":98,"rel":99},"https://docs.gitlab.com/ci/runners/",[],"GitLab Runner"," to your cluster with just one click.",[12,103,104],{},[72,105],{"alt":106,"src":107},"Install applications","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782398348/blog/Content%20Images/gitlab-ci-gcp/install-applications.png",[62,109,111],{"id":110},"enable-auto-devops","Enable Auto DevOps",[12,113,114,115,120,121,126],{},"We've also worked with Google to integrate ",[16,116,119],{"href":117,"rel":118},"https://docs.gitlab.com/topics/autodevops/",[],"GitLab Auto DevOps"," with GKE. Using them together, you'll have a continuous deployment pipeline that automatically creates a ",[16,122,125],{"href":123,"rel":124},"https://docs.gitlab.com/ci/review_apps/",[],"review app"," for each merge request and once you merge, deploys the application into production on production-ready GKE.",[12,128,129,130,40],{},"To get started, go to CI/CD -> General pipeline settings, and select “Enable Auto DevOps.” For more information, read the ",[16,131,133],{"href":117,"rel":132},[],"Auto DevOps docs",[12,135,136],{},[72,137],{"alt":111,"src":138},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1782398348/blog/Content%20Images/gitlab-ci-gcp/step2.png",[12,140,141],{},"Auto DevOps takes the manual work out of CI/CD by automatically detecting what languages you’re using, and configuring a continuous integration and continuous deployment pipeline that results in your app running live on the Kubernetes Engine cluster.",[12,143,144],{},[72,145],{"alt":146,"src":147},"Review pipeline","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782398348/blog/Content%20Images/gitlab-ci-gcp/step3.png",[12,149,150],{},"Now, whenever you create a merge request, we'll run a review pipeline to deploy a review app to your cluster where you can preview your changes. When you merge the code, GitLab will run a production pipeline to deploy your app to production, running on Kubernetes Engine!",[42,152,154],{"id":153},"get-500-credit-for-your-project","Get $500 credit for your project",[12,156,157,158,163,164,40],{},"Every new Google Cloud Platform account receives $300 in credit ",[16,159,162],{"href":160,"rel":161},"https://console.cloud.google.com/freetrial?utm_campaign=2018_cpanel&utm_source=gitlab&utm_medium=referral",[],"upon signup",". In partnership with Google, we're offering an additional $200 for both new and existing GCP accounts to get started with the GKE integration. Here's a link to ",[16,165,168],{"href":166,"rel":167},"https://goo.gl/AaJzRW",[],"apply for your $200 credit",[42,170,172],{"id":171},"join-google-and-gitlab-for-a-live-demo","Join Google and GitLab for a live demo",[12,174,175,176,181,182,187],{},"Join Google’s ",[16,177,180],{"href":178,"rel":179},"https://www.linkedin.com/in/williamdenniss/",[],"William Denniss"," and GitLab’s ",[16,183,186],{"href":184,"rel":185},"https://www.linkedin.com/in/williamchia/",[],"William Chia"," for a walkthrough of the integration on April 26. You’ll learn how easy it is to set up a Kubernetes cluster, how to deploy your app using GitLab CI/CD, and how GKE enables you to deploy, update, and manage containerized applications at scale.",[12,189,190,194],{},[16,191,193],{"href":192},"/events/","Register today","!",{"title":196,"searchDepth":197,"depth":197,"links":198},"",2,[199,200,205,206],{"id":29,"depth":197,"text":44},{"id":34,"depth":197,"text":60,"children":201},[202,204],{"id":64,"depth":203,"text":65},3,{"id":110,"depth":203,"text":111},{"id":153,"depth":197,"text":154},{"id":171,"depth":197,"text":172},"engineering","2018-04-24","Discover how easy it is to set up CI/CD and Kubernetes deployment with our integration with Google Kubernetes Engine.","md",null,false,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671280/Blog/Hero%20Images/gitlab-gke-integration-cover.png",{},true,"/en-us/blog/getting-started-gitlab-ci-gcp",{"title":5,"description":209,"ogTitle":5,"ogDescription":209,"noIndex":212,"ogImage":213,"ogUrl":218,"ogSiteName":219,"ogType":220,"canonicalUrls":218},"https://about.gitlab.com/blog/getting-started-gitlab-ci-gcp","https://about.gitlab.com","article","getting-started-gitlab-ci-gcp","en-us/blog/getting-started-gitlab-ci-gcp",[224,225,226,29],"google","GKE","kubernetes","BlogPost","gFy9MURyozaZgNaUQC03Zdyr0vHSibc98W6nNZ4m8wc",{"logo":230,"freeTrial":235,"sales":240,"login":245,"items":250,"search":576,"minimal":607,"duo":626,"switchNav":635,"pricingDeployment":646},{"config":231},{"href":232,"dataGaName":233,"dataGaLocation":234},"/","gitlab logo","header",{"text":236,"config":237},"Get free trial",{"href":238,"dataGaName":239,"dataGaLocation":234},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":241,"config":242},"Request a demo",{"href":243,"dataGaName":244,"dataGaLocation":234},"/sales/?contact-topic=request-demo","sales",{"text":246,"config":247},"Sign in",{"href":248,"dataGaName":249,"dataGaLocation":234},"https://gitlab.com/users/sign_in/","sign in",[251,280,380,385,498,554],{"text":252,"config":253,"menu":255},"Platform",{"dataNavLevelOne":254},"platform",{"type":256,"columns":257},"cards",[258,264,272],{"title":252,"description":259,"link":260},"The intelligent orchestration platform for DevSecOps",{"text":261,"config":262},"Explore our Platform",{"href":263,"dataGaName":254,"dataGaLocation":234},"/platform/",{"title":265,"description":266,"link":267},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":268,"config":269},"Meet GitLab Duo",{"href":270,"dataGaName":271,"dataGaLocation":234},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":273,"description":274,"link":275},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":276,"config":277},"Learn more",{"href":278,"dataGaName":279,"dataGaLocation":234},"/why-gitlab/","why gitlab",{"text":281,"left":215,"config":282,"menu":284},"Product",{"dataNavLevelOne":283},"solutions",{"type":285,"link":286,"columns":290,"feature":359},"lists",{"text":287,"config":288},"View all Solutions",{"href":289,"dataGaName":283,"dataGaLocation":234},"/solutions/",[291,315,338],{"title":292,"description":293,"link":294,"items":299},"Automation","CI/CD and automation to accelerate deployment",{"config":295},{"icon":296,"href":297,"dataGaName":298,"dataGaLocation":234},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[300,304,307,311],{"text":301,"config":302},"CI/CD",{"href":303,"dataGaLocation":234,"dataGaName":301},"/solutions/continuous-integration/",{"text":265,"config":305},{"href":270,"dataGaLocation":234,"dataGaName":306},"gitlab duo agent platform - product menu",{"text":308,"config":309},"Source Code Management",{"href":310,"dataGaLocation":234,"dataGaName":308},"/solutions/source-code-management/",{"text":312,"config":313},"Automated Software Delivery",{"href":297,"dataGaLocation":234,"dataGaName":314},"Automated software delivery",{"title":316,"description":317,"link":318,"items":323},"Security","Deliver code faster without compromising security",{"config":319},{"href":320,"dataGaName":321,"dataGaLocation":234,"icon":322},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[324,328,333],{"text":325,"config":326},"Application Security Testing",{"href":320,"dataGaName":327,"dataGaLocation":234},"Application security testing",{"text":329,"config":330},"Software Supply Chain Security",{"href":331,"dataGaLocation":234,"dataGaName":332},"/solutions/supply-chain/","Software supply chain security",{"text":334,"config":335},"Software Compliance",{"href":336,"dataGaName":337,"dataGaLocation":234},"/solutions/software-compliance/","software compliance",{"title":339,"link":340,"items":345},"Measurement",{"config":341},{"icon":342,"href":343,"dataGaName":344,"dataGaLocation":234},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[346,350,354],{"text":347,"config":348},"Visibility & Measurement",{"href":343,"dataGaLocation":234,"dataGaName":349},"Visibility and Measurement",{"text":351,"config":352},"Value Stream Management",{"href":353,"dataGaLocation":234,"dataGaName":351},"/solutions/value-stream-management/",{"text":355,"config":356},"Analytics & Insights",{"href":357,"dataGaLocation":234,"dataGaName":358},"/solutions/analytics-and-insights/","Analytics and insights",{"title":360,"type":285,"items":361},"GitLab for",[362,368,374],{"text":363,"config":364},"Enterprise",{"icon":365,"href":366,"dataGaLocation":234,"dataGaName":367},"Building","/enterprise/","enterprise",{"text":369,"config":370},"Small Business",{"icon":371,"href":372,"dataGaLocation":234,"dataGaName":373},"Work","/small-business/","small business",{"text":375,"config":376},"Public Sector",{"icon":377,"href":378,"dataGaLocation":234,"dataGaName":379},"Organization","/solutions/public-sector/","public sector",{"text":381,"config":382},"Pricing",{"href":383,"dataGaName":384,"dataGaLocation":234,"dataNavLevelOne":384},"/pricing/","pricing",{"text":386,"config":387,"menu":389},"Resources",{"dataNavLevelOne":388},"resources",{"type":285,"link":390,"columns":394,"feature":487},{"text":391,"config":392},"View all resources",{"href":393,"dataGaName":388,"dataGaLocation":234},"/resources/",[395,428,455],{"title":396,"items":397},"Getting started",[398,403,408,413,418,423],{"text":399,"config":400},"Install",{"href":401,"dataGaName":402,"dataGaLocation":234},"/install/","install",{"text":404,"config":405},"Quick start guides",{"href":406,"dataGaName":407,"dataGaLocation":234},"/get-started/","quick setup checklists",{"text":409,"config":410},"Learn",{"href":411,"dataGaLocation":234,"dataGaName":412},"https://university.gitlab.com/","learn",{"text":414,"config":415},"Product documentation",{"href":416,"dataGaName":417,"dataGaLocation":234},"https://docs.gitlab.com/","product documentation",{"text":419,"config":420},"Best practice videos",{"href":421,"dataGaName":422,"dataGaLocation":234},"/getting-started-videos/","best practice videos",{"text":424,"config":425},"Integrations",{"href":426,"dataGaName":427,"dataGaLocation":234},"/integrations/","integrations",{"title":429,"items":430},"Discover",[431,436,441,446,450],{"text":432,"config":433},"Customer success stories",{"href":434,"dataGaName":435,"dataGaLocation":234},"/customers/","customer success stories",{"text":437,"config":438},"Blog",{"href":439,"dataGaName":440,"dataGaLocation":234},"/blog/","blog",{"text":442,"config":443},"Demo Hub",{"href":444,"dataGaName":445,"dataGaLocation":234},"/demo-hub/","demo hub",{"text":447,"config":448},"The Source",{"href":449,"dataGaName":440,"dataGaLocation":234},"/the-source/",{"text":451,"config":452},"Remote",{"href":453,"dataGaName":454,"dataGaLocation":234},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":456,"items":457},"Connect",[458,463,468,473,478,482],{"text":459,"config":460},"GitLab Services",{"href":461,"dataGaName":462,"dataGaLocation":234},"/services/","services",{"text":464,"config":465},"Contribute",{"href":466,"dataGaName":467,"dataGaLocation":234},"https://contributors.gitlab.com","contribute",{"text":469,"config":470},"Community",{"href":471,"dataGaName":472,"dataGaLocation":234},"/community/","community",{"text":474,"config":475},"Forum",{"href":476,"dataGaName":477,"dataGaLocation":234},"https://forum.gitlab.com/","forum",{"text":479,"config":480},"Events",{"href":192,"dataGaName":481,"dataGaLocation":234},"events",{"text":483,"config":484},"Partners",{"href":485,"dataGaName":486,"dataGaLocation":234},"/partners/","partners",{"config":488,"title":491,"text":492,"link":493},{"background":489,"textColor":490},"url('https://res.cloudinary.com/about-gitlab-com/image/upload/v1777322348/qpq8yrgn8knii57omj0c.png')","#000","What’s new in GitLab","Stay updated with our latest features and improvements.",{"text":494,"config":495},"Read the latest",{"href":496,"dataGaName":497,"dataGaLocation":234},"/whats-new/","whats new",{"text":499,"config":500,"menu":502},"Company",{"dataNavLevelOne":501},"company",{"type":285,"columns":503},[504],{"items":505},[506,511,517,519,524,529,534,539,544,549],{"text":507,"config":508},"About",{"href":509,"dataGaName":510,"dataGaLocation":234},"/company/","about",{"text":512,"config":513,"footerGa":516},"Jobs",{"href":514,"dataGaName":515,"dataGaLocation":234},"/jobs/","jobs",{"dataGaName":515},{"text":479,"config":518},{"href":192,"dataGaName":481,"dataGaLocation":234},{"text":520,"config":521},"Leadership",{"href":522,"dataGaName":523,"dataGaLocation":234},"/company/team/e-group/","leadership",{"text":525,"config":526},"Handbook",{"href":527,"dataGaName":528,"dataGaLocation":234},"https://handbook.gitlab.com/","handbook",{"text":530,"config":531},"Investor relations",{"href":532,"dataGaName":533,"dataGaLocation":234},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":535,"config":536},"Trust Center",{"href":537,"dataGaName":538,"dataGaLocation":234},"/security/","trust center",{"text":540,"config":541},"AI Transparency Center",{"href":542,"dataGaName":543,"dataGaLocation":234},"/ai-transparency-center/","ai transparency center",{"text":545,"config":546},"Newsletter",{"href":547,"dataGaName":548,"dataGaLocation":234},"/company/contact/#contact-forms","newsletter",{"text":550,"config":551},"Press",{"href":552,"dataGaName":553,"dataGaLocation":234},"/press/","press",{"text":555,"config":556,"menu":557},"Contact us",{"dataNavLevelOne":501},{"type":285,"columns":558},[559],{"items":560},[561,566,571],{"text":562,"config":563},"Talk to sales",{"href":564,"dataGaName":565,"dataGaLocation":234},"/sales/","talk to sales",{"text":567,"config":568},"Support portal",{"href":569,"dataGaName":570,"dataGaLocation":234},"https://support.gitlab.com/hc/en-us","support portal",{"text":572,"config":573},"Customer portal",{"href":574,"dataGaName":575,"dataGaLocation":234},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":577,"login":578,"suggestions":585},"Close",{"text":579,"link":580},"To search repositories and projects, login to",{"text":581,"config":582},"gitlab.com",{"href":248,"dataGaName":583,"dataGaLocation":584},"search login","search",{"text":586,"default":587},"Suggestions",[588,590,594,596,600,604],{"text":265,"config":589},{"href":270,"dataGaName":265,"dataGaLocation":584},{"text":591,"config":592},"Code Suggestions (AI)",{"href":593,"dataGaName":591,"dataGaLocation":584},"/solutions/code-suggestions/",{"text":301,"config":595},{"href":303,"dataGaName":301,"dataGaLocation":584},{"text":597,"config":598},"GitLab on AWS",{"href":599,"dataGaName":597,"dataGaLocation":584},"/partners/technology-partners/aws/",{"text":601,"config":602},"GitLab on Google Cloud",{"href":603,"dataGaName":601,"dataGaLocation":584},"/partners/technology-partners/google-cloud-platform/",{"text":605,"config":606},"Why GitLab?",{"href":278,"dataGaName":605,"dataGaLocation":584},{"freeTrial":608,"mobileIcon":613,"desktopIcon":618,"secondaryButton":621},{"text":609,"config":610},"Start free trial",{"href":611,"dataGaName":239,"dataGaLocation":612},"https://gitlab.com/-/trials/new/","nav",{"altText":614,"config":615},"Gitlab Icon",{"src":616,"dataGaName":617,"dataGaLocation":612},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":614,"config":619},{"src":620,"dataGaName":617,"dataGaLocation":612},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":622,"config":623},"Get Started",{"href":624,"dataGaName":625,"dataGaLocation":612},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":627,"mobileIcon":631,"desktopIcon":633},{"text":628,"config":629},"Learn more about GitLab Duo",{"href":270,"dataGaName":630,"dataGaLocation":612},"gitlab duo",{"altText":614,"config":632},{"src":616,"dataGaName":617,"dataGaLocation":612},{"altText":614,"config":634},{"src":620,"dataGaName":617,"dataGaLocation":612},{"button":636,"mobileIcon":641,"desktopIcon":643},{"text":637,"config":638},"/switch",{"href":639,"dataGaName":640,"dataGaLocation":612},"#contact","switch",{"altText":614,"config":642},{"src":616,"dataGaName":617,"dataGaLocation":612},{"altText":614,"config":644},{"src":645,"dataGaName":617,"dataGaLocation":612},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":647,"mobileIcon":652,"desktopIcon":654},{"text":648,"config":649},"Back to pricing",{"href":383,"dataGaName":650,"dataGaLocation":612,"icon":651},"back to pricing","GoBack",{"altText":614,"config":653},{"src":616,"dataGaName":617,"dataGaLocation":612},{"altText":614,"config":655},{"src":620,"dataGaName":617,"dataGaLocation":612},{"title":657,"titleMobile":658,"button":659,"config":664},"Duo Agent Platform delivers 400% ROI, per new Forrester Consulting study.","400% ROI: Forrester TEI for GitLab Duo",{"text":276,"config":660},{"href":661,"dataGaName":662,"dataGaLocation":663},"https://about.gitlab.com/blog/gitlab-duo-agent-platform-delivers-400-percent-roi/","forrester-tei-dap-banner","global-banner",{"layout":665,"disabled":212},"release",{"data":667},{"text":668,"source":669,"edit":675,"contribute":680,"config":685,"items":690,"minimal":899},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":670,"config":671},"View page source",{"href":672,"dataGaName":673,"dataGaLocation":674},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":676,"config":677},"Edit this page",{"href":678,"dataGaName":679,"dataGaLocation":674},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":681,"config":682},"Please contribute",{"href":683,"dataGaName":684,"dataGaLocation":674},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":686,"facebook":687,"youtube":688,"linkedin":689},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[691,738,791,835,867],{"title":381,"links":692,"subMenu":707},[693,697,702],{"text":694,"config":695},"View plans",{"href":383,"dataGaName":696,"dataGaLocation":674},"view plans",{"text":698,"config":699},"Why Premium?",{"href":700,"dataGaName":701,"dataGaLocation":674},"/pricing/premium/","why premium",{"text":703,"config":704},"Why Ultimate?",{"href":705,"dataGaName":706,"dataGaLocation":674},"/pricing/ultimate/","why ultimate",[708],{"title":709,"links":710},"Contact Us",[711,714,716,718,723,728,733],{"text":712,"config":713},"Contact sales",{"href":564,"dataGaName":244,"dataGaLocation":674},{"text":567,"config":715},{"href":569,"dataGaName":570,"dataGaLocation":674},{"text":572,"config":717},{"href":574,"dataGaName":575,"dataGaLocation":674},{"text":719,"config":720},"Status",{"href":721,"dataGaName":722,"dataGaLocation":674},"https://status.gitlab.com/","status",{"text":724,"config":725},"Terms of use",{"href":726,"dataGaName":727,"dataGaLocation":674},"/terms/","terms of use",{"text":729,"config":730},"Privacy statement",{"href":731,"dataGaName":732,"dataGaLocation":674},"/privacy/","privacy statement",{"text":734,"config":735},"Cookie preferences",{"dataGaName":736,"dataGaLocation":674,"id":737,"isOneTrustButton":215},"cookie preferences","ot-sdk-btn",{"title":281,"links":739,"subMenu":748},[740,744],{"text":741,"config":742},"DevSecOps platform",{"href":263,"dataGaName":743,"dataGaLocation":674},"devsecops platform",{"text":745,"config":746},"AI-Assisted Development",{"href":270,"dataGaName":747,"dataGaLocation":674},"ai-assisted development",[749],{"title":750,"links":751},"Topics",[752,756,761,766,771,776,781,786],{"text":753,"config":754},"CICD",{"href":23,"dataGaName":755,"dataGaLocation":674},"cicd",{"text":757,"config":758},"GitOps",{"href":759,"dataGaName":760,"dataGaLocation":674},"/topics/gitops/","gitops",{"text":762,"config":763},"DevOps",{"href":764,"dataGaName":765,"dataGaLocation":674},"/topics/devops/","devops",{"text":767,"config":768},"Version Control",{"href":769,"dataGaName":770,"dataGaLocation":674},"/topics/version-control/","version control",{"text":772,"config":773},"DevSecOps",{"href":774,"dataGaName":775,"dataGaLocation":674},"/topics/devsecops/","devsecops",{"text":777,"config":778},"Cloud Native",{"href":779,"dataGaName":780,"dataGaLocation":674},"/topics/cloud-native/","cloud native",{"text":782,"config":783},"AI for Coding",{"href":784,"dataGaName":785,"dataGaLocation":674},"/topics/devops/ai-for-coding/","ai for coding",{"text":787,"config":788},"Agentic AI",{"href":789,"dataGaName":790,"dataGaLocation":674},"/topics/agentic-ai/","agentic ai",{"title":792,"links":793},"Solutions",[794,796,798,803,807,810,814,817,819,822,825,830],{"text":325,"config":795},{"href":320,"dataGaName":325,"dataGaLocation":674},{"text":314,"config":797},{"href":297,"dataGaName":298,"dataGaLocation":674},{"text":799,"config":800},"Agile development",{"href":801,"dataGaName":802,"dataGaLocation":674},"/solutions/agile-delivery/","agile delivery",{"text":804,"config":805},"SCM",{"href":310,"dataGaName":806,"dataGaLocation":674},"source code management",{"text":753,"config":808},{"href":303,"dataGaName":809,"dataGaLocation":674},"continuous integration & delivery",{"text":811,"config":812},"Value stream management",{"href":353,"dataGaName":813,"dataGaLocation":674},"value stream management",{"text":757,"config":815},{"href":816,"dataGaName":760,"dataGaLocation":674},"/solutions/gitops/",{"text":363,"config":818},{"href":366,"dataGaName":367,"dataGaLocation":674},{"text":820,"config":821},"Small business",{"href":372,"dataGaName":373,"dataGaLocation":674},{"text":823,"config":824},"Public sector",{"href":378,"dataGaName":379,"dataGaLocation":674},{"text":826,"config":827},"Education",{"href":828,"dataGaName":829,"dataGaLocation":674},"/solutions/education/","education",{"text":831,"config":832},"Financial services",{"href":833,"dataGaName":834,"dataGaLocation":674},"/solutions/finance/","financial services",{"title":386,"links":836},[837,839,841,843,846,848,851,853,855,857,859,861,863,865],{"text":399,"config":838},{"href":401,"dataGaName":402,"dataGaLocation":674},{"text":404,"config":840},{"href":406,"dataGaName":407,"dataGaLocation":674},{"text":409,"config":842},{"href":411,"dataGaName":412,"dataGaLocation":674},{"text":414,"config":844},{"href":416,"dataGaName":845,"dataGaLocation":674},"docs",{"text":437,"config":847},{"href":439,"dataGaName":440,"dataGaLocation":674},{"text":849,"config":850},"What's new",{"href":496,"dataGaName":497,"dataGaLocation":674},{"text":432,"config":852},{"href":434,"dataGaName":435,"dataGaLocation":674},{"text":451,"config":854},{"href":453,"dataGaName":454,"dataGaLocation":674},{"text":459,"config":856},{"href":461,"dataGaName":462,"dataGaLocation":674},{"text":464,"config":858},{"href":466,"dataGaName":467,"dataGaLocation":674},{"text":469,"config":860},{"href":471,"dataGaName":472,"dataGaLocation":674},{"text":474,"config":862},{"href":476,"dataGaName":477,"dataGaLocation":674},{"text":479,"config":864},{"href":192,"dataGaName":481,"dataGaLocation":674},{"text":483,"config":866},{"href":485,"dataGaName":486,"dataGaLocation":674},{"title":499,"links":868},[869,871,873,875,877,879,883,888,890,892,894],{"text":507,"config":870},{"href":509,"dataGaName":501,"dataGaLocation":674},{"text":512,"config":872},{"href":514,"dataGaName":515,"dataGaLocation":674},{"text":520,"config":874},{"href":522,"dataGaName":523,"dataGaLocation":674},{"text":525,"config":876},{"href":527,"dataGaName":528,"dataGaLocation":674},{"text":530,"config":878},{"href":532,"dataGaName":533,"dataGaLocation":674},{"text":880,"config":881},"Sustainability",{"href":882,"dataGaName":880,"dataGaLocation":674},"/sustainability/",{"text":884,"config":885},"Diversity, inclusion and belonging (DIB)",{"href":886,"dataGaName":887,"dataGaLocation":674},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":535,"config":889},{"href":537,"dataGaName":538,"dataGaLocation":674},{"text":545,"config":891},{"href":547,"dataGaName":548,"dataGaLocation":674},{"text":550,"config":893},{"href":552,"dataGaName":553,"dataGaLocation":674},{"text":895,"config":896},"Modern Slavery Transparency Statement",{"href":897,"dataGaName":898,"dataGaLocation":674},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":900},[901,904,907],{"text":902,"config":903},"Terms",{"href":726,"dataGaName":727,"dataGaLocation":674},{"text":905,"config":906},"Cookies",{"dataGaName":736,"dataGaLocation":674,"id":737,"isOneTrustButton":215},{"text":908,"config":909},"Privacy",{"href":731,"dataGaName":732,"dataGaLocation":674},[911],{"id":912,"title":913,"body":211,"config":914,"content":916,"description":211,"extension":919,"meta":920,"navigation":215,"path":921,"seo":922,"stem":923,"__hash__":924},"blogAuthors/en-us/blog/authors/gitlab.yml","Gitlab",{"template":915},"BlogAuthor",{"name":7,"config":917},{"headshot":918,"ctfId":7},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659488/Blog/Author%20Headshots/gitlab-logo-extra-whitespace.png","yml",{},"/en-us/blog/authors/gitlab",{},"en-us/blog/authors/gitlab","XCBKIcPoCs6zi2oHG7o-bAp52Jhaw8_zGhIJ2jNrEjU",[926,935,943],{"title":927,"description":928,"heroImage":929,"category":207,"date":930,"authors":931,"slug":934,"externalUrl":211},"Confidential AI for GitLab Self-Hosted","Give developers AI coding agents in GitLab Duo without source code leaving a hardware-encrypted boundary — no GPUs needed.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1773866173/vte9qh8rriznvyclhkes.png","2026-08-06",[932,933],"Mathias Ewald","Martin Paloncy, Edgeless Systems","confidential-ai-for-gitlab-self-hosted",{"title":936,"description":937,"heroImage":938,"category":207,"date":939,"authors":940,"slug":942,"externalUrl":211},"Green DevOps: Why carbon measurement belongs in your CI/CD pipeline","CI/CD pipelines have a hidden carbon cost. Here's why measuring it matters, and how you can get started with Eco CI and Carmen in GitLab.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1765809212/noh0mdfn9o94ry9ykura.png","2026-07-09",[941],"Lysanne Pinto","green-devops-carbon-measurement-cicd-pipeline",{"title":944,"description":945,"heroImage":946,"category":207,"date":947,"authors":948,"slug":950,"externalUrl":211},"How to build CI/CD observability at scale","This practical guide to GitLab pipeline analytics helps self-managed users gain operational insights using Prometheus and Grafana.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1774465167/n5hlvrsrheadeccyr1oz.png","2026-04-28",[949],"Paul Meresanu","how-to-build-ci-cd-observability-at-scale",{"promotions":952},[953,967,979,991],{"id":954,"categories":955,"header":957,"text":958,"button":959,"image":964},"ai-modernization",[956],"ai","Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":960,"config":961},"Get your AI maturity score",{"href":962,"dataGaName":963,"dataGaLocation":440},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":965},{"src":966},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":968,"categories":969,"header":971,"text":958,"button":972,"image":976},"devops-modernization",[970,775],"product","Are you just managing tools or shipping innovation?",{"text":973,"config":974},"Get your DevOps maturity score",{"href":975,"dataGaName":963,"dataGaLocation":440},"/assessments/devops-modernization-assessment/",{"config":977},{"src":978},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":980,"categories":981,"header":983,"text":958,"button":984,"image":988},"security-modernization",[982],"security","Are you trading speed for security?",{"text":985,"config":986},"Get your security maturity score",{"href":987,"dataGaName":963,"dataGaLocation":440},"/assessments/security-modernization-assessment/",{"config":989},{"src":990},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":992,"paths":993,"header":996,"text":997,"button":998,"image":1003},"github-azure-migration",[994,995],"migration-from-azure-devops-to-gitlab","integrating-azure-devops-scm-and-gitlab","Is your team ready for GitHub's Azure move?","GitHub is already rebuilding around Azure. Find out what it means for you.",{"text":999,"config":1000},"See how GitLab compares to GitHub",{"href":1001,"dataGaName":1002,"dataGaLocation":440},"/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":1004},{"src":978},{"header":1006,"blurb":1007,"button":1008,"secondaryButton":1013},"Start building faster today","See what your team can do with the intelligent orchestration platform for DevSecOps.\n",{"text":1009,"config":1010},"Get your free trial",{"href":1011,"dataGaName":239,"dataGaLocation":1012},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":712,"config":1014},{"href":564,"dataGaName":244,"dataGaLocation":1012},1786803749680]