[{"data":1,"prerenderedAt":1278},["ShallowReactive",2],{"/en-us/blog/tags/user-stories":3,"navigation-en-us":19,"banner-en-us":440,"footer-en-us":451,"user stories-tag-posts-en-us":693},{"id":4,"title":5,"body":6,"category":6,"config":7,"content":9,"description":6,"extension":12,"meta":13,"navigation":14,"path":15,"seo":16,"slug":6,"stem":17,"testContent":6,"type":6,"__hash__":18},"blogTags/en-us/blog/tags/user-stories.yml","User Stories",null,{"template":8},"BlogTag",{"tag":10,"tagSlug":11},"user stories","user-stories","yml",{},true,"/en-us/blog/tags/user-stories",{},"en-us/blog/tags/user-stories","9_L1eV5T26nCGAsqrJy4G3F0Bzv5UeU5Ea1dtVNkYEo",{"logo":20,"freeTrial":25,"sales":30,"login":35,"items":40,"search":360,"minimal":391,"duo":410,"switchNav":419,"pricingDeployment":430},{"config":21},{"href":22,"dataGaName":23,"dataGaLocation":24},"/","gitlab logo","header",{"text":26,"config":27},"Get free trial",{"href":28,"dataGaName":29,"dataGaLocation":24},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":31,"config":32},"Talk to sales",{"href":33,"dataGaName":34,"dataGaLocation":24},"/sales/","sales",{"text":36,"config":37},"Sign in",{"href":38,"dataGaName":39,"dataGaLocation":24},"https://gitlab.com/users/sign_in/","sign in",[41,70,170,175,279,340],{"text":42,"config":43,"menu":45},"Platform",{"dataNavLevelOne":44},"platform",{"type":46,"columns":47},"cards",[48,54,62],{"title":42,"description":49,"link":50},"The intelligent orchestration platform for DevSecOps",{"text":51,"config":52},"Explore our Platform",{"href":53,"dataGaName":44,"dataGaLocation":24},"/platform/",{"title":55,"description":56,"link":57},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":58,"config":59},"Meet GitLab Duo",{"href":60,"dataGaName":61,"dataGaLocation":24},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":63,"description":64,"link":65},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":66,"config":67},"Learn more",{"href":68,"dataGaName":69,"dataGaLocation":24},"/why-gitlab/","why gitlab",{"text":71,"left":14,"config":72,"menu":74},"Product",{"dataNavLevelOne":73},"solutions",{"type":75,"link":76,"columns":80,"feature":149},"lists",{"text":77,"config":78},"View all Solutions",{"href":79,"dataGaName":73,"dataGaLocation":24},"/solutions/",[81,105,128],{"title":82,"description":83,"link":84,"items":89},"Automation","CI/CD and automation to accelerate deployment",{"config":85},{"icon":86,"href":87,"dataGaName":88,"dataGaLocation":24},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[90,94,97,101],{"text":91,"config":92},"CI/CD",{"href":93,"dataGaLocation":24,"dataGaName":91},"/solutions/continuous-integration/",{"text":55,"config":95},{"href":60,"dataGaLocation":24,"dataGaName":96},"gitlab duo agent platform - product menu",{"text":98,"config":99},"Source Code Management",{"href":100,"dataGaLocation":24,"dataGaName":98},"/solutions/source-code-management/",{"text":102,"config":103},"Automated Software Delivery",{"href":87,"dataGaLocation":24,"dataGaName":104},"Automated software delivery",{"title":106,"description":107,"link":108,"items":113},"Security","Deliver code faster without compromising security",{"config":109},{"href":110,"dataGaName":111,"dataGaLocation":24,"icon":112},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[114,118,123],{"text":115,"config":116},"Application Security Testing",{"href":110,"dataGaName":117,"dataGaLocation":24},"Application security testing",{"text":119,"config":120},"Software Supply Chain Security",{"href":121,"dataGaLocation":24,"dataGaName":122},"/solutions/supply-chain/","Software supply chain security",{"text":124,"config":125},"Software Compliance",{"href":126,"dataGaName":127,"dataGaLocation":24},"/solutions/software-compliance/","software compliance",{"title":129,"link":130,"items":135},"Measurement",{"config":131},{"icon":132,"href":133,"dataGaName":134,"dataGaLocation":24},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[136,140,144],{"text":137,"config":138},"Visibility & Measurement",{"href":133,"dataGaLocation":24,"dataGaName":139},"Visibility and Measurement",{"text":141,"config":142},"Value Stream Management",{"href":143,"dataGaLocation":24,"dataGaName":141},"/solutions/value-stream-management/",{"text":145,"config":146},"Analytics & Insights",{"href":147,"dataGaLocation":24,"dataGaName":148},"/solutions/analytics-and-insights/","Analytics and insights",{"title":150,"type":75,"items":151},"GitLab for",[152,158,164],{"text":153,"config":154},"Enterprise",{"icon":155,"href":156,"dataGaLocation":24,"dataGaName":157},"Building","/enterprise/","enterprise",{"text":159,"config":160},"Small Business",{"icon":161,"href":162,"dataGaLocation":24,"dataGaName":163},"Work","/small-business/","small business",{"text":165,"config":166},"Public Sector",{"icon":167,"href":168,"dataGaLocation":24,"dataGaName":169},"Organization","/solutions/public-sector/","public sector",{"text":171,"config":172},"Pricing",{"href":173,"dataGaName":174,"dataGaLocation":24,"dataNavLevelOne":174},"/pricing/","pricing",{"text":176,"config":177,"menu":179},"Resources",{"dataNavLevelOne":178},"resources",{"type":75,"link":180,"columns":184,"feature":268},{"text":181,"config":182},"View all resources",{"href":183,"dataGaName":178,"dataGaLocation":24},"/resources/",[185,218,240],{"title":186,"items":187},"Getting started",[188,193,198,203,208,213],{"text":189,"config":190},"Install",{"href":191,"dataGaName":192,"dataGaLocation":24},"/install/","install",{"text":194,"config":195},"Quick start guides",{"href":196,"dataGaName":197,"dataGaLocation":24},"/get-started/","quick setup checklists",{"text":199,"config":200},"Learn",{"href":201,"dataGaLocation":24,"dataGaName":202},"https://university.gitlab.com/","learn",{"text":204,"config":205},"Product documentation",{"href":206,"dataGaName":207,"dataGaLocation":24},"https://docs.gitlab.com/","product documentation",{"text":209,"config":210},"Best practice videos",{"href":211,"dataGaName":212,"dataGaLocation":24},"/getting-started-videos/","best practice videos",{"text":214,"config":215},"Integrations",{"href":216,"dataGaName":217,"dataGaLocation":24},"/integrations/","integrations",{"title":219,"items":220},"Discover",[221,226,231,235],{"text":222,"config":223},"Customer success stories",{"href":224,"dataGaName":225,"dataGaLocation":24},"/customers/","customer success stories",{"text":227,"config":228},"Blog",{"href":229,"dataGaName":230,"dataGaLocation":24},"/blog/","blog",{"text":232,"config":233},"The Source",{"href":234,"dataGaName":230,"dataGaLocation":24},"/the-source/",{"text":236,"config":237},"Remote",{"href":238,"dataGaName":239,"dataGaLocation":24},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":241,"items":242},"Connect",[243,248,253,258,263],{"text":244,"config":245},"GitLab Services",{"href":246,"dataGaName":247,"dataGaLocation":24},"/services/","services",{"text":249,"config":250},"Community",{"href":251,"dataGaName":252,"dataGaLocation":24},"/community/","community",{"text":254,"config":255},"Forum",{"href":256,"dataGaName":257,"dataGaLocation":24},"https://forum.gitlab.com/","forum",{"text":259,"config":260},"Events",{"href":261,"dataGaName":262,"dataGaLocation":24},"/events/","events",{"text":264,"config":265},"Partners",{"href":266,"dataGaName":267,"dataGaLocation":24},"/partners/","partners",{"config":269,"title":272,"text":273,"link":274},{"background":270,"textColor":271},"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":275,"config":276},"Read the latest",{"href":277,"dataGaName":278,"dataGaLocation":24},"/releases/whats-new/","whats new",{"text":280,"config":281,"menu":283},"Company",{"dataNavLevelOne":282},"company",{"type":75,"columns":284},[285],{"items":286},[287,292,298,300,305,310,315,320,325,330,335],{"text":288,"config":289},"About",{"href":290,"dataGaName":291,"dataGaLocation":24},"/company/","about",{"text":293,"config":294,"footerGa":297},"Jobs",{"href":295,"dataGaName":296,"dataGaLocation":24},"/jobs/","jobs",{"dataGaName":296},{"text":259,"config":299},{"href":261,"dataGaName":262,"dataGaLocation":24},{"text":301,"config":302},"Leadership",{"href":303,"dataGaName":304,"dataGaLocation":24},"/company/team/e-group/","leadership",{"text":306,"config":307},"Team",{"href":308,"dataGaName":309,"dataGaLocation":24},"/company/team/","team",{"text":311,"config":312},"Handbook",{"href":313,"dataGaName":314,"dataGaLocation":24},"https://handbook.gitlab.com/","handbook",{"text":316,"config":317},"Investor relations",{"href":318,"dataGaName":319,"dataGaLocation":24},"https://ir.gitlab.com/","investor relations",{"text":321,"config":322},"Trust Center",{"href":323,"dataGaName":324,"dataGaLocation":24},"/security/","trust center",{"text":326,"config":327},"AI Transparency Center",{"href":328,"dataGaName":329,"dataGaLocation":24},"/ai-transparency-center/","ai transparency center",{"text":331,"config":332},"Newsletter",{"href":333,"dataGaName":334,"dataGaLocation":24},"/company/contact/#contact-forms","newsletter",{"text":336,"config":337},"Press",{"href":338,"dataGaName":339,"dataGaLocation":24},"/press/","press",{"text":341,"config":342,"menu":343},"Contact us",{"dataNavLevelOne":282},{"type":75,"columns":344},[345],{"items":346},[347,350,355],{"text":31,"config":348},{"href":33,"dataGaName":349,"dataGaLocation":24},"talk to sales",{"text":351,"config":352},"Support portal",{"href":353,"dataGaName":354,"dataGaLocation":24},"https://support.gitlab.com","support portal",{"text":356,"config":357},"Customer portal",{"href":358,"dataGaName":359,"dataGaLocation":24},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":361,"login":362,"suggestions":369},"Close",{"text":363,"link":364},"To search repositories and projects, login to",{"text":365,"config":366},"gitlab.com",{"href":38,"dataGaName":367,"dataGaLocation":368},"search login","search",{"text":370,"default":371},"Suggestions",[372,374,378,380,384,388],{"text":55,"config":373},{"href":60,"dataGaName":55,"dataGaLocation":368},{"text":375,"config":376},"Code Suggestions (AI)",{"href":377,"dataGaName":375,"dataGaLocation":368},"/solutions/code-suggestions/",{"text":91,"config":379},{"href":93,"dataGaName":91,"dataGaLocation":368},{"text":381,"config":382},"GitLab on AWS",{"href":383,"dataGaName":381,"dataGaLocation":368},"/partners/technology-partners/aws/",{"text":385,"config":386},"GitLab on Google Cloud",{"href":387,"dataGaName":385,"dataGaLocation":368},"/partners/technology-partners/google-cloud-platform/",{"text":389,"config":390},"Why GitLab?",{"href":68,"dataGaName":389,"dataGaLocation":368},{"freeTrial":392,"mobileIcon":397,"desktopIcon":402,"secondaryButton":405},{"text":393,"config":394},"Start free trial",{"href":395,"dataGaName":29,"dataGaLocation":396},"https://gitlab.com/-/trials/new/","nav",{"altText":398,"config":399},"Gitlab Icon",{"src":400,"dataGaName":401,"dataGaLocation":396},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":398,"config":403},{"src":404,"dataGaName":401,"dataGaLocation":396},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":406,"config":407},"Get Started",{"href":408,"dataGaName":409,"dataGaLocation":396},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":411,"mobileIcon":415,"desktopIcon":417},{"text":412,"config":413},"Learn more about GitLab Duo",{"href":60,"dataGaName":414,"dataGaLocation":396},"gitlab duo",{"altText":398,"config":416},{"src":400,"dataGaName":401,"dataGaLocation":396},{"altText":398,"config":418},{"src":404,"dataGaName":401,"dataGaLocation":396},{"button":420,"mobileIcon":425,"desktopIcon":427},{"text":421,"config":422},"/switch",{"href":423,"dataGaName":424,"dataGaLocation":396},"#contact","switch",{"altText":398,"config":426},{"src":400,"dataGaName":401,"dataGaLocation":396},{"altText":398,"config":428},{"src":429,"dataGaName":401,"dataGaLocation":396},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":431,"mobileIcon":436,"desktopIcon":438},{"text":432,"config":433},"Back to pricing",{"href":173,"dataGaName":434,"dataGaLocation":396,"icon":435},"back to pricing","GoBack",{"altText":398,"config":437},{"src":400,"dataGaName":401,"dataGaLocation":396},{"altText":398,"config":439},{"src":404,"dataGaName":401,"dataGaLocation":396},{"title":441,"button":442,"config":447},"See how agentic AI transforms software delivery",{"text":443,"config":444},"Sign up for GitLab Transcend on June 10",{"href":445,"dataGaName":446,"dataGaLocation":24},"/releases/whats-new/#sign-up","transcend event",{"layout":448,"icon":449,"disabled":450},"release","AiStar",false,{"data":452},{"text":453,"source":454,"edit":460,"contribute":465,"config":470,"items":475,"minimal":682},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":455,"config":456},"View page source",{"href":457,"dataGaName":458,"dataGaLocation":459},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":461,"config":462},"Edit this page",{"href":463,"dataGaName":464,"dataGaLocation":459},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":466,"config":467},"Please contribute",{"href":468,"dataGaName":469,"dataGaLocation":459},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":471,"facebook":472,"youtube":473,"linkedin":474},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[476,523,577,621,648],{"title":171,"links":477,"subMenu":492},[478,482,487],{"text":479,"config":480},"View plans",{"href":173,"dataGaName":481,"dataGaLocation":459},"view plans",{"text":483,"config":484},"Why Premium?",{"href":485,"dataGaName":486,"dataGaLocation":459},"/pricing/premium/","why premium",{"text":488,"config":489},"Why Ultimate?",{"href":490,"dataGaName":491,"dataGaLocation":459},"/pricing/ultimate/","why ultimate",[493],{"title":494,"links":495},"Contact Us",[496,499,501,503,508,513,518],{"text":497,"config":498},"Contact sales",{"href":33,"dataGaName":34,"dataGaLocation":459},{"text":351,"config":500},{"href":353,"dataGaName":354,"dataGaLocation":459},{"text":356,"config":502},{"href":358,"dataGaName":359,"dataGaLocation":459},{"text":504,"config":505},"Status",{"href":506,"dataGaName":507,"dataGaLocation":459},"https://status.gitlab.com/","status",{"text":509,"config":510},"Terms of use",{"href":511,"dataGaName":512,"dataGaLocation":459},"/terms/","terms of use",{"text":514,"config":515},"Privacy statement",{"href":516,"dataGaName":517,"dataGaLocation":459},"/privacy/","privacy statement",{"text":519,"config":520},"Cookie preferences",{"dataGaName":521,"dataGaLocation":459,"id":522,"isOneTrustButton":14},"cookie preferences","ot-sdk-btn",{"title":71,"links":524,"subMenu":533},[525,529],{"text":526,"config":527},"DevSecOps platform",{"href":53,"dataGaName":528,"dataGaLocation":459},"devsecops platform",{"text":530,"config":531},"AI-Assisted Development",{"href":60,"dataGaName":532,"dataGaLocation":459},"ai-assisted development",[534],{"title":535,"links":536},"Topics",[537,542,547,552,557,562,567,572],{"text":538,"config":539},"CICD",{"href":540,"dataGaName":541,"dataGaLocation":459},"/topics/ci-cd/","cicd",{"text":543,"config":544},"GitOps",{"href":545,"dataGaName":546,"dataGaLocation":459},"/topics/gitops/","gitops",{"text":548,"config":549},"DevOps",{"href":550,"dataGaName":551,"dataGaLocation":459},"/topics/devops/","devops",{"text":553,"config":554},"Version Control",{"href":555,"dataGaName":556,"dataGaLocation":459},"/topics/version-control/","version control",{"text":558,"config":559},"DevSecOps",{"href":560,"dataGaName":561,"dataGaLocation":459},"/topics/devsecops/","devsecops",{"text":563,"config":564},"Cloud Native",{"href":565,"dataGaName":566,"dataGaLocation":459},"/topics/cloud-native/","cloud native",{"text":568,"config":569},"AI for Coding",{"href":570,"dataGaName":571,"dataGaLocation":459},"/topics/devops/ai-for-coding/","ai for coding",{"text":573,"config":574},"Agentic AI",{"href":575,"dataGaName":576,"dataGaLocation":459},"/topics/agentic-ai/","agentic ai",{"title":578,"links":579},"Solutions",[580,582,584,589,593,596,600,603,605,608,611,616],{"text":115,"config":581},{"href":110,"dataGaName":115,"dataGaLocation":459},{"text":104,"config":583},{"href":87,"dataGaName":88,"dataGaLocation":459},{"text":585,"config":586},"Agile development",{"href":587,"dataGaName":588,"dataGaLocation":459},"/solutions/agile-delivery/","agile delivery",{"text":590,"config":591},"SCM",{"href":100,"dataGaName":592,"dataGaLocation":459},"source code management",{"text":538,"config":594},{"href":93,"dataGaName":595,"dataGaLocation":459},"continuous integration & delivery",{"text":597,"config":598},"Value stream management",{"href":143,"dataGaName":599,"dataGaLocation":459},"value stream management",{"text":543,"config":601},{"href":602,"dataGaName":546,"dataGaLocation":459},"/solutions/gitops/",{"text":153,"config":604},{"href":156,"dataGaName":157,"dataGaLocation":459},{"text":606,"config":607},"Small business",{"href":162,"dataGaName":163,"dataGaLocation":459},{"text":609,"config":610},"Public sector",{"href":168,"dataGaName":169,"dataGaLocation":459},{"text":612,"config":613},"Education",{"href":614,"dataGaName":615,"dataGaLocation":459},"/solutions/education/","education",{"text":617,"config":618},"Financial services",{"href":619,"dataGaName":620,"dataGaLocation":459},"/solutions/finance/","financial services",{"title":176,"links":622},[623,625,627,629,632,634,636,638,640,642,644,646],{"text":189,"config":624},{"href":191,"dataGaName":192,"dataGaLocation":459},{"text":194,"config":626},{"href":196,"dataGaName":197,"dataGaLocation":459},{"text":199,"config":628},{"href":201,"dataGaName":202,"dataGaLocation":459},{"text":204,"config":630},{"href":206,"dataGaName":631,"dataGaLocation":459},"docs",{"text":227,"config":633},{"href":229,"dataGaName":230,"dataGaLocation":459},{"text":222,"config":635},{"href":224,"dataGaName":225,"dataGaLocation":459},{"text":236,"config":637},{"href":238,"dataGaName":239,"dataGaLocation":459},{"text":244,"config":639},{"href":246,"dataGaName":247,"dataGaLocation":459},{"text":249,"config":641},{"href":251,"dataGaName":252,"dataGaLocation":459},{"text":254,"config":643},{"href":256,"dataGaName":257,"dataGaLocation":459},{"text":259,"config":645},{"href":261,"dataGaName":262,"dataGaLocation":459},{"text":264,"config":647},{"href":266,"dataGaName":267,"dataGaLocation":459},{"title":280,"links":649},[650,652,654,656,658,660,662,666,671,673,675,677],{"text":288,"config":651},{"href":290,"dataGaName":282,"dataGaLocation":459},{"text":293,"config":653},{"href":295,"dataGaName":296,"dataGaLocation":459},{"text":301,"config":655},{"href":303,"dataGaName":304,"dataGaLocation":459},{"text":306,"config":657},{"href":308,"dataGaName":309,"dataGaLocation":459},{"text":311,"config":659},{"href":313,"dataGaName":314,"dataGaLocation":459},{"text":316,"config":661},{"href":318,"dataGaName":319,"dataGaLocation":459},{"text":663,"config":664},"Sustainability",{"href":665,"dataGaName":663,"dataGaLocation":459},"/sustainability/",{"text":667,"config":668},"Diversity, inclusion and belonging (DIB)",{"href":669,"dataGaName":670,"dataGaLocation":459},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":321,"config":672},{"href":323,"dataGaName":324,"dataGaLocation":459},{"text":331,"config":674},{"href":333,"dataGaName":334,"dataGaLocation":459},{"text":336,"config":676},{"href":338,"dataGaName":339,"dataGaLocation":459},{"text":678,"config":679},"Modern Slavery Transparency Statement",{"href":680,"dataGaName":681,"dataGaLocation":459},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":683},[684,687,690],{"text":685,"config":686},"Terms",{"href":511,"dataGaName":512,"dataGaLocation":459},{"text":688,"config":689},"Cookies",{"dataGaName":521,"dataGaLocation":459,"id":522,"isOneTrustButton":14},{"text":691,"config":692},"Privacy",{"href":516,"dataGaName":517,"dataGaLocation":459},[694,705,716,726,736,746,757,767,776,787,797,808,817,826,835,845,854,863,872,881,890,899,908,917,926,935,945,956,966,976,986,996,1006,1015,1025,1034,1043,1053,1063,1072,1081,1091,1100,1109,1119,1129,1139,1149,1159,1169,1179,1189,1199,1209,1218,1228,1238,1248,1258,1268],{"content":695,"config":703},{"title":696,"heroImage":697,"category":698,"description":699,"authors":700,"date":702},"How Indeed transformed its CI platform with GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099351/Blog/Hero%20Images/Blog/Hero%20Images/Indeed-blog-cover-image-2_4AgA1DkWLtHwBlFGvMffbC_1750099350771.png","customer-stories","The world's #1 job site migrated thousands of projects to GitLab CI, boosting productivity and cutting costs. Learn the benefits they realized, including a 79% increase in daily pipelines.",[701],"Carl Myers","2024-08-27",{"slug":704,"externalUrl":-1},"how-indeed-transformed-its-ci-platform-with-gitlab",{"content":706,"config":714},{"title":707,"heroImage":708,"category":709,"description":710,"authors":711,"date":713},"GitLab Heroes Unmasked - How I became acquainted with the GitLab Agent for Kubernetes","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682342/Blog/Hero%20Images/treasure.jpg","open-source","A tutorial on deploying and monitoring an application in Kubernetes without leaving GitLab.",[712],"Jean-Philippe Baconnais","2022-06-08",{"slug":715,"externalUrl":-1},"configuring-your-cluster-with-kubernetes-integration",{"content":717,"config":724},{"title":718,"heroImage":719,"category":561,"description":720,"authors":721,"date":723},"GitLab Heroes Unmasked: How I am elevating my company using GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667569/Blog/Hero%20Images/heroestickett.jpg","Tickett Enterprises Limited Director Lee Tickett shares the details of his ongoing journey to use the DevOps platform to its fullest.",[722],"Lee Tickett","2022-05-12",{"slug":725,"externalUrl":-1},"gitlab-heroes-unmasked-elevating-my-company-using-gitlab",{"content":727,"config":734},{"title":728,"heroImage":729,"category":561,"description":730,"authors":731,"date":733},"Making the case for a DevOps platform: What data and customers say","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663397/Blog/Hero%20Images/logoforblogpost.jpg","Don't just take our word for why a DevOps platform means better DevOps and faster, safer releases: here's what the latest data shows and how customers have benefitted.",[732],"Valerie Silverthorne","2021-09-08",{"slug":735,"externalUrl":-1},"making-the-case-for-a-devops-platform-what-data-and-customers-say",{"content":737,"config":744},{"title":738,"heroImage":739,"category":709,"description":740,"authors":741,"date":743},"How GitLab helped Kali Linux attract a growing number of community contributions","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667243/Blog/Hero%20Images/open-source-community.png","Since moving to GitLab in 2019, Kali Linux has gone from company-only contributions to a growing number of community contributions.",[742],"Nuritzi Sanchez","2021-02-18",{"slug":745,"externalUrl":-1},"kali-linux-movingtogitlab",{"content":747,"config":755},{"title":748,"heroImage":749,"category":750,"description":751,"authors":752,"date":754},"We need to talk: Can we standardize NO_PROXY?","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659507/Blog/Hero%20Images/AdobeStock_623844718.jpg","engineering","Subtle differences in proxy setting implementations led to surprising\nproblems for a GitLab customer. Here's how we got to the root of it.",[753],"Stan Hu","2021-01-27",{"slug":756,"externalUrl":-1},"we-need-to-talk-no-proxy",{"content":758,"config":765},{"title":759,"heroImage":760,"category":761,"description":762,"authors":763,"date":764},"From user, to advocate, to contributor: my GitLab journey","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681735/Blog/Hero%20Images/cover_photo.jpg","unfiltered","Three years (as a user and as a contributor) with GitLab.",[722],"2020-11-13",{"slug":766,"externalUrl":-1},"lee-tickett-my-gitlab-journey",{"content":768,"config":774},{"title":769,"heroImage":770,"category":709,"description":771,"authors":772,"date":764},"Inside the collaboration between GitLab and The Last Mile","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681743/Blog/Hero%20Images/tlm-blogpost-banner.png","GitLab teamed up with The Last Mile to bring open source DevOps and tech mentorship to incarcerated populations across the United States.",[773],"Christina Hupy, Ph.D.",{"slug":775,"externalUrl":-1},"thelastmile-gitlab",{"content":777,"config":785},{"title":778,"heroImage":779,"category":780,"description":781,"authors":782,"date":784},"Need DevOps buy-in? Here's how to convince stakeholders","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681597/Blog/Hero%20Images/speedphoto.jpg","insights","If you need to make the case for DevOps to a non-technical crowd, it's important to be prepared. Here's what you need to know.",[783],"Sara Kassabian","2020-09-24",{"slug":786,"externalUrl":-1},"devops-stakeholder-buyin",{"content":788,"config":795},{"title":789,"heroImage":790,"category":761,"description":791,"authors":792,"date":794},"How Arctic Engine uses GitLab's fuzz testing","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681504/Blog/Hero%20Images/arcticengine.png","Using GitLab's fuzz testing, we discovered and fixed various real defects that could crash our software. Now we can detect vulnerabilities before merging the code.",[793],"Huldra","2020-08-19",{"slug":796,"externalUrl":-1},"arctic-engine-fuzz-testing-blog",{"content":798,"config":806},{"title":799,"heroImage":800,"category":801,"description":802,"authors":803,"date":805},"Discover your GitLab return on investment with the Forrester Total Economic Impact™ Study and Estimator","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666262/Blog/Hero%20Images/default-blog-image.png","news","Now available: A new Forrester ROI study and calculator based on real value customers got from using GitLab for SCM, CI, and CD.",[804],"Colin Fletcher","2020-07-29",{"slug":807,"externalUrl":-1},"forrester-tei",{"content":809,"config":815},{"title":810,"heroImage":811,"category":709,"description":812,"authors":813,"date":814},"Why the KDE community is #movingtogitlab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681382/Blog/Hero%20Images/migratingbirds.jpg","Open source software community giant KDE finished phase one of their migration to GitLab and has joined our GitLab open source program. Check out what's next for KDE and GitLab.",[742],"2020-06-29",{"slug":816,"externalUrl":-1},"welcome-kde",{"content":818,"config":824},{"title":819,"heroImage":820,"category":761,"description":821,"authors":822,"date":823},"Apply to be featured as a GitLab Student Spotlight","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664102/Blog/Hero%20Images/gitlab-values-cover.png","Feature your work on GitLab.com and get GitLab swag!",[773],"2020-06-17",{"slug":825,"externalUrl":-1},"gitlab-for-education-student-spotlights",{"content":827,"config":833},{"title":828,"heroImage":829,"category":750,"description":830,"authors":831,"date":832},"Best practices to keep your Kubernetes runners moving","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681341/Blog/Hero%20Images/trackandfield.jpg","In a presentation at GitLab Commit San Francisco, a senior software engineer from F5 Networks shares some best practices for working with Kubernetes runners.",[783],"2020-05-27",{"slug":834,"externalUrl":-1},"best-practices-for-kubernetes-runners",{"content":836,"config":843},{"title":837,"heroImage":838,"category":709,"description":839,"authors":840,"date":842},"From monolith to microservices: How to leverage AWS with GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679645/Blog/Hero%20Images/askmediablog-.jpg","GitLab recently spent time with Ask Media Group and AWS to discuss how modernizing from self-managed to a cloud native system empowers developers.",[841],"Brein Matturro","2020-03-24",{"slug":844,"externalUrl":-1},"from-monolith-to-microservices-how-to-leverage-aws-with-gitlab",{"content":846,"config":852},{"title":847,"heroImage":848,"category":780,"description":849,"authors":850,"date":851},"Goldman Sachs partners with GitLab for next-gen platform strategies","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671845/Blog/Hero%20Images/serverless-ops-blog.jpg","Goldman Sachs’ George Grant shares how partnering with GitLab has modernized the development ecosystem.",[841],"2020-01-24",{"slug":853,"externalUrl":-1},"goldman-sachs-partners-with-gitlab-for-next-gen-platform-strategies",{"content":855,"config":861},{"title":856,"heroImage":857,"category":282,"description":858,"authors":859,"date":860},"Bringing your application from idea to production using Python, Rust, and GitLab CI","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678507/Blog/Hero%20Images/lightbulb.jpg","GitLab hero Mario Garcia demos the intricate process at GitLab Commit London.",[783],"2019-11-15",{"slug":862,"externalUrl":-1},"python-rust-and-gitlab-ci",{"content":864,"config":870},{"title":865,"heroImage":866,"category":709,"description":867,"authors":868,"date":869},"Optimize GitOps workflow with version control from GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749673081/Blog/Hero%20Images/gitops-image-unsplash.jpg","A GitOps workflow improves development, operations and business processes and GitLab’s CI plays a vital role.",[841],"2019-10-28",{"slug":871,"externalUrl":-1},"optimize-gitops-workflow",{"content":873,"config":879},{"title":874,"heroImage":875,"category":709,"description":876,"authors":877,"date":878},"How Delta made the journey to cloud native","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678376/Blog/Hero%20Images/deltacommit.jpg","Delta tossed aside the rule book to go cloud native and achieve workflow portability. Here's how it's done.",[732],"2019-10-17",{"slug":880,"externalUrl":-1},"delta-cloud-native",{"content":882,"config":888},{"title":883,"heroImage":884,"category":282,"description":885,"authors":886,"date":887},"Live from Commit London","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678442/Blog/Hero%20Images/londoncommit.png","We're having a packed day at our first European user conference. Watch this space for the latest news.",[732],"2019-10-09",{"slug":889,"externalUrl":-1},"live-from-commit-london",{"content":891,"config":897},{"title":892,"heroImage":893,"category":709,"description":894,"authors":895,"date":896},"Redbox delivers On Demand with GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749673064/Blog/Hero%20Images/redbox-blog-jannes-glas-unsplash.jpg","Redbox's Joel Vasallo and Nicholas Konieczko explain how they ‘deliver software like a fox’ with GitLab.",[841],"2019-10-01",{"slug":898,"externalUrl":-1},"redbox-on-demand-delivers-with-gitlab",{"content":900,"config":906},{"title":901,"heroImage":902,"category":282,"description":903,"authors":904,"date":905},"Wrapping up GitLab Commit","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680823/Blog/Hero%20Images/commit-brooklyn-graffiti-cover.jpg","From bagels to bowling with a healthy dose of DevSecOps and CI/CD in between, it was an epic day of learning and sharing at GitLab Commit Brooklyn.",[732],"2019-09-18",{"slug":907,"externalUrl":-1},"wrapping-up-commit",{"content":909,"config":915},{"title":910,"heroImage":911,"category":709,"description":912,"authors":913,"date":914},"GitLab Commit: How MRI Technologies used GitLab to bring unified toolchains to NASA","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678434/Blog/Hero%20Images/nasagitlab.jpg","Live from GitLab Commit: NASA will be flying Kubernetes clusters to the moon and GitLab is helping.",[732],"2019-09-17",{"slug":916,"externalUrl":-1},"open-source-nasa-gl",{"content":918,"config":924},{"title":919,"heroImage":920,"category":709,"description":921,"authors":922,"date":923},"How one government agency is creating a transparent digital democracy with GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679611/Blog/Hero%20Images/cook-county-blog-unsplash.jpg","The Cook County Assessor’s office explains how they're using GitLab to help create a new level of government transparency.",[841],"2019-09-02",{"slug":925,"externalUrl":-1},"creating-a-transparent-digital-democracy",{"content":927,"config":933},{"title":928,"heroImage":929,"category":780,"description":930,"authors":931,"date":932},"3 Teams left Jenkins: Here’s why","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671932/Blog/Hero%20Images/jenkins-to-gitlab-sailboat.jpg","How three different teams – Alteryx, ANWB, and EAB – shifted away from Jenkins for smoother sailing with GitLab.",[841],"2019-07-23",{"slug":934,"externalUrl":-1},"three-teams-left-jenkins-heres-why",{"content":936,"config":943},{"title":937,"heroImage":938,"category":780,"description":939,"authors":940,"date":942},"Proximus shares its #movingtoGitLab story","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678603/Blog/Hero%20Images/traffic-at-sunset.jpg","Moving to GitLab resulted in an 80 percent drop in support tickets and an increase in developer productivity.",[941],"Bert Van Eyck","2019-06-07",{"slug":944,"externalUrl":-1},"proximus-customer-story-clearcase-to-gitlab",{"content":946,"config":954},{"title":947,"heroImage":948,"category":780,"description":949,"authors":950,"date":953},"Monkton's #movingtogitlab story: Going all in on automation and repeatability","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670123/Blog/Hero%20Images/moving-to-gitlab-cover.png","Monkton is migrating from a suite of disparate tools to GitLab, enabling them to better help their customers build safe, secure mobile apps.",[951,952],"Rebecca Dodd","Aricka Flowers","2019-05-21",{"slug":955,"externalUrl":-1},"monkton-moves-to-gitlab-customer-story",{"content":957,"config":964},{"title":958,"heroImage":959,"category":709,"description":960,"authors":961,"date":963},"How Verizon Connect reduced datacenter rebuilds from 30 days to under 8 hours with GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678933/Blog/Hero%20Images/verizon_video_blog.jpg","Verizon utilized microservices, automation, and GitLab to reduce datacenter rebuilds to under 8 hours.",[962],"Kim Lock","2019-02-14",{"slug":965,"externalUrl":-1},"verizon-customer-story",{"content":967,"config":974},{"title":968,"heroImage":969,"category":750,"description":970,"authors":971,"date":973},"How to tidy up your merge requests with Git","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749672243/Blog/Hero%20Images/git-tricks-cover-image.png","Here's how to use a Git feature that saves a lot of time and cleans up your MRs.",[972],"Ronald van Zon","2019-02-07",{"slug":975,"externalUrl":-1},"start-using-git",{"content":977,"config":984},{"title":978,"heroImage":979,"category":709,"description":980,"authors":981,"date":983},"The Donatinator: A simple, secure way to accept donations to your charity or non-profit","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679940/Blog/Hero%20Images/donatinator-open-source.jpg","This guest author shares his passion project: a free and open source solution for small charities and non-profits to accept donations online.",[982],"Andrew Chilton","2019-02-06",{"slug":985,"externalUrl":-1},"donatinator-open-source-donation-platform",{"content":987,"config":994},{"title":988,"heroImage":989,"category":750,"description":990,"authors":991,"date":993},"How to set up multi-account AWS SAM deployments with GitLab CI/CD","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666959/Blog/Hero%20Images/gitlab-aws-cover.png","Our guest author, an AWS Serverless hero, shares how to automate SAM deployments using GitLab CI/CD.",[992],"Forrest Brazeal","2019-02-04",{"slug":995,"externalUrl":-1},"multi-account-aws-sam-deployments-with-gitlab-ci",{"content":997,"config":1004},{"title":998,"heroImage":999,"category":709,"description":1000,"authors":1001,"date":1003},"Streamline and shorten error remediation with Sentry’s new GitLab integration","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679964/Blog/Hero%20Images/sentry-io-blog.jpg","Your code has bugs, my code has bugs, everyone’s code has bugs (probably). Let’s fix that.",[1002],"Eva Sasson","2019-01-25",{"slug":1005,"externalUrl":-1},"sentry-integration-blog-post",{"content":1007,"config":1013},{"title":1008,"heroImage":1009,"category":709,"description":1010,"authors":1011,"date":1012},"How Wag! cut their release process from 40 minutes to just 6","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678923/Blog/Hero%20Images/dog-walking.jpg","The popular dog-walking app is rolling out new features faster and with more confidence as they adopt GitLab for more of their DevOps workflows.",[952],"2019-01-16",{"slug":1014,"externalUrl":-1},"wag-labs-blog-post",{"content":1016,"config":1023},{"title":1017,"heroImage":1018,"category":750,"description":1019,"authors":1020,"date":1022},"Setting up GitLab CI for Android projects","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666699/Blog/Hero%20Images/banner.jpg","Learn how to set up GitLab CI to ensure your Android app compiles and passes tests.",[1021],"Jason Yavorska","2018-10-24",{"slug":1024,"externalUrl":-1},"setting-up-gitlab-ci-for-android-projects",{"content":1026,"config":1032},{"title":1027,"heroImage":1028,"category":780,"description":1029,"authors":1030,"date":1031},"CERN uses GitLab to remove the obstacles around global researchers","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670719/Blog/Hero%20Images/cern.jpg","Learn how GitLab helps particle physics laboratory CERN manage over 7,000 projects globally",[962],"2018-10-12",{"slug":1033,"externalUrl":-1},"cern-connect-global-researchers",{"content":1035,"config":1041},{"title":1036,"heroImage":1037,"category":282,"description":1038,"authors":1039,"date":1040},"Customer story: Driving better developer and customer experiences with a single application","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663655/Blog/Hero%20Images/gitlab-live-sept-2018.png","Director of Product Integration Michael Sobota of Charter Communications shares how they're using GitLab to simplify their toolchain, with big results.",[951],"2018-09-26",{"slug":1042,"externalUrl":-1},"customer-interview-charter-communications",{"content":1044,"config":1051},{"title":1045,"heroImage":1046,"category":780,"description":1047,"authors":1048,"date":1050},"What our summit in South Africa taught me about cybersecurity","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671140/Blog/Hero%20Images/south-africa-cyber-security.jpg","Cybersecurity is a necessity, but it's often treated as an afterthought. What it has in common with modern photography could tell us how to make it less painful to achieve.",[1049],"Cindy Blake","2018-09-11",{"slug":1052,"externalUrl":-1},"what-south-africa-taught-me-about-cybersecurity",{"content":1054,"config":1061},{"title":1055,"heroImage":1056,"category":780,"description":1057,"authors":1058,"date":1060},"How Telesphora is tackling the opioid epidemic with machine learning and human-centered design","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671593/Blog/Hero%20Images/telesphora-team.jpg","GitLab users Jack Cackler and Frank Lee explain how they use predictive analytics to empower community stakeholders, like first responders and policy makers, to save lives.",[1059],"Erica Lindberg","2018-09-05",{"slug":1062,"externalUrl":-1},"how-telesphora-is-tackling-the-opioid-crisis-machine-learning-human-centered-design",{"content":1064,"config":1070},{"title":1065,"heroImage":1066,"category":709,"description":1067,"authors":1068,"date":1069},"Welcome to GitLab, freedesktop.org!","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671252/Blog/Hero%20Images/gitlab-desktop-org-cover.png","Freedesktop.org, the home of open source desktop technology development, has migrated to GitLab to improve their workflow and modernize their service.",[951],"2018-08-20",{"slug":1071,"externalUrl":-1},"freedesktop-org-migrates-to-gitlab",{"content":1073,"config":1079},{"title":1074,"heroImage":1075,"category":698,"description":1076,"authors":1077,"date":1078},"How Jaguar Land Rover embraced CI to speed up their software lifecycle","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667619/Blog/Hero%20Images/chris-hill-jlr-does.jpg","Inspiration, persistence, an attitude of continuous improvement – how adopting CI helped this vehicle company implement software over the air.",[951],"2018-07-23",{"slug":1080,"externalUrl":-1},"chris-hill-devops-enterprise-summit-talk",{"content":1082,"config":1089},{"title":1083,"heroImage":1084,"category":750,"description":1085,"authors":1086,"date":1088},"Introducing Auto Breakfast from GitLab (sort of)","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680054/Blog/Hero%20Images/auto-breakfast.jpg","GitLab can't make you breakfast? This is what happens when you tell a GitLab team member whose favorite catchphrase is \"Challenge accepted.\"",[1087],"Brendan O'Leary","2018-06-29",{"slug":1090,"externalUrl":-1},"introducing-auto-breakfast-from-gitlab",{"content":1092,"config":1098},{"title":1093,"heroImage":1094,"category":780,"description":1095,"authors":1096,"date":1097},"Motorcycle stunter turned DevOps engineer says GitLab helped her learn to \"love\" CI/CD","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663760/Blog/Hero%20Images/image-for-leah-post.jpg","Switching to GitLab helped a newly minted DevOps engineer grasp the concept of CI/CD.",[952],"2018-06-21",{"slug":1099,"externalUrl":-1},"leah-petersen-user-spotlight",{"content":1101,"config":1107},{"title":1102,"heroImage":1103,"category":282,"description":1104,"authors":1105,"date":1106},"Using GitLab to project manage home renovation priorities","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680235/Blog/Hero%20Images/home-improvement.jpg","Solutions Architect Brendan O'Leary shares how he and his family use GitLab Issue Boards for an unconventional purpose: home improvement prioritization!",[1087],"2018-02-08",{"slug":1108,"externalUrl":-1},"using-gitlab-to-manage-house-renovation-priorities",{"content":1110,"config":1117},{"title":1111,"heroImage":1112,"category":750,"description":1113,"authors":1114,"date":1116},"Test all the things in GitLab CI with Docker by example","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680261/Blog/Hero%20Images/test-all-the-things-in-gitlab-ci-with-docker-by-example.jpg","Running tests is easier than you think – guest author Gabriel Le Breton shares his presentation about testing everything automatically with GitLab CI/CD.",[1115],"Gabriel Le Breton","2018-02-05",{"slug":1118,"externalUrl":-1},"test-all-the-things-gitlab-ci-docker-examples",{"content":1120,"config":1127},{"title":1121,"heroImage":1122,"category":750,"description":1123,"authors":1124,"date":1126},"A beginner's guide to continuous integration","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679800/Blog/Hero%20Images/beginners-guide-to-ci.jpg","Here's how to help everyone on your team, like designers and testers, get started with GitLab CI.",[1125],"Riccardo Padovani","2018-01-22",{"slug":1128,"externalUrl":-1},"a-beginners-guide-to-continuous-integration",{"content":1130,"config":1137},{"title":1131,"heroImage":1132,"category":709,"description":1133,"authors":1134,"date":1136},"An Agile approach to documentation and structure","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670464/Blog/Hero%20Images/gitlab-loves-open-source.jpg","Combining flexibility and structure: why we decided to use GitLab.com for all UnscrewMe documentation and code to keep an overview, always find the relevant information quickly, and easily track progress.",[1135],"Goetz Buerkle","2017-12-13",{"slug":1138,"externalUrl":-1},"an-agile-approach-to-documentation-and-structure",{"content":1140,"config":1147},{"title":1141,"heroImage":1142,"category":750,"description":1143,"authors":1144,"date":1146},"Go tools and GitLab: How to do continuous integration like a boss","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667978/Blog/Hero%20Images/go-tools-and-gitlab.jpg","How the team at Pantomath makes their lives easier with GitLab CI.",[1145],"Julien Andrieux","2017-11-27",{"slug":1148,"externalUrl":-1},"go-tools-and-gitlab-how-to-do-continuous-integration-like-a-boss",{"content":1150,"config":1157},{"title":1151,"heroImage":1152,"category":750,"description":1153,"authors":1154,"date":1156},"Autoscale GitLab CI/CD runners and save 90% on EC2 costs","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680305/Blog/Hero%20Images/autoscale-gitlab-ci-runners.jpg","Guest author Max Woolf shows how his team makes big savings with an autoscaling cluster of GitLab CI/CD runners.",[1155],"Max Woolf","2017-11-23",{"slug":1158,"externalUrl":-1},"autoscale-ci-runners",{"content":1160,"config":1167},{"title":1161,"heroImage":1162,"category":750,"description":1163,"authors":1164,"date":1166},"Working with YAML in GitLab CI from the Android perspective","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665524/Blog/Hero%20Images/yaml-gitlab-ci-android.png","Guest author Renato Stanic shares a sample YAML configuration for Android projects, which helps his team with faster, more iterative development.",[1165],"Renato Stanic","2017-11-20",{"slug":1168,"externalUrl":-1},"working-with-yaml-gitlab-ci-android",{"content":1170,"config":1177},{"title":1171,"heroImage":1172,"category":750,"description":1173,"authors":1174,"date":1176},"HumanGeo switched from Jenkins to GitLab and cut costs by 1/3","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680315/Blog/Hero%20Images/humangeo-switches-jenkins-to-gitlab.jpg","Management overhead was bogging down the team at HumanGeo. GitLab freed up more than just cash.",[1175],"William Chia","2017-11-14",{"slug":1178,"externalUrl":-1},"humangeo-switches-jenkins-gitlab-ci",{"content":1180,"config":1187},{"title":1181,"heroImage":1182,"category":750,"description":1183,"authors":1184,"date":1186},"GitBot – automating boring Git operations with CI","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749672374/Blog/Hero%20Images/gitbot-automate-git-operations.jpg","Guest author Kristian Larsson shares how he automates some common Git operations, like rebase, using GitLab CI.",[1185],"Kristian Larsson","2017-11-02",{"slug":1188,"externalUrl":-1},"automating-boring-git-operations-gitlab-ci",{"content":1190,"config":1197},{"title":1191,"heroImage":1192,"category":750,"description":1193,"authors":1194,"date":1196},"How to create a CI/CD pipeline with Auto Deploy to Kubernetes using GitLab and Helm","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664472/Blog/Hero%20Images/gitlabflatlogomap.png","One user walks through how he tried GitLab caching and split the job into multiple steps to get better feedback.",[1195],"Sergey Nuzhdin","2017-09-21",{"slug":1198,"externalUrl":-1},"how-to-create-a-ci-cd-pipeline-with-auto-deploy-to-kubernetes-using-gitlab",{"content":1200,"config":1207},{"title":1201,"heroImage":1202,"category":750,"description":1203,"authors":1204,"date":1206},"How to use GitLab CI/CD for Vue.js","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680363/Blog/Hero%20Images/build-test-deploy-vue.jpg","Learn how to get the most out of GitLab CI/CD with this guide.",[1205],"Simon Tarchichi","2017-09-12",{"slug":1208,"externalUrl":-1},"vuejs-app-gitlab",{"content":1210,"config":1216},{"title":1211,"heroImage":1212,"category":750,"description":1213,"authors":1214,"date":1215},"How to automatically create a new MR on GitLab with GitLab CI","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679783/Blog/Hero%20Images/whats-next-for-gitlab-ci.jpg","With this script, every time we push a commit, GitLab CI checks if the branch that commit belongs to already has an open MR and, if not, creates one.",[1125],"2017-09-05",{"slug":1217,"externalUrl":-1},"how-to-automatically-create-a-new-mr-on-gitlab-with-gitlab-ci",{"content":1219,"config":1226},{"title":1220,"heroImage":1221,"category":709,"description":1222,"authors":1223,"date":1225},"How GitLab can help in research reproducibility","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749672928/Blog/Hero%20Images/gitlab-and-reproducibility.jpg","NYU reproducibility librarian Vicky Steeves shares why GitLab is her choice for ongoing collaborative research, and how it can help overcome challenges with sharing code in academia.",[1224],"Vicky Steeves","2017-08-25",{"slug":1227,"externalUrl":-1},"gitlab-and-reproducibility",{"content":1229,"config":1236},{"title":1230,"heroImage":1231,"category":709,"description":1232,"authors":1233,"date":1235},"A way for startups to build a solid IT infrastructure","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679216/Blog/Hero%20Images/startups-it-infrastructure.jpg","Seven free software solutions to cover your most important use cases.",[1234],"plapadoo","2017-08-07",{"slug":1237,"externalUrl":-1},"how-startups-build-it-infrastructure",{"content":1239,"config":1246},{"title":1240,"heroImage":1241,"category":750,"description":1242,"authors":1243,"date":1245},"Git Wars: Why I'm switching to GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680411/Blog/Hero%20Images/git-wars-switching-to-gitlab.jpg","New GitLab user Christopher Watson puts us through our paces and weighs up his Git hosting options.",[1244],"Christopher Watson","2017-07-19",{"slug":1247,"externalUrl":-1},"git-wars-switching-to-gitlab",{"content":1249,"config":1256},{"title":1250,"heroImage":1251,"category":750,"description":1252,"authors":1253,"date":1255},"Making CI/CD easier with GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680423/Blog/Hero%20Images/making-ci-easier-with-gitlab.jpg","The team at Trek10 tries to consider the need for automation and repeatability with everything they do. One team member gives a crash course in GitLab CI/CD and explains how they use it.",[1254],"Rob Ribeiro","2017-07-13",{"slug":1257,"externalUrl":-1},"making-ci-easier-with-gitlab",{"content":1259,"config":1266},{"title":1260,"heroImage":1261,"category":750,"description":1262,"authors":1263,"date":1265},"Dockerizing GitLab Review Apps","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680430/Blog/Hero%20Images/dockerizing-review-apps.jpg","A GitLab user shows us how to deploy Docker containers as a Review App.",[1264],"Stephan Hochdörfer","2017-07-11",{"slug":1267,"externalUrl":-1},"dockerizing-review-apps",{"content":1269,"config":1276},{"title":1270,"heroImage":1271,"category":750,"description":1272,"authors":1273,"date":1275},"How GitLab CI supported Ticketmaster's ramp up to weekly mobile releases","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682946/Blog/Hero%20Images/tm-cover-image-small.jpg","Ticketmaster Android developer Jeff Kelsey shares why GitLab CI was a game changer for his team.",[1274],"Jeff Kelsey","2017-06-07",{"slug":1277,"externalUrl":-1},"continuous-integration-ticketmaster",1777934919032]