[{"data":1,"prerenderedAt":1012},["ShallowReactive",2],{"/blog/introducing-workspaces-beta":3,"navigation-en-us":229,"banner-en-us":657,"footer-en-us":667,"blog-post-authors-en-us-Eric Schurter":911,"blog-related-posts-en-us-introducing-workspaces-beta":926,"blog-promotions-en-us":948,"next-steps-en-us":1002},{"id":4,"title":5,"authors":6,"body":8,"category":208,"date":209,"description":210,"extension":211,"externalUrl":212,"faq":212,"featured":213,"heroImage":214,"meta":215,"navigation":216,"path":217,"seo":218,"slug":222,"stem":223,"tags":224,"template":227,"updatedDate":212,"__hash__":228},"blogPosts/en-us/blog/introducing-workspaces-beta.md","A first look at workspaces: On-demand, cloud-based development environments",[7],"Eric Schurter",{"type":9,"value":10,"toc":200},"minimark",[11,22,30,35,38,41,45,48,108,111,114,127,131,140,171,180,186],[12,13,14,15,21],"p",{},"Cloud-based development tools are quickly gaining popularity for their ability to provide a consistent, secure developer experience and streamline developer onboarding, which can reduce the time it takes for a developer to contribute to a codebase from days to hours, or even minutes. To support this shift in developer workflows, GitLab has introduced a significant upgrade in ",[16,17,20],"a",{"href":18,"rel":19},"https://docs.gitlab.com/user/workspace/",[],"remote development"," in GitLab 16.0. Secure, on-demand, cloud-based development workspaces are now available in Beta for GitLab Premium and Ultimate users on GitLab.com and on self-managed instances.",[12,23,24,25,29],{},"The December 2022 ",[16,26,28],{"href":27},"/blog/get-ready-for-new-gitlab-web-ide/","release of the Web IDE Beta"," delivered a familiar, feature-rich editing experience in your browser and the ability to connect to a remote server and interact with a cloud-based runtime environment. Workspaces take experience to the next level by bringing the configuration, orchestration, and management of your remote development environments into GitLab for the first time.",[31,32,34],"h3",{"id":33},"what-is-a-workspace","What is a workspace?",[12,36,37],{},"A workspace is your personal, ephemeral development environment in the cloud, created using centrally managed and curated dependencies defined in code. Developing with a workspace enables you to spend less time configuring your local development environment and more time focusing on writing code. Instead of managing package updates and troubleshooting version conflicts, consistent and reproducible cloud-based environments are available on demand.",[12,39,40],{},"Each workspace is a unique instance of your environment so you can switch between tasks seamlessly and have confidence that your environment will remain stable between sessions. Whether used as a tool to accelerate developer onboarding, provide stable environments for education purposes, or improve security by limiting the need to clone code locally, workspaces will change how you develop software on GitLab.",[31,42,44],{"id":43},"how-do-you-create-a-workspace","How do you create a workspace?",[12,46,47],{},"To create a workspace in GitLab, you’ll need:",[49,50,51,59,71,88,99],"ul",{},[52,53,54,58],"li",{},[55,56,57],"strong",{},"A cloud platform or self-hosted Kubernetes cluster:"," This release is focused on delivering a “bring your own infrastructure” solution. We know that many of you want complete control over your infrastructure and code, so we have prioritized hosting workspaces on your own infrastructure or in the cloud platform of your choice.",[52,60,61,64,65,70],{},[55,62,63],{},"An agent:"," Everything starts with the GitLab Agent for Kubernetes. Once you have the agent running in a Kubernetes cluster, ",[16,66,69],{"href":67,"rel":68},"https://docs.gitlab.com/user/workspace/#prerequisites",[],"configuring remote development"," is a matter of installing a couple of dependencies and adding a few lines of code to the agent configuration.",[52,72,73,76,77,81,82,87],{},[55,74,75],{},"A devfile:"," After you have an agent configured, you need to define your environment in a ",[78,79,80],"code",{},".devfile.yaml"," file, stored at the root of a project. In this file, you can specify container images, map ports, define volume mounts, ",[16,83,86],{"href":84,"rel":85},"https://docs.gitlab.com/user/workspace/#relevant-schema-properties",[],"and more",".",[52,89,90,93,94,87],{},[55,91,92],{},"An editor:"," In the first iteration, we are supporting the Web IDE and injecting it into the workspace. In future iterations, we will add support for other editors like ",[16,95,98],{"href":96,"rel":97},"https://gitlab.com/gitlab-org/gitlab/-/issues/408381",[],"Jupyter Notebook",[52,100,101,102,107],{},"Optionally, you can ",[16,103,106],{"href":104,"rel":105},"https://docs.gitlab.com/user/workspace/#create-a-workspace",[],"override the default timeout for your workspace"," to make sure you’re using cloud resources efficiently. Since workspaces are meant to be ephemeral, the default lifespan is 24 hours, but it can be set as high as a week.",[12,109,110],{},"After you’ve created your workspace, you can launch the Web IDE with a single click and get right to work.",[12,112,113],{},"Want to see it in action? This short video walks you through the configuration of an agent and the creation of a workspace:",[115,116,119,120],"figure",{"className":117},[118],"video_container","\n  ",[121,122,126],"iframe",{"src":123,"frameBorder":124,"allowFullScreen":125},"https://www.youtube.com/embed/lDVaOtO_JVM","0","true"," ",[31,128,130],{"id":129},"what-comes-next","What comes next?",[12,132,133,134,139],{},"We’re excited to start getting your feedback so we’re introducing this as a Beta for public projects. Your credentials aren't currently being injected into the workspace during its creation, which means you can’t automatically clone private repositories. You can, however, create a workspace and authenticate yourself manually after it’s running. We’ll be working on ",[16,135,138],{"href":136,"rel":137},"https://gitlab.com/groups/gitlab-org/-/epics/10480",[],"injecting credentials"," as well as addressing some other points of friction to make this even easier for developers to adopt. We’ll also be working on:",[49,141,142,149,157,164],{},[52,143,144],{},[16,145,148],{"href":146,"rel":147},"https://gitlab.com/groups/gitlab-org/-/epics/10478",[],"Connecting to a workspace via SSH from your desktop IDE",[52,150,151,156],{},[16,152,155],{"href":153,"rel":154},"https://gitlab.com/groups/gitlab-org/-/epics/10635",[],"Support for alternative editors"," like Jupyter Notebook or vim",[52,158,159],{},[16,160,163],{"href":161,"rel":162},"https://gitlab.com/groups/gitlab-org/-/epics/10571",[],"Configure instance or group-level usage limits to manage cloud resources",[52,165,166],{},[16,167,170],{"href":168,"rel":169},"https://gitlab.com/groups/gitlab-org/-/epics/10594",[],"Support for architectures other than amd64",[12,172,173,174,179],{},"As you can see, we have an ambitious roadmap ahead of us, and we want to hear from you. Please let us know how you are using workspaces, what features are most important to you, and share any issues you run into along the way in the ",[16,175,178],{"href":176,"rel":177},"https://gitlab.com/gitlab-org/gitlab/-/issues/410031",[],"public feedback issue",". We can’t wait to see how you integrate workspaces into your DevSecOps workflow to improve the developer experience!",[12,181,182,185],{},[55,183,184],{},"Disclaimer",": This blog contains information related to upcoming products, features, and functionality. It is important to note that the information in this blog post is for informational purposes only. Please do not rely on this information for purchasing or planning purposes. As with all projects, the items mentioned in this blog and linked pages are subject to change or delay. The development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab.",[12,187,188,189,194,195],{},"Cover image by ",[16,190,193],{"href":191,"rel":192},"https://unsplash.com/@altumcode",[],"AltumCode"," on ",[16,196,199],{"href":197,"rel":198},"https://unsplash.com/photos/dC6Pb2JdAqs",[],"Unsplash",{"title":201,"searchDepth":202,"depth":202,"links":203},"",2,[204,206,207],{"id":33,"depth":205,"text":34},3,{"id":43,"depth":205,"text":44},{"id":129,"depth":205,"text":130},"news","2023-05-23","Remote development workspaces are now available in Beta for GitLab Premium and Ultimate users.","md",null,false,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682731/Blog/Hero%20Images/code-editor-workspace.jpg",{},true,"/en-us/blog/introducing-workspaces-beta",{"title":5,"description":210,"ogTitle":5,"ogDescription":210,"noIndex":213,"ogImage":214,"ogUrl":219,"ogSiteName":220,"ogType":221,"canonicalUrls":219},"https://about.gitlab.com/blog/introducing-workspaces-beta","https://about.gitlab.com","article","introducing-workspaces-beta","en-us/blog/introducing-workspaces-beta",[225,226,208],"cloud native","features","BlogPost","OZohybi2eaS86w9ldXrZir-2n78Jd7FiICrkfP82nrQ",{"logo":230,"freeTrial":235,"sales":240,"login":245,"items":250,"search":577,"minimal":608,"duo":627,"switchNav":636,"pricingDeployment":647},{"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,499,555],{"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":216,"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":488},{"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,483],{"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":481,"dataGaName":482,"dataGaLocation":234},"/events/","events",{"text":484,"config":485},"Partners",{"href":486,"dataGaName":487,"dataGaLocation":234},"/partners/","partners",{"config":489,"title":492,"text":493,"link":494},{"background":490,"textColor":491},"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":495,"config":496},"Read the latest",{"href":497,"dataGaName":498,"dataGaLocation":234},"/whats-new/","whats new",{"text":500,"config":501,"menu":503},"Company",{"dataNavLevelOne":502},"company",{"type":285,"columns":504},[505],{"items":506},[507,512,518,520,525,530,535,540,545,550],{"text":508,"config":509},"About",{"href":510,"dataGaName":511,"dataGaLocation":234},"/company/","about",{"text":513,"config":514,"footerGa":517},"Jobs",{"href":515,"dataGaName":516,"dataGaLocation":234},"/jobs/","jobs",{"dataGaName":516},{"text":479,"config":519},{"href":481,"dataGaName":482,"dataGaLocation":234},{"text":521,"config":522},"Leadership",{"href":523,"dataGaName":524,"dataGaLocation":234},"/company/team/e-group/","leadership",{"text":526,"config":527},"Handbook",{"href":528,"dataGaName":529,"dataGaLocation":234},"https://handbook.gitlab.com/","handbook",{"text":531,"config":532},"Investor relations",{"href":533,"dataGaName":534,"dataGaLocation":234},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":536,"config":537},"Trust Center",{"href":538,"dataGaName":539,"dataGaLocation":234},"/security/","trust center",{"text":541,"config":542},"AI Transparency Center",{"href":543,"dataGaName":544,"dataGaLocation":234},"/ai-transparency-center/","ai transparency center",{"text":546,"config":547},"Newsletter",{"href":548,"dataGaName":549,"dataGaLocation":234},"/company/contact/#contact-forms","newsletter",{"text":551,"config":552},"Press",{"href":553,"dataGaName":554,"dataGaLocation":234},"/press/","press",{"text":556,"config":557,"menu":558},"Contact us",{"dataNavLevelOne":502},{"type":285,"columns":559},[560],{"items":561},[562,567,572],{"text":563,"config":564},"Talk to sales",{"href":565,"dataGaName":566,"dataGaLocation":234},"/sales/","talk to sales",{"text":568,"config":569},"Support portal",{"href":570,"dataGaName":571,"dataGaLocation":234},"https://support.gitlab.com/hc/en-us","support portal",{"text":573,"config":574},"Customer portal",{"href":575,"dataGaName":576,"dataGaLocation":234},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":578,"login":579,"suggestions":586},"Close",{"text":580,"link":581},"To search repositories and projects, login to",{"text":582,"config":583},"gitlab.com",{"href":248,"dataGaName":584,"dataGaLocation":585},"search login","search",{"text":587,"default":588},"Suggestions",[589,591,595,597,601,605],{"text":265,"config":590},{"href":270,"dataGaName":265,"dataGaLocation":585},{"text":592,"config":593},"Code Suggestions (AI)",{"href":594,"dataGaName":592,"dataGaLocation":585},"/solutions/code-suggestions/",{"text":301,"config":596},{"href":303,"dataGaName":301,"dataGaLocation":585},{"text":598,"config":599},"GitLab on AWS",{"href":600,"dataGaName":598,"dataGaLocation":585},"/partners/technology-partners/aws/",{"text":602,"config":603},"GitLab on Google Cloud",{"href":604,"dataGaName":602,"dataGaLocation":585},"/partners/technology-partners/google-cloud-platform/",{"text":606,"config":607},"Why GitLab?",{"href":278,"dataGaName":606,"dataGaLocation":585},{"freeTrial":609,"mobileIcon":614,"desktopIcon":619,"secondaryButton":622},{"text":610,"config":611},"Start free trial",{"href":612,"dataGaName":239,"dataGaLocation":613},"https://gitlab.com/-/trials/new/","nav",{"altText":615,"config":616},"Gitlab Icon",{"src":617,"dataGaName":618,"dataGaLocation":613},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":615,"config":620},{"src":621,"dataGaName":618,"dataGaLocation":613},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":623,"config":624},"Get Started",{"href":625,"dataGaName":626,"dataGaLocation":613},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":628,"mobileIcon":632,"desktopIcon":634},{"text":629,"config":630},"Learn more about GitLab Duo",{"href":270,"dataGaName":631,"dataGaLocation":613},"gitlab duo",{"altText":615,"config":633},{"src":617,"dataGaName":618,"dataGaLocation":613},{"altText":615,"config":635},{"src":621,"dataGaName":618,"dataGaLocation":613},{"button":637,"mobileIcon":642,"desktopIcon":644},{"text":638,"config":639},"/switch",{"href":640,"dataGaName":641,"dataGaLocation":613},"#contact","switch",{"altText":615,"config":643},{"src":617,"dataGaName":618,"dataGaLocation":613},{"altText":615,"config":645},{"src":646,"dataGaName":618,"dataGaLocation":613},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":648,"mobileIcon":653,"desktopIcon":655},{"text":649,"config":650},"Back to pricing",{"href":383,"dataGaName":651,"dataGaLocation":613,"icon":652},"back to pricing","GoBack",{"altText":615,"config":654},{"src":617,"dataGaName":618,"dataGaLocation":613},{"altText":615,"config":656},{"src":621,"dataGaName":618,"dataGaLocation":613},{"title":658,"titleMobile":659,"button":660,"config":665},"Duo Agent Platform delivers 400% ROI, per new Forrester Consulting study.","400% ROI: Forrester TEI for GitLab Duo",{"text":276,"config":661},{"href":662,"dataGaName":663,"dataGaLocation":664},"https://about.gitlab.com/blog/gitlab-duo-agent-platform-delivers-400-percent-roi/","forrester-tei-dap-banner","global-banner",{"layout":666,"disabled":213},"release",{"data":668},{"text":669,"source":670,"edit":676,"contribute":681,"config":686,"items":691,"minimal":900},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":671,"config":672},"View page source",{"href":673,"dataGaName":674,"dataGaLocation":675},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":677,"config":678},"Edit this page",{"href":679,"dataGaName":680,"dataGaLocation":675},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":682,"config":683},"Please contribute",{"href":684,"dataGaName":685,"dataGaLocation":675},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":687,"facebook":688,"youtube":689,"linkedin":690},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[692,739,792,836,868],{"title":381,"links":693,"subMenu":708},[694,698,703],{"text":695,"config":696},"View plans",{"href":383,"dataGaName":697,"dataGaLocation":675},"view plans",{"text":699,"config":700},"Why Premium?",{"href":701,"dataGaName":702,"dataGaLocation":675},"/pricing/premium/","why premium",{"text":704,"config":705},"Why Ultimate?",{"href":706,"dataGaName":707,"dataGaLocation":675},"/pricing/ultimate/","why ultimate",[709],{"title":710,"links":711},"Contact Us",[712,715,717,719,724,729,734],{"text":713,"config":714},"Contact sales",{"href":565,"dataGaName":244,"dataGaLocation":675},{"text":568,"config":716},{"href":570,"dataGaName":571,"dataGaLocation":675},{"text":573,"config":718},{"href":575,"dataGaName":576,"dataGaLocation":675},{"text":720,"config":721},"Status",{"href":722,"dataGaName":723,"dataGaLocation":675},"https://status.gitlab.com/","status",{"text":725,"config":726},"Terms of use",{"href":727,"dataGaName":728,"dataGaLocation":675},"/terms/","terms of use",{"text":730,"config":731},"Privacy statement",{"href":732,"dataGaName":733,"dataGaLocation":675},"/privacy/","privacy statement",{"text":735,"config":736},"Cookie preferences",{"dataGaName":737,"dataGaLocation":675,"id":738,"isOneTrustButton":216},"cookie preferences","ot-sdk-btn",{"title":281,"links":740,"subMenu":749},[741,745],{"text":742,"config":743},"DevSecOps platform",{"href":263,"dataGaName":744,"dataGaLocation":675},"devsecops platform",{"text":746,"config":747},"AI-Assisted Development",{"href":270,"dataGaName":748,"dataGaLocation":675},"ai-assisted development",[750],{"title":751,"links":752},"Topics",[753,758,763,768,773,778,782,787],{"text":754,"config":755},"CICD",{"href":756,"dataGaName":757,"dataGaLocation":675},"/topics/ci-cd/","cicd",{"text":759,"config":760},"GitOps",{"href":761,"dataGaName":762,"dataGaLocation":675},"/topics/gitops/","gitops",{"text":764,"config":765},"DevOps",{"href":766,"dataGaName":767,"dataGaLocation":675},"/topics/devops/","devops",{"text":769,"config":770},"Version Control",{"href":771,"dataGaName":772,"dataGaLocation":675},"/topics/version-control/","version control",{"text":774,"config":775},"DevSecOps",{"href":776,"dataGaName":777,"dataGaLocation":675},"/topics/devsecops/","devsecops",{"text":779,"config":780},"Cloud Native",{"href":781,"dataGaName":225,"dataGaLocation":675},"/topics/cloud-native/",{"text":783,"config":784},"AI for Coding",{"href":785,"dataGaName":786,"dataGaLocation":675},"/topics/devops/ai-for-coding/","ai for coding",{"text":788,"config":789},"Agentic AI",{"href":790,"dataGaName":791,"dataGaLocation":675},"/topics/agentic-ai/","agentic ai",{"title":793,"links":794},"Solutions",[795,797,799,804,808,811,815,818,820,823,826,831],{"text":325,"config":796},{"href":320,"dataGaName":325,"dataGaLocation":675},{"text":314,"config":798},{"href":297,"dataGaName":298,"dataGaLocation":675},{"text":800,"config":801},"Agile development",{"href":802,"dataGaName":803,"dataGaLocation":675},"/solutions/agile-delivery/","agile delivery",{"text":805,"config":806},"SCM",{"href":310,"dataGaName":807,"dataGaLocation":675},"source code management",{"text":754,"config":809},{"href":303,"dataGaName":810,"dataGaLocation":675},"continuous integration & delivery",{"text":812,"config":813},"Value stream management",{"href":353,"dataGaName":814,"dataGaLocation":675},"value stream management",{"text":759,"config":816},{"href":817,"dataGaName":762,"dataGaLocation":675},"/solutions/gitops/",{"text":363,"config":819},{"href":366,"dataGaName":367,"dataGaLocation":675},{"text":821,"config":822},"Small business",{"href":372,"dataGaName":373,"dataGaLocation":675},{"text":824,"config":825},"Public sector",{"href":378,"dataGaName":379,"dataGaLocation":675},{"text":827,"config":828},"Education",{"href":829,"dataGaName":830,"dataGaLocation":675},"/solutions/education/","education",{"text":832,"config":833},"Financial services",{"href":834,"dataGaName":835,"dataGaLocation":675},"/solutions/finance/","financial services",{"title":386,"links":837},[838,840,842,844,847,849,852,854,856,858,860,862,864,866],{"text":399,"config":839},{"href":401,"dataGaName":402,"dataGaLocation":675},{"text":404,"config":841},{"href":406,"dataGaName":407,"dataGaLocation":675},{"text":409,"config":843},{"href":411,"dataGaName":412,"dataGaLocation":675},{"text":414,"config":845},{"href":416,"dataGaName":846,"dataGaLocation":675},"docs",{"text":437,"config":848},{"href":439,"dataGaName":440,"dataGaLocation":675},{"text":850,"config":851},"What's new",{"href":497,"dataGaName":498,"dataGaLocation":675},{"text":432,"config":853},{"href":434,"dataGaName":435,"dataGaLocation":675},{"text":451,"config":855},{"href":453,"dataGaName":454,"dataGaLocation":675},{"text":459,"config":857},{"href":461,"dataGaName":462,"dataGaLocation":675},{"text":464,"config":859},{"href":466,"dataGaName":467,"dataGaLocation":675},{"text":469,"config":861},{"href":471,"dataGaName":472,"dataGaLocation":675},{"text":474,"config":863},{"href":476,"dataGaName":477,"dataGaLocation":675},{"text":479,"config":865},{"href":481,"dataGaName":482,"dataGaLocation":675},{"text":484,"config":867},{"href":486,"dataGaName":487,"dataGaLocation":675},{"title":500,"links":869},[870,872,874,876,878,880,884,889,891,893,895],{"text":508,"config":871},{"href":510,"dataGaName":502,"dataGaLocation":675},{"text":513,"config":873},{"href":515,"dataGaName":516,"dataGaLocation":675},{"text":521,"config":875},{"href":523,"dataGaName":524,"dataGaLocation":675},{"text":526,"config":877},{"href":528,"dataGaName":529,"dataGaLocation":675},{"text":531,"config":879},{"href":533,"dataGaName":534,"dataGaLocation":675},{"text":881,"config":882},"Sustainability",{"href":883,"dataGaName":881,"dataGaLocation":675},"/sustainability/",{"text":885,"config":886},"Diversity, inclusion and belonging (DIB)",{"href":887,"dataGaName":888,"dataGaLocation":675},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":536,"config":890},{"href":538,"dataGaName":539,"dataGaLocation":675},{"text":546,"config":892},{"href":548,"dataGaName":549,"dataGaLocation":675},{"text":551,"config":894},{"href":553,"dataGaName":554,"dataGaLocation":675},{"text":896,"config":897},"Modern Slavery Transparency Statement",{"href":898,"dataGaName":899,"dataGaLocation":675},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":901},[902,905,908],{"text":903,"config":904},"Terms",{"href":727,"dataGaName":728,"dataGaLocation":675},{"text":906,"config":907},"Cookies",{"dataGaName":737,"dataGaLocation":675,"id":738,"isOneTrustButton":216},{"text":909,"config":910},"Privacy",{"href":732,"dataGaName":733,"dataGaLocation":675},[912],{"id":913,"title":7,"body":212,"config":914,"content":916,"description":212,"extension":920,"meta":921,"navigation":216,"path":922,"seo":923,"stem":924,"__hash__":925},"blogAuthors/en-us/blog/authors/eric-schurter.yml",{"template":915},"BlogAuthor",{"name":7,"config":917},{"headshot":918,"ctfId":919},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679281/Blog/Author%20Headshots/ericschurter-headshot.jpg","ericschurter","yml",{},"/en-us/blog/authors/eric-schurter",{},"en-us/blog/authors/eric-schurter","ikut9tTeDOtFA_-ZtdFrr9m_dlh6vN3JbN_g0yXiucA",[927,935,942],{"title":928,"description":929,"heroImage":930,"category":208,"date":931,"authors":932,"slug":934,"externalUrl":212},"GitLab named a Leader in the 2026 Gartner® Magic Quadrant™ for DevSecOps Platforms","Agents made coding fast. GitLab is the Intelligent Orchestration Platform for DevSecOps that brings speed with control for the rest of the software lifecycle.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099203/Blog/Hero%20Images/Blog/Hero%20Images/blog-image-template-1800x945%20%2820%29_2bJGC5ZP3WheoqzlLT05C5_1750099203484.png","2026-06-17",[933],"Manav Khurana","gitlab-leader-2026-gartner-mq-devsecops-platforms",{"title":936,"description":937,"heroImage":938,"category":208,"date":931,"authors":939,"slug":941,"externalUrl":212},"GitLab and Capgemini accelerate DevSecOps transformation","The global alliance helps organizations modernize software delivery, secure their supply chain, and bring AI into development workflows.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1781279411/n3pkmddd2eswa8qbu06z.png",[940],"Alex Picker","gitlab-and-capgemini-global-alliance-partnership",{"title":943,"description":944,"heroImage":945,"category":208,"date":931,"authors":946,"slug":947,"externalUrl":212},"Introducing the 2026 EMEA GitLab Partner Award winners","Learn about the EMEA partners who made an outstanding impact over the past year.\n","https://res.cloudinary.com/about-gitlab-com/image/upload/v1781608381/biycl2ib2kpsbspjlac7.png",[940],"2026-emea-gitlab-partner-awards",{"promotions":949},[950,964,976,988],{"id":951,"categories":952,"header":954,"text":955,"button":956,"image":961},"ai-modernization",[953],"ai","Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":957,"config":958},"Get your AI maturity score",{"href":959,"dataGaName":960,"dataGaLocation":440},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":962},{"src":963},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":965,"categories":966,"header":968,"text":955,"button":969,"image":973},"devops-modernization",[967,777],"product","Are you just managing tools or shipping innovation?",{"text":970,"config":971},"Get your DevOps maturity score",{"href":972,"dataGaName":960,"dataGaLocation":440},"/assessments/devops-modernization-assessment/",{"config":974},{"src":975},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":977,"categories":978,"header":980,"text":955,"button":981,"image":985},"security-modernization",[979],"security","Are you trading speed for security?",{"text":982,"config":983},"Get your security maturity score",{"href":984,"dataGaName":960,"dataGaLocation":440},"/assessments/security-modernization-assessment/",{"config":986},{"src":987},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":989,"paths":990,"header":993,"text":994,"button":995,"image":1000},"github-azure-migration",[991,992],"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":996,"config":997},"See how GitLab compares to GitHub",{"href":998,"dataGaName":999,"dataGaLocation":440},"/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":1001},{"src":975},{"header":1003,"blurb":1004,"button":1005,"secondaryButton":1010},"Start building faster today","See what your team can do with the intelligent orchestration platform for DevSecOps.\n",{"text":1006,"config":1007},"Get your free trial",{"href":1008,"dataGaName":239,"dataGaLocation":1009},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":713,"config":1011},{"href":565,"dataGaName":244,"dataGaLocation":1009},1786803752817]