[{"data":1,"prerenderedAt":997},["ShallowReactive",2],{"/en-us/blog/tags/aws":3,"navigation-en-us":19,"banner-en-us":419,"footer-en-us":429,"AWS-tag-posts-en-us":671},{"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/aws.yml","Aws",null,{"template":8},"BlogTag",{"tag":10,"tagSlug":11},"AWS","aws","yml",{},true,"/en-us/blog/tags/aws",{},"en-us/blog/tags/aws","bxnDsWEqbLQT3yCO-ie0F9tbZhR0jcI9b_pq3YH86sE",{"data":20},{"logo":21,"freeTrial":26,"sales":31,"login":36,"items":41,"search":349,"minimal":380,"duo":399,"pricingDeployment":409},{"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/compare/gitlab-vs-github/","get started",{"freeTrial":400,"mobileIcon":405,"desktopIcon":407},{"text":401,"config":402},"Learn more about GitLab Duo",{"href":403,"dataGaName":404,"dataGaLocation":385},"/gitlab-duo/","gitlab duo",{"altText":387,"config":406},{"src":389,"dataGaName":390,"dataGaLocation":385},{"altText":387,"config":408},{"src":393,"dataGaName":390,"dataGaLocation":385},{"freeTrial":410,"mobileIcon":415,"desktopIcon":417},{"text":411,"config":412},"Back to pricing",{"href":167,"dataGaName":413,"dataGaLocation":385,"icon":414},"back to pricing","GoBack",{"altText":387,"config":416},{"src":389,"dataGaName":390,"dataGaLocation":385},{"altText":387,"config":418},{"src":393,"dataGaName":390,"dataGaLocation":385},{"title":420,"button":421,"config":426},"See how agentic AI transforms software delivery",{"text":422,"config":423},"Watch GitLab Transcend now",{"href":424,"dataGaName":425,"dataGaLocation":25},"/events/transcend/virtual/","transcend event",{"layout":427,"icon":428},"release","AiStar",{"data":430},{"text":431,"source":432,"edit":438,"contribute":443,"config":448,"items":453,"minimal":660},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":433,"config":434},"View page source",{"href":435,"dataGaName":436,"dataGaLocation":437},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":439,"config":440},"Edit this page",{"href":441,"dataGaName":442,"dataGaLocation":437},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":444,"config":445},"Please contribute",{"href":446,"dataGaName":447,"dataGaLocation":437},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":449,"facebook":450,"youtube":451,"linkedin":452},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[454,501,555,599,626],{"title":165,"links":455,"subMenu":470},[456,460,465],{"text":457,"config":458},"View plans",{"href":167,"dataGaName":459,"dataGaLocation":437},"view plans",{"text":461,"config":462},"Why Premium?",{"href":463,"dataGaName":464,"dataGaLocation":437},"/pricing/premium/","why premium",{"text":466,"config":467},"Why Ultimate?",{"href":468,"dataGaName":469,"dataGaLocation":437},"/pricing/ultimate/","why ultimate",[471],{"title":472,"links":473},"Contact Us",[474,477,479,481,486,491,496],{"text":475,"config":476},"Contact sales",{"href":34,"dataGaName":35,"dataGaLocation":437},{"text":340,"config":478},{"href":342,"dataGaName":343,"dataGaLocation":437},{"text":345,"config":480},{"href":347,"dataGaName":348,"dataGaLocation":437},{"text":482,"config":483},"Status",{"href":484,"dataGaName":485,"dataGaLocation":437},"https://status.gitlab.com/","status",{"text":487,"config":488},"Terms of use",{"href":489,"dataGaName":490,"dataGaLocation":437},"/terms/","terms of use",{"text":492,"config":493},"Privacy statement",{"href":494,"dataGaName":495,"dataGaLocation":437},"/privacy/","privacy statement",{"text":497,"config":498},"Cookie preferences",{"dataGaName":499,"dataGaLocation":437,"id":500,"isOneTrustButton":14},"cookie preferences","ot-sdk-btn",{"title":70,"links":502,"subMenu":511},[503,507],{"text":504,"config":505},"DevSecOps platform",{"href":52,"dataGaName":506,"dataGaLocation":437},"devsecops platform",{"text":508,"config":509},"AI-Assisted Development",{"href":403,"dataGaName":510,"dataGaLocation":437},"ai-assisted development",[512],{"title":513,"links":514},"Topics",[515,520,525,530,535,540,545,550],{"text":516,"config":517},"CICD",{"href":518,"dataGaName":519,"dataGaLocation":437},"/topics/ci-cd/","cicd",{"text":521,"config":522},"GitOps",{"href":523,"dataGaName":524,"dataGaLocation":437},"/topics/gitops/","gitops",{"text":526,"config":527},"DevOps",{"href":528,"dataGaName":529,"dataGaLocation":437},"/topics/devops/","devops",{"text":531,"config":532},"Version Control",{"href":533,"dataGaName":534,"dataGaLocation":437},"/topics/version-control/","version control",{"text":536,"config":537},"DevSecOps",{"href":538,"dataGaName":539,"dataGaLocation":437},"/topics/devsecops/","devsecops",{"text":541,"config":542},"Cloud Native",{"href":543,"dataGaName":544,"dataGaLocation":437},"/topics/cloud-native/","cloud native",{"text":546,"config":547},"AI for Coding",{"href":548,"dataGaName":549,"dataGaLocation":437},"/topics/devops/ai-for-coding/","ai for coding",{"text":551,"config":552},"Agentic AI",{"href":553,"dataGaName":554,"dataGaLocation":437},"/topics/agentic-ai/","agentic ai",{"title":556,"links":557},"Solutions",[558,560,562,567,571,574,578,581,583,586,589,594],{"text":112,"config":559},{"href":107,"dataGaName":112,"dataGaLocation":437},{"text":101,"config":561},{"href":84,"dataGaName":85,"dataGaLocation":437},{"text":563,"config":564},"Agile development",{"href":565,"dataGaName":566,"dataGaLocation":437},"/solutions/agile-delivery/","agile delivery",{"text":568,"config":569},"SCM",{"href":97,"dataGaName":570,"dataGaLocation":437},"source code management",{"text":516,"config":572},{"href":90,"dataGaName":573,"dataGaLocation":437},"continuous integration & delivery",{"text":575,"config":576},"Value stream management",{"href":140,"dataGaName":577,"dataGaLocation":437},"value stream management",{"text":521,"config":579},{"href":580,"dataGaName":524,"dataGaLocation":437},"/solutions/gitops/",{"text":150,"config":582},{"href":152,"dataGaName":153,"dataGaLocation":437},{"text":584,"config":585},"Small business",{"href":157,"dataGaName":158,"dataGaLocation":437},{"text":587,"config":588},"Public sector",{"href":162,"dataGaName":163,"dataGaLocation":437},{"text":590,"config":591},"Education",{"href":592,"dataGaName":593,"dataGaLocation":437},"/solutions/education/","education",{"text":595,"config":596},"Financial services",{"href":597,"dataGaName":598,"dataGaLocation":437},"/solutions/finance/","financial services",{"title":170,"links":600},[601,603,605,607,610,612,614,616,618,620,622,624],{"text":182,"config":602},{"href":184,"dataGaName":185,"dataGaLocation":437},{"text":187,"config":604},{"href":189,"dataGaName":190,"dataGaLocation":437},{"text":192,"config":606},{"href":194,"dataGaName":195,"dataGaLocation":437},{"text":197,"config":608},{"href":199,"dataGaName":609,"dataGaLocation":437},"docs",{"text":220,"config":611},{"href":222,"dataGaName":223,"dataGaLocation":437},{"text":215,"config":613},{"href":217,"dataGaName":218,"dataGaLocation":437},{"text":225,"config":615},{"href":227,"dataGaName":228,"dataGaLocation":437},{"text":233,"config":617},{"href":235,"dataGaName":236,"dataGaLocation":437},{"text":238,"config":619},{"href":240,"dataGaName":241,"dataGaLocation":437},{"text":243,"config":621},{"href":245,"dataGaName":246,"dataGaLocation":437},{"text":248,"config":623},{"href":250,"dataGaName":251,"dataGaLocation":437},{"text":253,"config":625},{"href":255,"dataGaName":256,"dataGaLocation":437},{"title":271,"links":627},[628,630,632,634,636,638,640,644,649,651,653,655],{"text":278,"config":629},{"href":280,"dataGaName":273,"dataGaLocation":437},{"text":283,"config":631},{"href":285,"dataGaName":286,"dataGaLocation":437},{"text":291,"config":633},{"href":293,"dataGaName":294,"dataGaLocation":437},{"text":296,"config":635},{"href":298,"dataGaName":299,"dataGaLocation":437},{"text":301,"config":637},{"href":303,"dataGaName":304,"dataGaLocation":437},{"text":306,"config":639},{"href":308,"dataGaName":309,"dataGaLocation":437},{"text":641,"config":642},"Sustainability",{"href":643,"dataGaName":641,"dataGaLocation":437},"/sustainability/",{"text":645,"config":646},"Diversity, inclusion and belonging (DIB)",{"href":647,"dataGaName":648,"dataGaLocation":437},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":311,"config":650},{"href":313,"dataGaName":314,"dataGaLocation":437},{"text":321,"config":652},{"href":323,"dataGaName":324,"dataGaLocation":437},{"text":326,"config":654},{"href":328,"dataGaName":329,"dataGaLocation":437},{"text":656,"config":657},"Modern Slavery Transparency Statement",{"href":658,"dataGaName":659,"dataGaLocation":437},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":661},[662,665,668],{"text":663,"config":664},"Terms",{"href":489,"dataGaName":490,"dataGaLocation":437},{"text":666,"config":667},"Cookies",{"dataGaName":499,"dataGaLocation":437,"id":500,"isOneTrustButton":14},{"text":669,"config":670},"Privacy",{"href":494,"dataGaName":495,"dataGaLocation":437},[672,683,694,702,710,719,728,737,748,757,765,779,788,797,807,816,826,838,847,857,866,875,885,894,907,917,917,927,937,948,958,967,977,987],{"content":673,"config":681},{"title":674,"heroImage":675,"category":676,"description":677,"authors":678,"date":680},"Modernize Java applications quickly with GitLab Duo with Amazon Q","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659604/Blog/Hero%20Images/Screenshot_2024-11-27_at_4.55.28_PM.png","ai-ml","Transform legacy Java 8 applications to Java 17 in minutes instead of weeks using AI-powered automation.",[679],"Cesar Saavedra","2025-10-22",{"slug":682,"externalUrl":-1},"modernize-java-applications-quickly-with-gitlab-duo-with-amazon-q",{"content":684,"config":692},{"title":685,"heroImage":686,"category":676,"description":687,"authors":688,"date":691},"Own your AI: Self-Hosted GitLab Duo models with AWS Bedrock","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098682/Blog/Hero%20Images/Blog/Hero%20Images/duo-blog-post_1Cy89R1pY8OMwyrgSB525O_1750098682075.png","Discover how to leverage AI while maintaining control over your data, infrastructure, and security posture.",[689,690],"Chloe Cartron","Olivier Dupré","2025-08-07",{"slug":693,"externalUrl":-1},"gitlab-duo-self-hosted-models-on-aws-bedrock",{"content":695,"config":700},{"title":696,"heroImage":675,"category":676,"description":697,"authors":698,"date":699},"Enhance application quality with AI-powered test generation","Learn how GitLab Duo with Amazon Q improves the QA process by automatically generating comprehensive unit tests.",[679],"2025-07-03",{"slug":701,"externalUrl":-1},"enhance-application-quality-with-ai-powered-test-generation",{"content":703,"config":708},{"title":704,"heroImage":675,"category":676,"description":705,"authors":706,"date":707},"Speed up code reviews: Let AI handle the feedback implementation","Discover how GitLab Duo with Amazon Q automates the implementation of code review feedback through AI, transforming a time-consuming manual process into a streamlined workflow.",[679],"2025-06-10",{"slug":709,"externalUrl":-1},"speed-up-code-reviews-let-ai-handle-the-feedback-implementation",{"content":711,"config":717},{"title":712,"heroImage":713,"category":676,"description":714,"authors":715,"date":716},"Accelerate code reviews with GitLab Duo and Amazon Q","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750096976/Blog/Hero%20Images/Blog/Hero%20Images/Screenshot%202024-11-27%20at%204.55.28%E2%80%AFPM_4VVz6DgGBOvbGY8BUmd068_1750096975734.png","Use AI-powered agents to optimize code reviews by automatically analyzing merge requests and providing comprehensive feedback on bugs, readability, and coding standards.",[679],"2025-06-02",{"slug":718,"externalUrl":-1},"accelerate-code-reviews-with-gitlab-duo-and-amazon-q",{"content":720,"config":726},{"title":721,"heroImage":722,"category":676,"description":723,"authors":724,"date":725},"GitLab Duo + Amazon Q: Transform ideas into code in minutes","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097127/Blog/Hero%20Images/Blog/Hero%20Images/Screenshot%202024-11-27%20at%204.55.28%E2%80%AFPM_4VVz6DgGBOvbGY8BUmd068_1750097126673.png","The new GitLab Duo with Amazon Q integration analyzes your issue descriptions and automatically generates complete working code solutions, accelerating development workflows.",[679],"2025-04-28",{"slug":727,"externalUrl":-1},"gitlab-duo-amazon-q-transform-ideas-into-code-in-minutes",{"content":729,"config":735},{"title":730,"heroImage":675,"category":676,"description":731,"authors":732,"date":734},"GitLab Duo with Amazon Q: Agentic AI optimized for AWS generally available","The comprehensive AI-powered DevSecOps platform combined with the deepest set of cloud computing capabilities speeds dev cycles, increases automation, and improves code quality.",[733],"Emilio Salvador","2025-04-17",{"slug":736,"externalUrl":-1},"gitlab-duo-with-amazon-q-agentic-ai-optimized-for-aws",{"content":738,"config":746},{"title":739,"heroImage":740,"category":741,"description":742,"authors":743,"date":745},"Automating container image migration from Amazon ECR to GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663129/Blog/Hero%20Images/blog-image-template-1800x945__28_.png","engineering","When platform teams move their CI/CD to GitLab, migrating container images shouldn't be the bottleneck. Follow this step-by-step guide to automate the pipeline migration process.",[744],"Tim Rizzi","2025-02-13",{"slug":747,"externalUrl":-1},"automating-container-image-migration-from-amazon-ecr-to-gitlab",{"content":749,"config":755},{"title":750,"heroImage":675,"category":676,"description":751,"authors":752,"date":754},"DevSecOps + Agentic AI: Now on GitLab Self-Managed Ultimate on AWS","Start using AI-powered, DevSecOps-enhanced agents in your AWS GitLab Self-Managed Ultimate instance. Enjoy the benefits of GitLab Duo and Amazon Q in your organization.",[753],"Jackie Porter","2025-01-16",{"slug":756,"externalUrl":-1},"devsecops-agentic-ai-now-on-gitlab-self-managed-ultimate-on-aws",{"content":758,"config":763},{"title":759,"heroImage":675,"category":676,"description":760,"authors":761,"date":762},"GitLab Duo with Amazon Q: DevSecOps meets agentic AI","AI-powered DevSecOps enhanced with autonomous AI agents accelerates developer productivity, application modernization, and innovation.",[733],"2024-12-03",{"slug":764,"externalUrl":-1},"gitlab-duo-with-amazon-q-devsecops-meets-agentic-ai",{"content":766,"config":777},{"title":767,"heroImage":768,"category":769,"description":770,"authors":771,"date":776},"Ultimate guide to migrating from AWS CodeCommit to GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097810/Blog/Hero%20Images/Blog/Hero%20Images/blog-image-template-1800x945%20%2828%29_4mi0l4wzUa5VI4wtf8gInx_1750097810027.png","product","Learn how to migrate from AWS Services to GitLab and seamlessly integrate with the DevSecOps platform in this comprehensive tutorial.",[772,773,774,775],"Tsukasa Komatsubara","Darwin Sanoy","Samer Akkoub","Bart Zhang","2024-08-26",{"slug":778,"externalUrl":-1},"ultimate-guide-to-migrating-from-aws-codecommit-to-gitlab",{"content":780,"config":786},{"title":781,"heroImage":782,"category":539,"description":783,"authors":784,"date":785},"GitLab is now available as an AWS CodeStar Connections provider","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098884/Blog/Hero%20Images/Blog/Hero%20Images/AdobeStock_397632156_3Ldy1urjMStQCl4qnOBvE0_1750098884409.jpg","AWS released native CodePipeline integration for GitLab projects and repos, helping to ensure a best-in-class experience when using GitLab and AWS together.",[773],"2024-01-11",{"slug":787,"externalUrl":-1},"gitlab-is-now-available-as-an-aws-codestar-connections-provider",{"content":789,"config":795},{"title":790,"heroImage":791,"category":539,"description":792,"authors":793,"date":794},"GitLab at AWS re:Invent 2023","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664472/Blog/Hero%20Images/gitlabflatlogomap.png","GitLab and AWS have streamlined development and security for DevSecOps teams. Learn how in lightning talks, sessions, live demos, and more.",[773],"2023-11-22",{"slug":796,"externalUrl":-1},"gitlab-at-aws-re-invent-2023",{"content":798,"config":805},{"title":799,"heroImage":800,"category":741,"description":801,"authors":802,"date":804},"Speed up API and microservices delivery with Microcks and GitLab - Part 1","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749683021/Blog/Hero%20Images/lightsticks.png","Learn how to configure Microcks for GitLab and what the use cases are for this open source Kubernetes-native tool.",[803],"Madou Coulibaly","2023-09-27",{"slug":806,"externalUrl":-1},"microcks-and-gitlab-part-one",{"content":808,"config":814},{"title":809,"heroImage":810,"category":539,"description":811,"authors":812,"date":813},"GitLab achieves the AWS DevSecOps Partner Competency Specialty","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749668799/Blog/Hero%20Images/securitylifecycle.png","The AWS DevSecOps Partner Competency Specialty demonstrates that GitLab is instrumental in helping customers implement better security while continuing to innovate.",[773],"2023-09-25",{"slug":815,"externalUrl":-1},"aws-devsecops-competency-partner",{"content":817,"config":824},{"title":818,"heroImage":819,"category":741,"description":820,"authors":821,"date":823},"How to export vulnerability reports to HTML/PDF and Jira","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662877/Blog/Hero%20Images/security-cover-new.png","With GitLab's API, it's easy to query vulnerability info and send the report details elsewhere, such as a PDF file or a Jira project.",[822],"Siddharth Mathur","2023-09-14",{"slug":825,"externalUrl":-1},"exporting-vulnerability-reports-to-html-pdf-jira",{"content":827,"config":836},{"title":828,"heroImage":829,"category":741,"description":830,"authors":831,"date":835},"Building GitLab with GitLab: How GitLab.com inspired Dedicated","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659740/Blog/Hero%20Images/building-gitlab-with-gitlab-no-type.png","Learn how the multi-tenancy SaaS solution, GitLab.com, influenced the design of the single-tenancy SaaS, GitLab Dedicated.",[832,833,834],"Andrew Newdigate","Craig Miskell","John Coghlan","2023-08-03",{"slug":837,"externalUrl":-1},"building-gitlab-with-gitlabcom-how-gitlab-inspired-dedicated",{"content":839,"config":845},{"title":840,"heroImage":841,"category":741,"description":842,"authors":843,"date":844},"Get started with GitLab EKS Fargate Runners in 1 hour and zero code, Iteration 1","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663373/Blog/Hero%20Images/jeremy-lapak-CVvFVQ_-oUg-700unsplash.jpg","This detailed tutorial answers the question of how to leverage Amazon's AWS Fargate container technology for GitLab Runners.",[773],"2023-05-24",{"slug":846,"externalUrl":-1},"eks-fargate-runner",{"content":848,"config":855},{"title":849,"heroImage":850,"category":539,"description":851,"authors":852,"date":854},"GitLab, AWS help strengthen Lockheed Martin’s digital transformation","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749668830/Blog/Hero%20Images/lockheed-martin-cover-2.jpg","Lockheed Martin’s software factory selected GitLab’s DevSecOps Platform, along with AWS, to streamline toolchains, increase collaboration, and more.",[853],"GitLab","2023-05-16",{"slug":856,"externalUrl":-1},"lockheed-martin-aws-gitlab",{"content":858,"config":864},{"title":859,"heroImage":860,"category":741,"description":861,"authors":862,"date":863},"How GitLab can eliminate the massive value stream friction of developer environment provisioning and cleanup","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682507/Blog/Hero%20Images/sandeep-singh-3KbACriapqQ-unsplash.jpg","It is important to have the complete picture of scaled effects in view when designing automation.",[773],"2022-11-17",{"slug":865,"externalUrl":-1},"environment-friction-cycle",{"content":867,"config":873},{"title":868,"heroImage":869,"category":741,"description":870,"authors":871,"date":872},"GitLab is now an Amazon Linux 2 Service Ready Partner","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682451/Blog/Hero%20Images/isis-franca-hsPFuudRg5I-unsplash.jpg","Being an Amazon Linux 2 Service Ready partner shows GitLab's strong commitment to AWS linux distributions.",[773],"2022-09-21",{"slug":874,"externalUrl":-1},"amazon-linux-2-service-ready-partner",{"content":876,"config":883},{"title":877,"heroImage":878,"category":879,"description":880,"authors":881,"date":882},"Amazon Linux 2 support and distro-specific packages for GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682299/Blog/Hero%20Images/gitlab-blog-banner.png","news","Learn how to do early testing as well as how to peg your automation to the EL 7 packages until you are able to properly integrate the changes into your automation.",[773],"2022-05-02",{"slug":884,"externalUrl":-1},"amazon-linux-2-support-and-distro-specific-packages",{"content":886,"config":892},{"title":887,"heroImage":888,"category":741,"description":889,"authors":890,"date":891},"How to provision Ready-To-Run GitLab for 50,000 users with the AWS Quick Start","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680619/Blog/Hero%20Images/construction-blueprint.jpg","If you have two hours, you can deploy a GitLab instance on EKS for any number of users. All it takes is about 14 clicks! Here's what you need to know.",[773],"2021-10-06",{"slug":893,"externalUrl":-1},"gitlab-cnh-for-50k-users",{"content":895,"config":905},{"title":896,"heroImage":897,"category":898,"description":899,"authors":900,"date":904},"How to write and continuously test vulnerability detection rules for SAST","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667819/Blog/Hero%20Images/anomaly-detection-cover.png","security","Interns with the Google Summer of Code helped GitLab transition from our old SAST tools to Semgrep.",[901,902,903],"Ross Fuhrman","Anshuman Singh","Julian Thome","2021-09-08",{"slug":906,"externalUrl":-1},"write-vulnerability-detection-rules",{"content":908,"config":915},{"title":909,"heroImage":910,"category":741,"description":911,"authors":912,"date":914},"How to provision 100 AWS Graviton GitLab Spot Runners in 10 Minutes for $2/hour","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669882/Blog/Hero%20Images/hundredgitlabspotrunner.png","Utilizing the GitLab HA Scaling Runner Vending Machine for AWS Automation to setup 100 GitLab runners on AWS Spot.",[773,913],"Nupur Sharma","2021-08-17",{"slug":916,"externalUrl":-1},"100-runners-in-less-than-10mins-and-less-than-10-clicks",{"content":918,"config":925},{"title":919,"heroImage":920,"category":741,"description":921,"authors":922,"date":924},"How to use Scaleway to self-host your GitLab Runners","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663397/Blog/Hero%20Images/logoforblogpost.jpg","Learn how to set up GitLab CI for your iOS and macOS projects using a hosted Mac mini M1.",[923],"Benedikt Rollik","2021-06-07",{"slug":926,"externalUrl":-1},"tuto-mac-m1-gitlab-ci",{"content":928,"config":935},{"title":929,"heroImage":930,"category":741,"description":931,"authors":932,"date":934},"How to use manual jobs with `needs:` relationships","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749683170/Blog/Hero%20Images/blog_cover2.png","Are you using manual jobs and needs relationship in your CI/CD pipeline? Learn more about the fix that might cause your pipeline to behave differently.",[933],"Dov Hershkovitch","2021-05-20",{"slug":936,"externalUrl":-1},"dag-manual-fix",{"content":938,"config":946},{"title":939,"heroImage":940,"category":941,"description":942,"authors":943,"date":945},"Why I love contributing to GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679501/Blog/Hero%20Images/new-feature.png","unfiltered","Making small meaningful changes is what it's all about.",[944],"Austin Regnery","2021-05-11",{"slug":947,"externalUrl":-1},"why-i-love-contributing-to-gitlab",{"content":949,"config":956},{"title":950,"heroImage":951,"category":741,"description":952,"authors":953,"date":955},"Five signs you should think BIGGER!","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099620/Blog/Hero%20Images/Blog/Hero%20Images/insights_insights.png_1750099620265.png","Are you a designer who is frustrated with only focusing on the next milestone? Do you feel like you have to answer too many questions in every Issue? Do you feel like your product is not making any progress? **Time to Think Bigger!**",[954],"Iain Camacho","2021-03-30",{"slug":957,"externalUrl":-1},"five-signs-you-should-think-bigger",{"content":959,"config":965},{"title":960,"heroImage":920,"category":941,"description":961,"authors":962,"date":964},"Bug found and resolved in Dependency Scanning","Some customers will need to take specific action to manually update their Dependency Scanning image to receive a bug fix.",[963],"Nicole Schwartz","2021-02-19",{"slug":966,"externalUrl":-1},"secure-composition-analysis-bug-not-updating-database",{"content":968,"config":975},{"title":969,"heroImage":970,"category":941,"description":971,"authors":972,"date":974},"Little things make a difference","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669673/Blog/Hero%20Images/engineering.png","Let's celebrate the small UI refinements that add up to create a big impact",[973],"Christie Lenneville","2021-02-12",{"slug":976,"externalUrl":-1},"little-things-make-a-difference",{"content":978,"config":985},{"title":979,"heroImage":980,"category":941,"description":981,"authors":982,"date":984},"Using Gitlab APIs: Real Use Case Scenario","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681037/Blog/Hero%20Images/gitlabapi-cover.jpg","Learn about how GitLab CI and APIs can help you automate bulk tasks",[983],"William Arias","2020-01-22",{"slug":986,"externalUrl":-1},"gitlab-apis-ci",{"content":988,"config":995},{"title":989,"heroImage":990,"category":741,"description":991,"authors":992,"date":994},"What tracking down missing TCP Keepalives taught me about Docker, Golang, and GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680874/Blog/Hero%20Images/network.jpg","An in-depth recap of debugging a bug in the Docker client library.",[993],"Stan Hu","2019-11-15",{"slug":996,"externalUrl":-1},"tracking-down-missing-tcp-keepalives",1772652077923]