Should I Switch from GitLab CI to AWS CodePipeline?

0
8
Asked By TechWizard99 On

I've been using GitLab with a .gitlab-ci.yml setup for CI/CD, deploying to AWS. Recently, I found out that GitLab runners can work with AWS CodeBuild, which got me thinking: is it better to go with CodePipeline integrated into my GitLab setup instead of sticking with GitLab CI? The biggest pro I see is that I wouldn't have to deal with maintaining GitLab's self-hosted runners anymore.

I have other projects that use pipelines extensively, including deployments to multiple AWS accounts. The challenge there is managing permissions, since I have to log into multiple accounts for job details. I know I need to address those permission settings, but I'm not sure if switching to CodePipeline would overlook any crucial factors. I'm open to your feedback!

4 Answers

Answered By CloudGuru47 On

We use CodePipeline and CodeBuild for our projects, and integrating them with GitLab or GitHub is pretty straightforward. The cool thing is that these can leverage AWS roles for secure actions, which allows everything to run within your AWS environment without outside communications. Just keep in mind that while it's rock solid once set up, it can be slightly more complex to get running since it's not as mainstream as other options.

Answered By RunnerFree3 On

If your main goal is to avoid maintaining private runners, then moving to CodePipeline makes sense. Otherwise, sticking with GitLab CI might be wise because I'm not sure you'd gain significant advantages from CodePipeline — plus, you'd be tying yourself closer to AWS, which could be a concern.

Answered By BuilderBob22 On

If you're already using GitLab for building, switching to managed runners seems like a smart choice. Here are a few perks of CodeBuild Managed Runners:
1. Docker in Docker support without the hassle of managing EC2 instances.
2. Enhanced security — check out a talk about it [here](https://youtu.be/W6ZQKclRcvg?si=By8r6CVcVMn_YEdn).
3. Better pricing, as you pay per build instead of hourly.
4. Streamlined account access management.

For CodePipeline as a whole:
1. Great for multi-account support and easy cross-account deployments.
2. CDK support is outstanding.
3. Fantastic native AWS integration, especially with step functions for orchestration.
4. Excellent for visualizing and managing complex deployment workflows.

In contrast, GitLab helps keep your repo and build definitions closely linked, has strong auto DevOps features, and good compliance options.

Answered By CostConscious9 On

Just a heads-up: Inspector isn't free, whereas GitHub and GitLab offer SAST integrations at no cost. Plus, using AWS services can be pricey if you're not careful—especially if you're not optimizing how you handle dependency caching.

Related Questions

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.