[{"data":1,"prerenderedAt":1266},["ShallowReactive",2],{"/en-us/blog/tags/user-stories":3,"navigation-en-us":19,"banner-en-us":429,"footer-en-us":439,"user stories-tag-posts-en-us":681},{"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",{"data":20},{"logo":21,"freeTrial":26,"sales":31,"login":36,"items":41,"search":349,"minimal":380,"duo":399,"switchNav":408,"pricingDeployment":419},{"config":22},{"href":23,"dataGaName":24,"dataGaLocation":25},"/","gitlab logo","header",{"text":27,"config":28},"Get free trial",{"href":29,"dataGaName":30,"dataGaLocation":25},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":32,"config":33},"Talk to sales",{"href":34,"dataGaName":35,"dataGaLocation":25},"/sales/","sales",{"text":37,"config":38},"Sign in",{"href":39,"dataGaName":40,"dataGaLocation":25},"https://gitlab.com/users/sign_in/","sign in",[42,69,164,169,270,330],{"text":43,"config":44,"cards":46},"Platform",{"dataNavLevelOne":45},"platform",[47,53,61],{"title":43,"description":48,"link":49},"The intelligent orchestration platform for DevSecOps",{"text":50,"config":51},"Explore our Platform",{"href":52,"dataGaName":45,"dataGaLocation":25},"/platform/",{"title":54,"description":55,"link":56},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":57,"config":58},"Meet GitLab Duo",{"href":59,"dataGaName":60,"dataGaLocation":25},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":62,"description":63,"link":64},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":65,"config":66},"Learn more",{"href":67,"dataGaName":68,"dataGaLocation":25},"/why-gitlab/","why gitlab",{"text":70,"left":14,"config":71,"link":73,"lists":77,"footer":146},"Product",{"dataNavLevelOne":72},"solutions",{"text":74,"config":75},"View all Solutions",{"href":76,"dataGaName":72,"dataGaLocation":25},"/solutions/",[78,102,125],{"title":79,"description":80,"link":81,"items":86},"Automation","CI/CD and automation to accelerate deployment",{"config":82},{"icon":83,"href":84,"dataGaName":85,"dataGaLocation":25},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[87,91,94,98],{"text":88,"config":89},"CI/CD",{"href":90,"dataGaLocation":25,"dataGaName":88},"/solutions/continuous-integration/",{"text":54,"config":92},{"href":59,"dataGaLocation":25,"dataGaName":93},"gitlab duo agent platform - product menu",{"text":95,"config":96},"Source Code Management",{"href":97,"dataGaLocation":25,"dataGaName":95},"/solutions/source-code-management/",{"text":99,"config":100},"Automated Software Delivery",{"href":84,"dataGaLocation":25,"dataGaName":101},"Automated software delivery",{"title":103,"description":104,"link":105,"items":110},"Security","Deliver code faster without compromising security",{"config":106},{"href":107,"dataGaName":108,"dataGaLocation":25,"icon":109},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[111,115,120],{"text":112,"config":113},"Application Security Testing",{"href":107,"dataGaName":114,"dataGaLocation":25},"Application security testing",{"text":116,"config":117},"Software Supply Chain Security",{"href":118,"dataGaLocation":25,"dataGaName":119},"/solutions/supply-chain/","Software supply chain security",{"text":121,"config":122},"Software Compliance",{"href":123,"dataGaName":124,"dataGaLocation":25},"/solutions/software-compliance/","software compliance",{"title":126,"link":127,"items":132},"Measurement",{"config":128},{"icon":129,"href":130,"dataGaName":131,"dataGaLocation":25},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[133,137,141],{"text":134,"config":135},"Visibility & Measurement",{"href":130,"dataGaLocation":25,"dataGaName":136},"Visibility and Measurement",{"text":138,"config":139},"Value Stream Management",{"href":140,"dataGaLocation":25,"dataGaName":138},"/solutions/value-stream-management/",{"text":142,"config":143},"Analytics & Insights",{"href":144,"dataGaLocation":25,"dataGaName":145},"/solutions/analytics-and-insights/","Analytics and insights",{"title":147,"items":148},"GitLab for",[149,154,159],{"text":150,"config":151},"Enterprise",{"href":152,"dataGaLocation":25,"dataGaName":153},"/enterprise/","enterprise",{"text":155,"config":156},"Small Business",{"href":157,"dataGaLocation":25,"dataGaName":158},"/small-business/","small business",{"text":160,"config":161},"Public Sector",{"href":162,"dataGaLocation":25,"dataGaName":163},"/solutions/public-sector/","public sector",{"text":165,"config":166},"Pricing",{"href":167,"dataGaName":168,"dataGaLocation":25,"dataNavLevelOne":168},"/pricing/","pricing",{"text":170,"config":171,"link":173,"lists":177,"feature":257},"Resources",{"dataNavLevelOne":172},"resources",{"text":174,"config":175},"View all resources",{"href":176,"dataGaName":172,"dataGaLocation":25},"/resources/",[178,211,229],{"title":179,"items":180},"Getting started",[181,186,191,196,201,206],{"text":182,"config":183},"Install",{"href":184,"dataGaName":185,"dataGaLocation":25},"/install/","install",{"text":187,"config":188},"Quick start guides",{"href":189,"dataGaName":190,"dataGaLocation":25},"/get-started/","quick setup checklists",{"text":192,"config":193},"Learn",{"href":194,"dataGaLocation":25,"dataGaName":195},"https://university.gitlab.com/","learn",{"text":197,"config":198},"Product documentation",{"href":199,"dataGaName":200,"dataGaLocation":25},"https://docs.gitlab.com/","product documentation",{"text":202,"config":203},"Best practice videos",{"href":204,"dataGaName":205,"dataGaLocation":25},"/getting-started-videos/","best practice videos",{"text":207,"config":208},"Integrations",{"href":209,"dataGaName":210,"dataGaLocation":25},"/integrations/","integrations",{"title":212,"items":213},"Discover",[214,219,224],{"text":215,"config":216},"Customer success stories",{"href":217,"dataGaName":218,"dataGaLocation":25},"/customers/","customer success stories",{"text":220,"config":221},"Blog",{"href":222,"dataGaName":223,"dataGaLocation":25},"/blog/","blog",{"text":225,"config":226},"Remote",{"href":227,"dataGaName":228,"dataGaLocation":25},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":230,"items":231},"Connect",[232,237,242,247,252],{"text":233,"config":234},"GitLab Services",{"href":235,"dataGaName":236,"dataGaLocation":25},"/services/","services",{"text":238,"config":239},"Community",{"href":240,"dataGaName":241,"dataGaLocation":25},"/community/","community",{"text":243,"config":244},"Forum",{"href":245,"dataGaName":246,"dataGaLocation":25},"https://forum.gitlab.com/","forum",{"text":248,"config":249},"Events",{"href":250,"dataGaName":251,"dataGaLocation":25},"/events/","events",{"text":253,"config":254},"Partners",{"href":255,"dataGaName":256,"dataGaLocation":25},"/partners/","partners",{"backgroundColor":258,"textColor":259,"text":260,"image":261,"link":265},"#2f2a6b","#fff","Insights for the future of software development",{"altText":262,"config":263},"the source promo card",{"src":264},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758208064/dzl0dbift9xdizyelkk4.svg",{"text":266,"config":267},"Read the latest",{"href":268,"dataGaName":269,"dataGaLocation":25},"/the-source/","the source",{"text":271,"config":272,"lists":274},"Company",{"dataNavLevelOne":273},"company",[275],{"items":276},[277,282,288,290,295,300,305,310,315,320,325],{"text":278,"config":279},"About",{"href":280,"dataGaName":281,"dataGaLocation":25},"/company/","about",{"text":283,"config":284,"footerGa":287},"Jobs",{"href":285,"dataGaName":286,"dataGaLocation":25},"/jobs/","jobs",{"dataGaName":286},{"text":248,"config":289},{"href":250,"dataGaName":251,"dataGaLocation":25},{"text":291,"config":292},"Leadership",{"href":293,"dataGaName":294,"dataGaLocation":25},"/company/team/e-group/","leadership",{"text":296,"config":297},"Team",{"href":298,"dataGaName":299,"dataGaLocation":25},"/company/team/","team",{"text":301,"config":302},"Handbook",{"href":303,"dataGaName":304,"dataGaLocation":25},"https://handbook.gitlab.com/","handbook",{"text":306,"config":307},"Investor relations",{"href":308,"dataGaName":309,"dataGaLocation":25},"https://ir.gitlab.com/","investor relations",{"text":311,"config":312},"Trust Center",{"href":313,"dataGaName":314,"dataGaLocation":25},"/security/","trust center",{"text":316,"config":317},"AI Transparency Center",{"href":318,"dataGaName":319,"dataGaLocation":25},"/ai-transparency-center/","ai transparency center",{"text":321,"config":322},"Newsletter",{"href":323,"dataGaName":324,"dataGaLocation":25},"/company/contact/#contact-forms","newsletter",{"text":326,"config":327},"Press",{"href":328,"dataGaName":329,"dataGaLocation":25},"/press/","press",{"text":331,"config":332,"lists":333},"Contact us",{"dataNavLevelOne":273},[334],{"items":335},[336,339,344],{"text":32,"config":337},{"href":34,"dataGaName":338,"dataGaLocation":25},"talk to sales",{"text":340,"config":341},"Support portal",{"href":342,"dataGaName":343,"dataGaLocation":25},"https://support.gitlab.com","support portal",{"text":345,"config":346},"Customer portal",{"href":347,"dataGaName":348,"dataGaLocation":25},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":350,"login":351,"suggestions":358},"Close",{"text":352,"link":353},"To search repositories and projects, login to",{"text":354,"config":355},"gitlab.com",{"href":39,"dataGaName":356,"dataGaLocation":357},"search login","search",{"text":359,"default":360},"Suggestions",[361,363,367,369,373,377],{"text":54,"config":362},{"href":59,"dataGaName":54,"dataGaLocation":357},{"text":364,"config":365},"Code Suggestions (AI)",{"href":366,"dataGaName":364,"dataGaLocation":357},"/solutions/code-suggestions/",{"text":88,"config":368},{"href":90,"dataGaName":88,"dataGaLocation":357},{"text":370,"config":371},"GitLab on AWS",{"href":372,"dataGaName":370,"dataGaLocation":357},"/partners/technology-partners/aws/",{"text":374,"config":375},"GitLab on Google Cloud",{"href":376,"dataGaName":374,"dataGaLocation":357},"/partners/technology-partners/google-cloud-platform/",{"text":378,"config":379},"Why GitLab?",{"href":67,"dataGaName":378,"dataGaLocation":357},{"freeTrial":381,"mobileIcon":386,"desktopIcon":391,"secondaryButton":394},{"text":382,"config":383},"Start free trial",{"href":384,"dataGaName":30,"dataGaLocation":385},"https://gitlab.com/-/trials/new/","nav",{"altText":387,"config":388},"Gitlab Icon",{"src":389,"dataGaName":390,"dataGaLocation":385},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":387,"config":392},{"src":393,"dataGaName":390,"dataGaLocation":385},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":395,"config":396},"Get Started",{"href":397,"dataGaName":398,"dataGaLocation":385},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":400,"mobileIcon":404,"desktopIcon":406},{"text":401,"config":402},"Learn more about GitLab Duo",{"href":59,"dataGaName":403,"dataGaLocation":385},"gitlab duo",{"altText":387,"config":405},{"src":389,"dataGaName":390,"dataGaLocation":385},{"altText":387,"config":407},{"src":393,"dataGaName":390,"dataGaLocation":385},{"button":409,"mobileIcon":414,"desktopIcon":416},{"text":410,"config":411},"/switch",{"href":412,"dataGaName":413,"dataGaLocation":385},"#contact","switch",{"altText":387,"config":415},{"src":389,"dataGaName":390,"dataGaLocation":385},{"altText":387,"config":417},{"src":418,"dataGaName":390,"dataGaLocation":385},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":420,"mobileIcon":425,"desktopIcon":427},{"text":421,"config":422},"Back to pricing",{"href":167,"dataGaName":423,"dataGaLocation":385,"icon":424},"back to pricing","GoBack",{"altText":387,"config":426},{"src":389,"dataGaName":390,"dataGaLocation":385},{"altText":387,"config":428},{"src":393,"dataGaName":390,"dataGaLocation":385},{"title":430,"button":431,"config":436},"See how agentic AI transforms software delivery",{"text":432,"config":433},"Watch GitLab Transcend now",{"href":434,"dataGaName":435,"dataGaLocation":25},"/events/transcend/virtual/","transcend event",{"layout":437,"icon":438,"disabled":14},"release","AiStar",{"data":440},{"text":441,"source":442,"edit":448,"contribute":453,"config":458,"items":463,"minimal":670},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":443,"config":444},"View page source",{"href":445,"dataGaName":446,"dataGaLocation":447},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":449,"config":450},"Edit this page",{"href":451,"dataGaName":452,"dataGaLocation":447},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":454,"config":455},"Please contribute",{"href":456,"dataGaName":457,"dataGaLocation":447},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":459,"facebook":460,"youtube":461,"linkedin":462},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[464,511,565,609,636],{"title":165,"links":465,"subMenu":480},[466,470,475],{"text":467,"config":468},"View plans",{"href":167,"dataGaName":469,"dataGaLocation":447},"view plans",{"text":471,"config":472},"Why Premium?",{"href":473,"dataGaName":474,"dataGaLocation":447},"/pricing/premium/","why premium",{"text":476,"config":477},"Why Ultimate?",{"href":478,"dataGaName":479,"dataGaLocation":447},"/pricing/ultimate/","why ultimate",[481],{"title":482,"links":483},"Contact Us",[484,487,489,491,496,501,506],{"text":485,"config":486},"Contact sales",{"href":34,"dataGaName":35,"dataGaLocation":447},{"text":340,"config":488},{"href":342,"dataGaName":343,"dataGaLocation":447},{"text":345,"config":490},{"href":347,"dataGaName":348,"dataGaLocation":447},{"text":492,"config":493},"Status",{"href":494,"dataGaName":495,"dataGaLocation":447},"https://status.gitlab.com/","status",{"text":497,"config":498},"Terms of use",{"href":499,"dataGaName":500,"dataGaLocation":447},"/terms/","terms of use",{"text":502,"config":503},"Privacy statement",{"href":504,"dataGaName":505,"dataGaLocation":447},"/privacy/","privacy statement",{"text":507,"config":508},"Cookie preferences",{"dataGaName":509,"dataGaLocation":447,"id":510,"isOneTrustButton":14},"cookie preferences","ot-sdk-btn",{"title":70,"links":512,"subMenu":521},[513,517],{"text":514,"config":515},"DevSecOps platform",{"href":52,"dataGaName":516,"dataGaLocation":447},"devsecops platform",{"text":518,"config":519},"AI-Assisted Development",{"href":59,"dataGaName":520,"dataGaLocation":447},"ai-assisted development",[522],{"title":523,"links":524},"Topics",[525,530,535,540,545,550,555,560],{"text":526,"config":527},"CICD",{"href":528,"dataGaName":529,"dataGaLocation":447},"/topics/ci-cd/","cicd",{"text":531,"config":532},"GitOps",{"href":533,"dataGaName":534,"dataGaLocation":447},"/topics/gitops/","gitops",{"text":536,"config":537},"DevOps",{"href":538,"dataGaName":539,"dataGaLocation":447},"/topics/devops/","devops",{"text":541,"config":542},"Version Control",{"href":543,"dataGaName":544,"dataGaLocation":447},"/topics/version-control/","version control",{"text":546,"config":547},"DevSecOps",{"href":548,"dataGaName":549,"dataGaLocation":447},"/topics/devsecops/","devsecops",{"text":551,"config":552},"Cloud Native",{"href":553,"dataGaName":554,"dataGaLocation":447},"/topics/cloud-native/","cloud native",{"text":556,"config":557},"AI for Coding",{"href":558,"dataGaName":559,"dataGaLocation":447},"/topics/devops/ai-for-coding/","ai for coding",{"text":561,"config":562},"Agentic AI",{"href":563,"dataGaName":564,"dataGaLocation":447},"/topics/agentic-ai/","agentic ai",{"title":566,"links":567},"Solutions",[568,570,572,577,581,584,588,591,593,596,599,604],{"text":112,"config":569},{"href":107,"dataGaName":112,"dataGaLocation":447},{"text":101,"config":571},{"href":84,"dataGaName":85,"dataGaLocation":447},{"text":573,"config":574},"Agile development",{"href":575,"dataGaName":576,"dataGaLocation":447},"/solutions/agile-delivery/","agile delivery",{"text":578,"config":579},"SCM",{"href":97,"dataGaName":580,"dataGaLocation":447},"source code management",{"text":526,"config":582},{"href":90,"dataGaName":583,"dataGaLocation":447},"continuous integration & delivery",{"text":585,"config":586},"Value stream management",{"href":140,"dataGaName":587,"dataGaLocation":447},"value stream management",{"text":531,"config":589},{"href":590,"dataGaName":534,"dataGaLocation":447},"/solutions/gitops/",{"text":150,"config":592},{"href":152,"dataGaName":153,"dataGaLocation":447},{"text":594,"config":595},"Small business",{"href":157,"dataGaName":158,"dataGaLocation":447},{"text":597,"config":598},"Public sector",{"href":162,"dataGaName":163,"dataGaLocation":447},{"text":600,"config":601},"Education",{"href":602,"dataGaName":603,"dataGaLocation":447},"/solutions/education/","education",{"text":605,"config":606},"Financial services",{"href":607,"dataGaName":608,"dataGaLocation":447},"/solutions/finance/","financial services",{"title":170,"links":610},[611,613,615,617,620,622,624,626,628,630,632,634],{"text":182,"config":612},{"href":184,"dataGaName":185,"dataGaLocation":447},{"text":187,"config":614},{"href":189,"dataGaName":190,"dataGaLocation":447},{"text":192,"config":616},{"href":194,"dataGaName":195,"dataGaLocation":447},{"text":197,"config":618},{"href":199,"dataGaName":619,"dataGaLocation":447},"docs",{"text":220,"config":621},{"href":222,"dataGaName":223,"dataGaLocation":447},{"text":215,"config":623},{"href":217,"dataGaName":218,"dataGaLocation":447},{"text":225,"config":625},{"href":227,"dataGaName":228,"dataGaLocation":447},{"text":233,"config":627},{"href":235,"dataGaName":236,"dataGaLocation":447},{"text":238,"config":629},{"href":240,"dataGaName":241,"dataGaLocation":447},{"text":243,"config":631},{"href":245,"dataGaName":246,"dataGaLocation":447},{"text":248,"config":633},{"href":250,"dataGaName":251,"dataGaLocation":447},{"text":253,"config":635},{"href":255,"dataGaName":256,"dataGaLocation":447},{"title":271,"links":637},[638,640,642,644,646,648,650,654,659,661,663,665],{"text":278,"config":639},{"href":280,"dataGaName":273,"dataGaLocation":447},{"text":283,"config":641},{"href":285,"dataGaName":286,"dataGaLocation":447},{"text":291,"config":643},{"href":293,"dataGaName":294,"dataGaLocation":447},{"text":296,"config":645},{"href":298,"dataGaName":299,"dataGaLocation":447},{"text":301,"config":647},{"href":303,"dataGaName":304,"dataGaLocation":447},{"text":306,"config":649},{"href":308,"dataGaName":309,"dataGaLocation":447},{"text":651,"config":652},"Sustainability",{"href":653,"dataGaName":651,"dataGaLocation":447},"/sustainability/",{"text":655,"config":656},"Diversity, inclusion and belonging (DIB)",{"href":657,"dataGaName":658,"dataGaLocation":447},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":311,"config":660},{"href":313,"dataGaName":314,"dataGaLocation":447},{"text":321,"config":662},{"href":323,"dataGaName":324,"dataGaLocation":447},{"text":326,"config":664},{"href":328,"dataGaName":329,"dataGaLocation":447},{"text":666,"config":667},"Modern Slavery Transparency Statement",{"href":668,"dataGaName":669,"dataGaLocation":447},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":671},[672,675,678],{"text":673,"config":674},"Terms",{"href":499,"dataGaName":500,"dataGaLocation":447},{"text":676,"config":677},"Cookies",{"dataGaName":509,"dataGaLocation":447,"id":510,"isOneTrustButton":14},{"text":679,"config":680},"Privacy",{"href":504,"dataGaName":505,"dataGaLocation":447},[682,693,704,714,724,734,745,755,764,775,785,796,805,814,823,833,842,851,860,869,878,887,896,905,914,923,933,944,954,964,974,984,994,1003,1013,1022,1031,1041,1051,1060,1069,1079,1088,1097,1107,1117,1127,1137,1147,1157,1167,1177,1187,1197,1206,1216,1226,1236,1246,1256],{"content":683,"config":691},{"title":684,"heroImage":685,"category":686,"description":687,"authors":688,"date":690},"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.",[689],"Carl Myers","2024-08-27",{"slug":692,"externalUrl":-1},"how-indeed-transformed-its-ci-platform-with-gitlab",{"content":694,"config":702},{"title":695,"heroImage":696,"category":697,"description":698,"authors":699,"date":701},"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.",[700],"Jean-Philippe Baconnais","2022-06-08",{"slug":703,"externalUrl":-1},"configuring-your-cluster-with-kubernetes-integration",{"content":705,"config":712},{"title":706,"heroImage":707,"category":549,"description":708,"authors":709,"date":711},"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.",[710],"Lee Tickett","2022-05-12",{"slug":713,"externalUrl":-1},"gitlab-heroes-unmasked-elevating-my-company-using-gitlab",{"content":715,"config":722},{"title":716,"heroImage":717,"category":549,"description":718,"authors":719,"date":721},"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.",[720],"Valerie Silverthorne","2021-09-08",{"slug":723,"externalUrl":-1},"making-the-case-for-a-devops-platform-what-data-and-customers-say",{"content":725,"config":732},{"title":726,"heroImage":727,"category":697,"description":728,"authors":729,"date":731},"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.",[730],"Nuritzi Sanchez","2021-02-18",{"slug":733,"externalUrl":-1},"kali-linux-movingtogitlab",{"content":735,"config":743},{"title":736,"heroImage":737,"category":738,"description":739,"authors":740,"date":742},"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.",[741],"Stan Hu","2021-01-27",{"slug":744,"externalUrl":-1},"we-need-to-talk-no-proxy",{"content":746,"config":753},{"title":747,"heroImage":748,"category":749,"description":750,"authors":751,"date":752},"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.",[710],"2020-11-13",{"slug":754,"externalUrl":-1},"lee-tickett-my-gitlab-journey",{"content":756,"config":762},{"title":757,"heroImage":758,"category":697,"description":759,"authors":760,"date":752},"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.",[761],"Christina Hupy, Ph.D.",{"slug":763,"externalUrl":-1},"thelastmile-gitlab",{"content":765,"config":773},{"title":766,"heroImage":767,"category":768,"description":769,"authors":770,"date":772},"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.",[771],"Sara Kassabian","2020-09-24",{"slug":774,"externalUrl":-1},"devops-stakeholder-buyin",{"content":776,"config":783},{"title":777,"heroImage":778,"category":749,"description":779,"authors":780,"date":782},"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.",[781],"Huldra","2020-08-19",{"slug":784,"externalUrl":-1},"arctic-engine-fuzz-testing-blog",{"content":786,"config":794},{"title":787,"heroImage":788,"category":789,"description":790,"authors":791,"date":793},"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.",[792],"Colin Fletcher","2020-07-29",{"slug":795,"externalUrl":-1},"forrester-tei",{"content":797,"config":803},{"title":798,"heroImage":799,"category":697,"description":800,"authors":801,"date":802},"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.",[730],"2020-06-29",{"slug":804,"externalUrl":-1},"welcome-kde",{"content":806,"config":812},{"title":807,"heroImage":808,"category":749,"description":809,"authors":810,"date":811},"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!",[761],"2020-06-17",{"slug":813,"externalUrl":-1},"gitlab-for-education-student-spotlights",{"content":815,"config":821},{"title":816,"heroImage":817,"category":738,"description":818,"authors":819,"date":820},"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.",[771],"2020-05-27",{"slug":822,"externalUrl":-1},"best-practices-for-kubernetes-runners",{"content":824,"config":831},{"title":825,"heroImage":826,"category":697,"description":827,"authors":828,"date":830},"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.",[829],"Brein Matturro","2020-03-24",{"slug":832,"externalUrl":-1},"from-monolith-to-microservices-how-to-leverage-aws-with-gitlab",{"content":834,"config":840},{"title":835,"heroImage":836,"category":768,"description":837,"authors":838,"date":839},"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.",[829],"2020-01-24",{"slug":841,"externalUrl":-1},"goldman-sachs-partners-with-gitlab-for-next-gen-platform-strategies",{"content":843,"config":849},{"title":844,"heroImage":845,"category":273,"description":846,"authors":847,"date":848},"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.",[771],"2019-11-15",{"slug":850,"externalUrl":-1},"python-rust-and-gitlab-ci",{"content":852,"config":858},{"title":853,"heroImage":854,"category":697,"description":855,"authors":856,"date":857},"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.",[829],"2019-10-28",{"slug":859,"externalUrl":-1},"optimize-gitops-workflow",{"content":861,"config":867},{"title":862,"heroImage":863,"category":697,"description":864,"authors":865,"date":866},"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.",[720],"2019-10-17",{"slug":868,"externalUrl":-1},"delta-cloud-native",{"content":870,"config":876},{"title":871,"heroImage":872,"category":273,"description":873,"authors":874,"date":875},"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.",[720],"2019-10-09",{"slug":877,"externalUrl":-1},"live-from-commit-london",{"content":879,"config":885},{"title":880,"heroImage":881,"category":697,"description":882,"authors":883,"date":884},"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.",[829],"2019-10-01",{"slug":886,"externalUrl":-1},"redbox-on-demand-delivers-with-gitlab",{"content":888,"config":894},{"title":889,"heroImage":890,"category":273,"description":891,"authors":892,"date":893},"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.",[720],"2019-09-18",{"slug":895,"externalUrl":-1},"wrapping-up-commit",{"content":897,"config":903},{"title":898,"heroImage":899,"category":697,"description":900,"authors":901,"date":902},"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.",[720],"2019-09-17",{"slug":904,"externalUrl":-1},"open-source-nasa-gl",{"content":906,"config":912},{"title":907,"heroImage":908,"category":697,"description":909,"authors":910,"date":911},"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.",[829],"2019-09-02",{"slug":913,"externalUrl":-1},"creating-a-transparent-digital-democracy",{"content":915,"config":921},{"title":916,"heroImage":917,"category":768,"description":918,"authors":919,"date":920},"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.",[829],"2019-07-23",{"slug":922,"externalUrl":-1},"three-teams-left-jenkins-heres-why",{"content":924,"config":931},{"title":925,"heroImage":926,"category":768,"description":927,"authors":928,"date":930},"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.",[929],"Bert Van Eyck","2019-06-07",{"slug":932,"externalUrl":-1},"proximus-customer-story-clearcase-to-gitlab",{"content":934,"config":942},{"title":935,"heroImage":936,"category":768,"description":937,"authors":938,"date":941},"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.",[939,940],"Rebecca Dodd","Aricka Flowers","2019-05-21",{"slug":943,"externalUrl":-1},"monkton-moves-to-gitlab-customer-story",{"content":945,"config":952},{"title":946,"heroImage":947,"category":697,"description":948,"authors":949,"date":951},"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.",[950],"Kim Lock","2019-02-14",{"slug":953,"externalUrl":-1},"verizon-customer-story",{"content":955,"config":962},{"title":956,"heroImage":957,"category":738,"description":958,"authors":959,"date":961},"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.",[960],"Ronald van Zon","2019-02-07",{"slug":963,"externalUrl":-1},"start-using-git",{"content":965,"config":972},{"title":966,"heroImage":967,"category":697,"description":968,"authors":969,"date":971},"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.",[970],"Andrew Chilton","2019-02-06",{"slug":973,"externalUrl":-1},"donatinator-open-source-donation-platform",{"content":975,"config":982},{"title":976,"heroImage":977,"category":738,"description":978,"authors":979,"date":981},"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.",[980],"Forrest Brazeal","2019-02-04",{"slug":983,"externalUrl":-1},"multi-account-aws-sam-deployments-with-gitlab-ci",{"content":985,"config":992},{"title":986,"heroImage":987,"category":697,"description":988,"authors":989,"date":991},"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.",[990],"Eva Sasson","2019-01-25",{"slug":993,"externalUrl":-1},"sentry-integration-blog-post",{"content":995,"config":1001},{"title":996,"heroImage":997,"category":697,"description":998,"authors":999,"date":1000},"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.",[940],"2019-01-16",{"slug":1002,"externalUrl":-1},"wag-labs-blog-post",{"content":1004,"config":1011},{"title":1005,"heroImage":1006,"category":738,"description":1007,"authors":1008,"date":1010},"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.",[1009],"Jason Yavorska","2018-10-24",{"slug":1012,"externalUrl":-1},"setting-up-gitlab-ci-for-android-projects",{"content":1014,"config":1020},{"title":1015,"heroImage":1016,"category":768,"description":1017,"authors":1018,"date":1019},"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",[950],"2018-10-12",{"slug":1021,"externalUrl":-1},"cern-connect-global-researchers",{"content":1023,"config":1029},{"title":1024,"heroImage":1025,"category":273,"description":1026,"authors":1027,"date":1028},"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.",[939],"2018-09-26",{"slug":1030,"externalUrl":-1},"customer-interview-charter-communications",{"content":1032,"config":1039},{"title":1033,"heroImage":1034,"category":768,"description":1035,"authors":1036,"date":1038},"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.",[1037],"Cindy Blake","2018-09-11",{"slug":1040,"externalUrl":-1},"what-south-africa-taught-me-about-cybersecurity",{"content":1042,"config":1049},{"title":1043,"heroImage":1044,"category":768,"description":1045,"authors":1046,"date":1048},"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.",[1047],"Erica Lindberg","2018-09-05",{"slug":1050,"externalUrl":-1},"how-telesphora-is-tackling-the-opioid-crisis-machine-learning-human-centered-design",{"content":1052,"config":1058},{"title":1053,"heroImage":1054,"category":697,"description":1055,"authors":1056,"date":1057},"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.",[939],"2018-08-20",{"slug":1059,"externalUrl":-1},"freedesktop-org-migrates-to-gitlab",{"content":1061,"config":1067},{"title":1062,"heroImage":1063,"category":686,"description":1064,"authors":1065,"date":1066},"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.",[939],"2018-07-23",{"slug":1068,"externalUrl":-1},"chris-hill-devops-enterprise-summit-talk",{"content":1070,"config":1077},{"title":1071,"heroImage":1072,"category":738,"description":1073,"authors":1074,"date":1076},"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.\"",[1075],"Brendan O'Leary","2018-06-29",{"slug":1078,"externalUrl":-1},"introducing-auto-breakfast-from-gitlab",{"content":1080,"config":1086},{"title":1081,"heroImage":1082,"category":768,"description":1083,"authors":1084,"date":1085},"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.",[940],"2018-06-21",{"slug":1087,"externalUrl":-1},"leah-petersen-user-spotlight",{"content":1089,"config":1095},{"title":1090,"heroImage":1091,"category":273,"description":1092,"authors":1093,"date":1094},"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!",[1075],"2018-02-08",{"slug":1096,"externalUrl":-1},"using-gitlab-to-manage-house-renovation-priorities",{"content":1098,"config":1105},{"title":1099,"heroImage":1100,"category":738,"description":1101,"authors":1102,"date":1104},"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.",[1103],"Gabriel Le Breton","2018-02-05",{"slug":1106,"externalUrl":-1},"test-all-the-things-gitlab-ci-docker-examples",{"content":1108,"config":1115},{"title":1109,"heroImage":1110,"category":738,"description":1111,"authors":1112,"date":1114},"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.",[1113],"Riccardo Padovani","2018-01-22",{"slug":1116,"externalUrl":-1},"a-beginners-guide-to-continuous-integration",{"content":1118,"config":1125},{"title":1119,"heroImage":1120,"category":697,"description":1121,"authors":1122,"date":1124},"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.",[1123],"Goetz Buerkle","2017-12-13",{"slug":1126,"externalUrl":-1},"an-agile-approach-to-documentation-and-structure",{"content":1128,"config":1135},{"title":1129,"heroImage":1130,"category":738,"description":1131,"authors":1132,"date":1134},"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.",[1133],"Julien Andrieux","2017-11-27",{"slug":1136,"externalUrl":-1},"go-tools-and-gitlab-how-to-do-continuous-integration-like-a-boss",{"content":1138,"config":1145},{"title":1139,"heroImage":1140,"category":738,"description":1141,"authors":1142,"date":1144},"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.",[1143],"Max Woolf","2017-11-23",{"slug":1146,"externalUrl":-1},"autoscale-ci-runners",{"content":1148,"config":1155},{"title":1149,"heroImage":1150,"category":738,"description":1151,"authors":1152,"date":1154},"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.",[1153],"Renato Stanic","2017-11-20",{"slug":1156,"externalUrl":-1},"working-with-yaml-gitlab-ci-android",{"content":1158,"config":1165},{"title":1159,"heroImage":1160,"category":738,"description":1161,"authors":1162,"date":1164},"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.",[1163],"William Chia","2017-11-14",{"slug":1166,"externalUrl":-1},"humangeo-switches-jenkins-gitlab-ci",{"content":1168,"config":1175},{"title":1169,"heroImage":1170,"category":738,"description":1171,"authors":1172,"date":1174},"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.",[1173],"Kristian Larsson","2017-11-02",{"slug":1176,"externalUrl":-1},"automating-boring-git-operations-gitlab-ci",{"content":1178,"config":1185},{"title":1179,"heroImage":1180,"category":738,"description":1181,"authors":1182,"date":1184},"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.",[1183],"Sergey Nuzhdin","2017-09-21",{"slug":1186,"externalUrl":-1},"how-to-create-a-ci-cd-pipeline-with-auto-deploy-to-kubernetes-using-gitlab",{"content":1188,"config":1195},{"title":1189,"heroImage":1190,"category":738,"description":1191,"authors":1192,"date":1194},"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.",[1193],"Simon Tarchichi","2017-09-12",{"slug":1196,"externalUrl":-1},"vuejs-app-gitlab",{"content":1198,"config":1204},{"title":1199,"heroImage":1200,"category":738,"description":1201,"authors":1202,"date":1203},"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.",[1113],"2017-09-05",{"slug":1205,"externalUrl":-1},"how-to-automatically-create-a-new-mr-on-gitlab-with-gitlab-ci",{"content":1207,"config":1214},{"title":1208,"heroImage":1209,"category":697,"description":1210,"authors":1211,"date":1213},"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.",[1212],"Vicky Steeves","2017-08-25",{"slug":1215,"externalUrl":-1},"gitlab-and-reproducibility",{"content":1217,"config":1224},{"title":1218,"heroImage":1219,"category":697,"description":1220,"authors":1221,"date":1223},"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.",[1222],"plapadoo","2017-08-07",{"slug":1225,"externalUrl":-1},"how-startups-build-it-infrastructure",{"content":1227,"config":1234},{"title":1228,"heroImage":1229,"category":738,"description":1230,"authors":1231,"date":1233},"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.",[1232],"Christopher Watson","2017-07-19",{"slug":1235,"externalUrl":-1},"git-wars-switching-to-gitlab",{"content":1237,"config":1244},{"title":1238,"heroImage":1239,"category":738,"description":1240,"authors":1241,"date":1243},"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.",[1242],"Rob Ribeiro","2017-07-13",{"slug":1245,"externalUrl":-1},"making-ci-easier-with-gitlab",{"content":1247,"config":1254},{"title":1248,"heroImage":1249,"category":738,"description":1250,"authors":1251,"date":1253},"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.",[1252],"Stephan Hochdörfer","2017-07-11",{"slug":1255,"externalUrl":-1},"dockerizing-review-apps",{"content":1257,"config":1264},{"title":1258,"heroImage":1259,"category":738,"description":1260,"authors":1261,"date":1263},"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.",[1262],"Jeff Kelsey","2017-06-07",{"slug":1265,"externalUrl":-1},"continuous-integration-ticketmaster",1776436768516]