[{"data":1,"prerenderedAt":916},["ShallowReactive",2],{"/blog/archive/page/9":3,"navigation-en-us":20,"banner-en-us":448,"footer-en-us":459,"archived-posts-en-us":704,"archived-posts-page-9-en-us":705},{"id":4,"title":5,"body":6,"category":6,"config":7,"content":9,"description":6,"extension":11,"meta":12,"navigation":13,"path":14,"seo":15,"slug":6,"stem":18,"testContent":6,"type":6,"__hash__":19},"pages/en-us/blog/archive/index.yml","",null,{"template":8},"BlogArchive",{"header":10},"Blog Archive","yml",{},true,"/en-us/blog/archive",{"title":16,"description":17},"GitLab Blog Archives","Tutorials, product information, expert insights, and more from GitLab to help DevSecOps teams build, test, and deploy secure software faster.","en-us/blog/archive/index","Ua6FaTXW6kDCSV7f-TNcWLVIojWYT_CsjiByJn9gYUs",{"logo":21,"freeTrial":26,"sales":31,"login":36,"items":41,"search":368,"minimal":399,"duo":418,"switchNav":427,"pricingDeployment":438},{"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},"Request a demo",{"href":34,"dataGaName":35,"dataGaLocation":25},"/sales/?contact-topic=request-demo","sales",{"text":37,"config":38},"Sign in",{"href":39,"dataGaName":40,"dataGaLocation":25},"https://gitlab.com/users/sign_in/","sign in",[42,71,171,176,290,346],{"text":43,"config":44,"menu":46},"Platform",{"dataNavLevelOne":45},"platform",{"type":47,"columns":48},"cards",[49,55,63],{"title":43,"description":50,"link":51},"The intelligent orchestration platform for DevSecOps",{"text":52,"config":53},"Explore our Platform",{"href":54,"dataGaName":45,"dataGaLocation":25},"/platform/",{"title":56,"description":57,"link":58},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":59,"config":60},"Meet GitLab Duo",{"href":61,"dataGaName":62,"dataGaLocation":25},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":64,"description":65,"link":66},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":67,"config":68},"Learn more",{"href":69,"dataGaName":70,"dataGaLocation":25},"/why-gitlab/","why gitlab",{"text":72,"left":13,"config":73,"menu":75},"Product",{"dataNavLevelOne":74},"solutions",{"type":76,"link":77,"columns":81,"feature":150},"lists",{"text":78,"config":79},"View all Solutions",{"href":80,"dataGaName":74,"dataGaLocation":25},"/solutions/",[82,106,129],{"title":83,"description":84,"link":85,"items":90},"Automation","CI/CD and automation to accelerate deployment",{"config":86},{"icon":87,"href":88,"dataGaName":89,"dataGaLocation":25},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[91,95,98,102],{"text":92,"config":93},"CI/CD",{"href":94,"dataGaLocation":25,"dataGaName":92},"/solutions/continuous-integration/",{"text":56,"config":96},{"href":61,"dataGaLocation":25,"dataGaName":97},"gitlab duo agent platform - product menu",{"text":99,"config":100},"Source Code Management",{"href":101,"dataGaLocation":25,"dataGaName":99},"/solutions/source-code-management/",{"text":103,"config":104},"Automated Software Delivery",{"href":88,"dataGaLocation":25,"dataGaName":105},"Automated software delivery",{"title":107,"description":108,"link":109,"items":114},"Security","Deliver code faster without compromising security",{"config":110},{"href":111,"dataGaName":112,"dataGaLocation":25,"icon":113},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[115,119,124],{"text":116,"config":117},"Application Security Testing",{"href":111,"dataGaName":118,"dataGaLocation":25},"Application security testing",{"text":120,"config":121},"Software Supply Chain Security",{"href":122,"dataGaLocation":25,"dataGaName":123},"/solutions/supply-chain/","Software supply chain security",{"text":125,"config":126},"Software Compliance",{"href":127,"dataGaName":128,"dataGaLocation":25},"/solutions/software-compliance/","software compliance",{"title":130,"link":131,"items":136},"Measurement",{"config":132},{"icon":133,"href":134,"dataGaName":135,"dataGaLocation":25},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[137,141,145],{"text":138,"config":139},"Visibility & Measurement",{"href":134,"dataGaLocation":25,"dataGaName":140},"Visibility and Measurement",{"text":142,"config":143},"Value Stream Management",{"href":144,"dataGaLocation":25,"dataGaName":142},"/solutions/value-stream-management/",{"text":146,"config":147},"Analytics & Insights",{"href":148,"dataGaLocation":25,"dataGaName":149},"/solutions/analytics-and-insights/","Analytics and insights",{"title":151,"type":76,"items":152},"GitLab for",[153,159,165],{"text":154,"config":155},"Enterprise",{"icon":156,"href":157,"dataGaLocation":25,"dataGaName":158},"Building","/enterprise/","enterprise",{"text":160,"config":161},"Small Business",{"icon":162,"href":163,"dataGaLocation":25,"dataGaName":164},"Work","/small-business/","small business",{"text":166,"config":167},"Public Sector",{"icon":168,"href":169,"dataGaLocation":25,"dataGaName":170},"Organization","/solutions/public-sector/","public sector",{"text":172,"config":173},"Pricing",{"href":174,"dataGaName":175,"dataGaLocation":25,"dataNavLevelOne":175},"/pricing/","pricing",{"text":177,"config":178,"menu":180},"Resources",{"dataNavLevelOne":179},"resources",{"type":76,"link":181,"columns":185,"feature":279},{"text":182,"config":183},"View all resources",{"href":184,"dataGaName":179,"dataGaLocation":25},"/resources/",[186,219,246],{"title":187,"items":188},"Getting started",[189,194,199,204,209,214],{"text":190,"config":191},"Install",{"href":192,"dataGaName":193,"dataGaLocation":25},"/install/","install",{"text":195,"config":196},"Quick start guides",{"href":197,"dataGaName":198,"dataGaLocation":25},"/get-started/","quick setup checklists",{"text":200,"config":201},"Learn",{"href":202,"dataGaLocation":25,"dataGaName":203},"https://university.gitlab.com/","learn",{"text":205,"config":206},"Product documentation",{"href":207,"dataGaName":208,"dataGaLocation":25},"https://docs.gitlab.com/","product documentation",{"text":210,"config":211},"Best practice videos",{"href":212,"dataGaName":213,"dataGaLocation":25},"/getting-started-videos/","best practice videos",{"text":215,"config":216},"Integrations",{"href":217,"dataGaName":218,"dataGaLocation":25},"/integrations/","integrations",{"title":220,"items":221},"Discover",[222,227,232,237,241],{"text":223,"config":224},"Customer success stories",{"href":225,"dataGaName":226,"dataGaLocation":25},"/customers/","customer success stories",{"text":228,"config":229},"Blog",{"href":230,"dataGaName":231,"dataGaLocation":25},"/blog/","blog",{"text":233,"config":234},"Demo Hub",{"href":235,"dataGaName":236,"dataGaLocation":25},"/demo-hub/","demo hub",{"text":238,"config":239},"The Source",{"href":240,"dataGaName":231,"dataGaLocation":25},"/the-source/",{"text":242,"config":243},"Remote",{"href":244,"dataGaName":245,"dataGaLocation":25},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":247,"items":248},"Connect",[249,254,259,264,269,274],{"text":250,"config":251},"GitLab Services",{"href":252,"dataGaName":253,"dataGaLocation":25},"/services/","services",{"text":255,"config":256},"Contribute",{"href":257,"dataGaName":258,"dataGaLocation":25},"https://contributors.gitlab.com","contribute",{"text":260,"config":261},"Community",{"href":262,"dataGaName":263,"dataGaLocation":25},"/community/","community",{"text":265,"config":266},"Forum",{"href":267,"dataGaName":268,"dataGaLocation":25},"https://forum.gitlab.com/","forum",{"text":270,"config":271},"Events",{"href":272,"dataGaName":273,"dataGaLocation":25},"/events/","events",{"text":275,"config":276},"Partners",{"href":277,"dataGaName":278,"dataGaLocation":25},"/partners/","partners",{"config":280,"title":283,"text":284,"link":285},{"background":281,"textColor":282},"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":286,"config":287},"Read the latest",{"href":288,"dataGaName":289,"dataGaLocation":25},"/whats-new/","whats new",{"text":291,"config":292,"menu":294},"Company",{"dataNavLevelOne":293},"company",{"type":76,"columns":295},[296],{"items":297},[298,303,309,311,316,321,326,331,336,341],{"text":299,"config":300},"About",{"href":301,"dataGaName":302,"dataGaLocation":25},"/company/","about",{"text":304,"config":305,"footerGa":308},"Jobs",{"href":306,"dataGaName":307,"dataGaLocation":25},"/jobs/","jobs",{"dataGaName":307},{"text":270,"config":310},{"href":272,"dataGaName":273,"dataGaLocation":25},{"text":312,"config":313},"Leadership",{"href":314,"dataGaName":315,"dataGaLocation":25},"/company/team/e-group/","leadership",{"text":317,"config":318},"Handbook",{"href":319,"dataGaName":320,"dataGaLocation":25},"https://handbook.gitlab.com/","handbook",{"text":322,"config":323},"Investor relations",{"href":324,"dataGaName":325,"dataGaLocation":25},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":327,"config":328},"Trust Center",{"href":329,"dataGaName":330,"dataGaLocation":25},"/security/","trust center",{"text":332,"config":333},"AI Transparency Center",{"href":334,"dataGaName":335,"dataGaLocation":25},"/ai-transparency-center/","ai transparency center",{"text":337,"config":338},"Newsletter",{"href":339,"dataGaName":340,"dataGaLocation":25},"/company/contact/#contact-forms","newsletter",{"text":342,"config":343},"Press",{"href":344,"dataGaName":345,"dataGaLocation":25},"/press/","press",{"text":347,"config":348,"menu":349},"Contact us",{"dataNavLevelOne":293},{"type":76,"columns":350},[351],{"items":352},[353,358,363],{"text":354,"config":355},"Talk to sales",{"href":356,"dataGaName":357,"dataGaLocation":25},"/sales/","talk to sales",{"text":359,"config":360},"Support portal",{"href":361,"dataGaName":362,"dataGaLocation":25},"https://support.gitlab.com/hc/en-us","support portal",{"text":364,"config":365},"Customer portal",{"href":366,"dataGaName":367,"dataGaLocation":25},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":369,"login":370,"suggestions":377},"Close",{"text":371,"link":372},"To search repositories and projects, login to",{"text":373,"config":374},"gitlab.com",{"href":39,"dataGaName":375,"dataGaLocation":376},"search login","search",{"text":378,"default":379},"Suggestions",[380,382,386,388,392,396],{"text":56,"config":381},{"href":61,"dataGaName":56,"dataGaLocation":376},{"text":383,"config":384},"Code Suggestions (AI)",{"href":385,"dataGaName":383,"dataGaLocation":376},"/solutions/code-suggestions/",{"text":92,"config":387},{"href":94,"dataGaName":92,"dataGaLocation":376},{"text":389,"config":390},"GitLab on AWS",{"href":391,"dataGaName":389,"dataGaLocation":376},"/partners/technology-partners/aws/",{"text":393,"config":394},"GitLab on Google Cloud",{"href":395,"dataGaName":393,"dataGaLocation":376},"/partners/technology-partners/google-cloud-platform/",{"text":397,"config":398},"Why GitLab?",{"href":69,"dataGaName":397,"dataGaLocation":376},{"freeTrial":400,"mobileIcon":405,"desktopIcon":410,"secondaryButton":413},{"text":401,"config":402},"Start free trial",{"href":403,"dataGaName":30,"dataGaLocation":404},"https://gitlab.com/-/trials/new/","nav",{"altText":406,"config":407},"Gitlab Icon",{"src":408,"dataGaName":409,"dataGaLocation":404},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":406,"config":411},{"src":412,"dataGaName":409,"dataGaLocation":404},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":414,"config":415},"Get Started",{"href":416,"dataGaName":417,"dataGaLocation":404},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":419,"mobileIcon":423,"desktopIcon":425},{"text":420,"config":421},"Learn more about GitLab Duo",{"href":61,"dataGaName":422,"dataGaLocation":404},"gitlab duo",{"altText":406,"config":424},{"src":408,"dataGaName":409,"dataGaLocation":404},{"altText":406,"config":426},{"src":412,"dataGaName":409,"dataGaLocation":404},{"button":428,"mobileIcon":433,"desktopIcon":435},{"text":429,"config":430},"/switch",{"href":431,"dataGaName":432,"dataGaLocation":404},"#contact","switch",{"altText":406,"config":434},{"src":408,"dataGaName":409,"dataGaLocation":404},{"altText":406,"config":436},{"src":437,"dataGaName":409,"dataGaLocation":404},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":439,"mobileIcon":444,"desktopIcon":446},{"text":440,"config":441},"Back to pricing",{"href":174,"dataGaName":442,"dataGaLocation":404,"icon":443},"back to pricing","GoBack",{"altText":406,"config":445},{"src":408,"dataGaName":409,"dataGaLocation":404},{"altText":406,"config":447},{"src":412,"dataGaName":409,"dataGaLocation":404},{"title":449,"titleMobile":450,"button":451,"config":456},"Duo Agent Platform delivers 400% ROI, per new Forrester Consulting study.","400% ROI: Forrester TEI for GitLab Duo",{"text":67,"config":452},{"href":453,"dataGaName":454,"dataGaLocation":455},"https://about.gitlab.com/blog/gitlab-duo-agent-platform-delivers-400-percent-roi/","forrester-tei-dap-banner","global-banner",{"layout":457,"disabled":458},"release",false,{"data":460},{"text":461,"source":462,"edit":468,"contribute":473,"config":478,"items":483,"minimal":693},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":463,"config":464},"View page source",{"href":465,"dataGaName":466,"dataGaLocation":467},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":469,"config":470},"Edit this page",{"href":471,"dataGaName":472,"dataGaLocation":467},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":474,"config":475},"Please contribute",{"href":476,"dataGaName":477,"dataGaLocation":467},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":479,"facebook":480,"youtube":481,"linkedin":482},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[484,531,585,629,661],{"title":172,"links":485,"subMenu":500},[486,490,495],{"text":487,"config":488},"View plans",{"href":174,"dataGaName":489,"dataGaLocation":467},"view plans",{"text":491,"config":492},"Why Premium?",{"href":493,"dataGaName":494,"dataGaLocation":467},"/pricing/premium/","why premium",{"text":496,"config":497},"Why Ultimate?",{"href":498,"dataGaName":499,"dataGaLocation":467},"/pricing/ultimate/","why ultimate",[501],{"title":502,"links":503},"Contact Us",[504,507,509,511,516,521,526],{"text":505,"config":506},"Contact sales",{"href":356,"dataGaName":35,"dataGaLocation":467},{"text":359,"config":508},{"href":361,"dataGaName":362,"dataGaLocation":467},{"text":364,"config":510},{"href":366,"dataGaName":367,"dataGaLocation":467},{"text":512,"config":513},"Status",{"href":514,"dataGaName":515,"dataGaLocation":467},"https://status.gitlab.com/","status",{"text":517,"config":518},"Terms of use",{"href":519,"dataGaName":520,"dataGaLocation":467},"/terms/","terms of use",{"text":522,"config":523},"Privacy statement",{"href":524,"dataGaName":525,"dataGaLocation":467},"/privacy/","privacy statement",{"text":527,"config":528},"Cookie preferences",{"dataGaName":529,"dataGaLocation":467,"id":530,"isOneTrustButton":13},"cookie preferences","ot-sdk-btn",{"title":72,"links":532,"subMenu":541},[533,537],{"text":534,"config":535},"DevSecOps platform",{"href":54,"dataGaName":536,"dataGaLocation":467},"devsecops platform",{"text":538,"config":539},"AI-Assisted Development",{"href":61,"dataGaName":540,"dataGaLocation":467},"ai-assisted development",[542],{"title":543,"links":544},"Topics",[545,550,555,560,565,570,575,580],{"text":546,"config":547},"CICD",{"href":548,"dataGaName":549,"dataGaLocation":467},"/topics/ci-cd/","cicd",{"text":551,"config":552},"GitOps",{"href":553,"dataGaName":554,"dataGaLocation":467},"/topics/gitops/","gitops",{"text":556,"config":557},"DevOps",{"href":558,"dataGaName":559,"dataGaLocation":467},"/topics/devops/","devops",{"text":561,"config":562},"Version Control",{"href":563,"dataGaName":564,"dataGaLocation":467},"/topics/version-control/","version control",{"text":566,"config":567},"DevSecOps",{"href":568,"dataGaName":569,"dataGaLocation":467},"/topics/devsecops/","devsecops",{"text":571,"config":572},"Cloud Native",{"href":573,"dataGaName":574,"dataGaLocation":467},"/topics/cloud-native/","cloud native",{"text":576,"config":577},"AI for Coding",{"href":578,"dataGaName":579,"dataGaLocation":467},"/topics/devops/ai-for-coding/","ai for coding",{"text":581,"config":582},"Agentic AI",{"href":583,"dataGaName":584,"dataGaLocation":467},"/topics/agentic-ai/","agentic ai",{"title":586,"links":587},"Solutions",[588,590,592,597,601,604,608,611,613,616,619,624],{"text":116,"config":589},{"href":111,"dataGaName":116,"dataGaLocation":467},{"text":105,"config":591},{"href":88,"dataGaName":89,"dataGaLocation":467},{"text":593,"config":594},"Agile development",{"href":595,"dataGaName":596,"dataGaLocation":467},"/solutions/agile-delivery/","agile delivery",{"text":598,"config":599},"SCM",{"href":101,"dataGaName":600,"dataGaLocation":467},"source code management",{"text":546,"config":602},{"href":94,"dataGaName":603,"dataGaLocation":467},"continuous integration & delivery",{"text":605,"config":606},"Value stream management",{"href":144,"dataGaName":607,"dataGaLocation":467},"value stream management",{"text":551,"config":609},{"href":610,"dataGaName":554,"dataGaLocation":467},"/solutions/gitops/",{"text":154,"config":612},{"href":157,"dataGaName":158,"dataGaLocation":467},{"text":614,"config":615},"Small business",{"href":163,"dataGaName":164,"dataGaLocation":467},{"text":617,"config":618},"Public sector",{"href":169,"dataGaName":170,"dataGaLocation":467},{"text":620,"config":621},"Education",{"href":622,"dataGaName":623,"dataGaLocation":467},"/solutions/education/","education",{"text":625,"config":626},"Financial services",{"href":627,"dataGaName":628,"dataGaLocation":467},"/solutions/finance/","financial services",{"title":177,"links":630},[631,633,635,637,640,642,645,647,649,651,653,655,657,659],{"text":190,"config":632},{"href":192,"dataGaName":193,"dataGaLocation":467},{"text":195,"config":634},{"href":197,"dataGaName":198,"dataGaLocation":467},{"text":200,"config":636},{"href":202,"dataGaName":203,"dataGaLocation":467},{"text":205,"config":638},{"href":207,"dataGaName":639,"dataGaLocation":467},"docs",{"text":228,"config":641},{"href":230,"dataGaName":231,"dataGaLocation":467},{"text":643,"config":644},"What's new",{"href":288,"dataGaName":289,"dataGaLocation":467},{"text":223,"config":646},{"href":225,"dataGaName":226,"dataGaLocation":467},{"text":242,"config":648},{"href":244,"dataGaName":245,"dataGaLocation":467},{"text":250,"config":650},{"href":252,"dataGaName":253,"dataGaLocation":467},{"text":255,"config":652},{"href":257,"dataGaName":258,"dataGaLocation":467},{"text":260,"config":654},{"href":262,"dataGaName":263,"dataGaLocation":467},{"text":265,"config":656},{"href":267,"dataGaName":268,"dataGaLocation":467},{"text":270,"config":658},{"href":272,"dataGaName":273,"dataGaLocation":467},{"text":275,"config":660},{"href":277,"dataGaName":278,"dataGaLocation":467},{"title":291,"links":662},[663,665,667,669,671,673,677,682,684,686,688],{"text":299,"config":664},{"href":301,"dataGaName":293,"dataGaLocation":467},{"text":304,"config":666},{"href":306,"dataGaName":307,"dataGaLocation":467},{"text":312,"config":668},{"href":314,"dataGaName":315,"dataGaLocation":467},{"text":317,"config":670},{"href":319,"dataGaName":320,"dataGaLocation":467},{"text":322,"config":672},{"href":324,"dataGaName":325,"dataGaLocation":467},{"text":674,"config":675},"Sustainability",{"href":676,"dataGaName":674,"dataGaLocation":467},"/sustainability/",{"text":678,"config":679},"Diversity, inclusion and belonging (DIB)",{"href":680,"dataGaName":681,"dataGaLocation":467},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":327,"config":683},{"href":329,"dataGaName":330,"dataGaLocation":467},{"text":337,"config":685},{"href":339,"dataGaName":340,"dataGaLocation":467},{"text":342,"config":687},{"href":344,"dataGaName":345,"dataGaLocation":467},{"text":689,"config":690},"Modern Slavery Transparency Statement",{"href":691,"dataGaName":692,"dataGaLocation":467},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":694},[695,698,701],{"text":696,"config":697},"Terms",{"href":519,"dataGaName":520,"dataGaLocation":467},{"text":699,"config":700},"Cookies",{"dataGaName":529,"dataGaLocation":467,"id":530,"isOneTrustButton":13},{"text":702,"config":703},"Privacy",{"href":524,"dataGaName":525,"dataGaLocation":467},2371,[706,712,716,722,729,735,741,747,753,759,764,769,775,781,786,792,798,803,809,813,816,821,826,830,835,842,848,851,856,860,865,871,877,881,887,892,898,903,906,910],{"title":707,"date":708,"authors":709,"slug":711,"externalUrl":6},"Automating container image migration from Amazon ECR to GitLab","2025-02-13",[710],"Tim Rizzi","automating-container-image-migration-from-amazon-ecr-to-gitlab",{"title":713,"date":714,"authors":6,"slug":5,"externalUrl":715},"GitLab Patch Release: 17.8.2, 17.7.4, 17.6.5","2025-02-12","https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-8-2-released/",{"title":717,"date":718,"authors":719,"slug":721,"externalUrl":6},"Getting started with GitLab: Mastering project management","2025-02-11",[720],"GitLab","getting-started-with-gitlab-mastering-project-management",{"title":723,"date":724,"authors":725,"slug":728,"externalUrl":6},"How to scan a full commit history to detect sensitive secrets","2025-02-06",[726,727],"Noah Ing","Jerez Solis","how-to-scan-a-full-commit-history-to-detect-sensitive-secrets",{"title":730,"date":731,"authors":732,"slug":734,"externalUrl":6},"Tutorial: Security scanning in air-gapped environments","2025-02-05",[733],"Fernando Diaz","tutorial-security-scanning-in-air-gapped-environments",{"title":736,"date":737,"authors":738,"slug":740,"externalUrl":6},"How to harmonize Agile sprints with product roadmaps","2025-02-04",[739],"Amanda Rueda","how-to-harmonize-agile-sprints-with-product-roadmaps",{"title":742,"date":743,"authors":744,"slug":746,"externalUrl":6},"The Co-Create Program: How customers are collaborating to build GitLab","2025-01-30",[745],"Fatima Sarah Khalid","the-co-create-program-how-customers-are-collaborating-to-build-gitlab",{"title":748,"date":743,"authors":749,"slug":752,"externalUrl":6},"How GitLab uses prompt guardrails to help protect customers",[750,751],"David O'Regan","Roger Woo","how-gitlab-uses-prompt-guardrails-to-help-protect-customers",{"title":754,"date":755,"authors":756,"slug":758,"externalUrl":6},"Improve security auditing with GitLab Operational Container Scanning","2025-01-29",[757],"Daniel Helfand","improve-security-auditing-with-gitlab-operational-container-scanning",{"title":760,"date":755,"authors":761,"slug":763,"externalUrl":6},"Improve AI security in GitLab with composite identities",[762],"Grzegorz Bizon","improve-ai-security-in-gitlab-with-composite-identities",{"title":765,"date":755,"authors":766,"slug":768,"externalUrl":6},"Automating cybersecurity threat detections with GitLab CI/CD",[767],"Mitra Jozenazemian","automating-cybersecurity-threat-detections-with-gitlab-ci-cd",{"title":770,"date":771,"authors":772,"slug":774,"externalUrl":6},"Getting started with GitLab: How to import your projects to GitLab","2025-01-28",[773],"Abubakar Siddiq Ango","getting-started-with-gitlab-how-to-import-your-projects-to-gitlab",{"title":776,"date":771,"authors":777,"slug":780,"externalUrl":6},"From code to production: A guide to continuous deployment with GitLab",[778,779],"Benjamin Skierlak","James Wormwell","from-code-to-production-a-guide-to-continuous-deployment-with-gitlab",{"title":782,"date":771,"authors":783,"slug":785,"externalUrl":6},"Deploy a server using Go with GitLab + Google Cloud",[784,726],"Claire Champernowne","deploy-a-server-using-go-with-gitlab-google-cloud",{"title":787,"date":788,"authors":789,"slug":791,"externalUrl":6},"Secure, compliant, and AI-powered: Get to know 3 new GitLab features","2025-01-27",[790],"Jessica Hurwitz","secure-compliant-and-ai-powered-get-to-know-3-new-gitlab-features",{"title":793,"date":794,"authors":795,"slug":797,"externalUrl":6},"How-to: GitLab Single Sign-on with SAML, SCIM, and Azure’s Entra ID","2025-01-23",[796],"Rob Jackson","how-to-gitlab-single-sign-on-with-saml-scim-and-azures-entra-id",{"title":799,"date":794,"authors":800,"slug":802,"externalUrl":6},"Hosted runners for GitLab Dedicated: Now in limited availability",[801],"Gabriel Engel","hosted-runners-for-gitlab-dedicated-now-in-limited-availability",{"title":804,"date":805,"authors":806,"slug":808,"externalUrl":6},"Tutorial: Advanced use case for GitLab Pipeline Execution Policies","2025-01-22",[807],"Dan Rabinovitz","tutorial-advanced-use-case-for-gitlab-pipeline-execution-policies",{"title":810,"date":805,"authors":811,"slug":812,"externalUrl":6},"Guide to fulfilling SOC 2 security requirements with GitLab",[733],"guide-to-fulfilling-soc-2-security-requirements-with-gitlab",{"title":814,"date":805,"authors":6,"slug":5,"externalUrl":815},"GitLab Patch Release: 17.8.1, 17.7.3, 17.6.4","https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-8-1-released/",{"title":817,"date":818,"authors":819,"slug":820,"externalUrl":6},"Secure and publish Python packages: A guide to CI integration","2025-01-21",[710],"secure-and-publish-python-packages-a-guide-to-ci-integration",{"title":822,"date":818,"authors":823,"slug":825,"externalUrl":6},"Introducing GitLab Advanced Vulnerability Tracking",[824],"Julian Thome","introducing-gitlab-advanced-vulnerability-tracking",{"title":827,"date":828,"authors":6,"slug":5,"externalUrl":829},"GitLab 17.8 released","2025-01-16","https://docs.gitlab.com/releases/17/gitlab-17-8-released/",{"title":831,"date":828,"authors":832,"slug":834,"externalUrl":6},"DevSecOps + Agentic AI: Now on GitLab Self-Managed Ultimate on AWS",[833],"Jackie Porter","devsecops-agentic-ai-now-on-gitlab-self-managed-ultimate-on-aws",{"title":836,"date":837,"authors":838,"slug":841,"externalUrl":6},"What the Digital Operational Resilience Act means for banks","2025-01-15",[839,840],"Joshua Carroll","Allie Holland","what-the-digital-operational-resilience-act-means-for-banks",{"title":843,"date":837,"authors":844,"slug":847,"externalUrl":6},"Google Cloud integrations for secure Cloud Run deployments at GitLab",[845,846],"Regnard Raquedan","Matt Genelin","google-cloud-integrations-for-secure-cloud-run-deployments-at-gitlab",{"title":849,"date":837,"authors":6,"slug":5,"externalUrl":850},"GitLab Patch Release: 17.7.2","https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-7-2-released/",{"title":852,"date":853,"authors":854,"slug":855,"externalUrl":6},"Getting started with GitLab: How to manage users","2025-01-14",[773],"getting-started-with-gitlab-how-to-manage-users",{"title":857,"date":858,"authors":6,"slug":5,"externalUrl":859},"AI trends for 2025: Agentic AI, self-hosted models, and more","2025-01-13","https://about.gitlab.com/the-source/ai/ai-trends-for-2025-agentic-ai-self-hosted-models-and-more/",{"title":861,"date":858,"authors":862,"slug":864,"externalUrl":6},"Deploy a NodeJS Express app with GitLab's Cloud Run integration",[863,726],"Sarah Matthies","deploy-a-nodejs-express-app-with-gitlabs-cloud-run-integration",{"title":866,"date":867,"authors":868,"slug":870,"externalUrl":6},"What’s new in Git 2.48.0?","2025-01-10",[869],"Christian Couder","whats-new-in-git-2-48-0",{"title":872,"date":873,"authors":874,"slug":876,"externalUrl":6},"GitLab supports banks in navigating regulatory challenges","2025-01-09",[875,840],"George Kichukov","gitlab-supports-banks-in-navigating-regulatory-challenges",{"title":878,"date":879,"authors":6,"slug":5,"externalUrl":880},"GitLab Patch Release: 17.7.1, 17.6.3, 17.5.5","2025-01-08","https://docs.gitlab.com/releases/patches/patch-release-gitlab-17-7-1-released/",{"title":882,"date":883,"authors":884,"slug":886,"externalUrl":6},"Streamline the path to CMMC Level 2 compliance with GitLab","2025-01-07",[885],"Joseph Longo","streamline-the-path-to-cmmc-level-2-compliance-with-gitlab",{"title":888,"date":883,"authors":889,"slug":891,"externalUrl":6},"Reduce supply chain risk with smarter vulnerability prioritization",[890],"Salman Ladha","reduce-supply-chain-risk-with-smarter-vulnerability-prioritization",{"title":893,"date":894,"authors":895,"slug":897,"externalUrl":6},"Ultimate guide to CI/CD: Fundamentals to advanced implementation","2025-01-06",[896],"Sandra Gittlen","ultimate-guide-to-ci-cd-fundamentals-to-advanced-implementation",{"title":899,"date":894,"authors":900,"slug":902,"externalUrl":6},"GitLab's 2024 bug bounty year in review",[901],"Ottilia Westerlund","gitlabs-2024-bug-bounty-year-in-review",{"title":904,"date":894,"authors":6,"slug":5,"externalUrl":905},"Overcome AI sprawl with a Value Stream Management approach","https://about.gitlab.com/the-source/ai/overcome-ai-sprawl-with-a-value-stream-management-approach/",{"title":907,"date":908,"authors":6,"slug":5,"externalUrl":909},"GitLab 17.7 released","2024-12-19","https://docs.gitlab.com/releases/17/gitlab-17-7-released/",{"title":911,"date":912,"authors":913,"slug":915,"externalUrl":6},"5 GitLab Premium features to help your team scale","2024-12-18",[914],"Julie Griffin","5-gitlab-premium-features-to-help-your-team-scale",1786803780268]