Integrate with AWS

Learn how to integrate GitLab and AWS.

This content is intended for GitLab team members as well as members of the wider community.

Unless otherwise noted, all of this content applies to both GitLab.com and self-managed instances.

This page attempts to index the ways in which GitLab can integrate with AWS. It does so whether the integration is the result of configuring general functionality, was built in to AWS or GitLab or is provided as a solution.

Text Tag Configuration / Built / Solution Support/Maintenance
[AWS Configuration] Integration via Configuring Existing AWS Functionality AWS
[GitLab Configuration] Integration via Configuring Existing GitLab Functionality GitLab
[AWS Built] Built into AWS by Product Team to Address AWS Integration AWS
[GitLab Built] Built into GitLab by Product Team to Address AWS Integration GitLab
[AWS Solution] Built as Solution Example by AWS or AWS Partners Community/Example
[GitLab Solution] Built as Solution Example by GitLab or GitLab Partners Community/Example
[CI Solution] Built, at least in part, using GitLab CI and therefore
more customer customizable.
Items tagged [CI Solution] will
also carry one of the other tags
that indicate the maintenance status.

Integrations For Development Activities

These integrations have to do with using GitLab to build application workloads and deploy them to AWS.

SCM Integrations

AWS CodeStar Connection Integrations

8/14/2023 AWS Release Announcement for GitLab.com SaaS

12/28/2023 AWS Release Announcement for Self-Managed / Dedicated

AWS CodeStar Connections - enables SCM connections to multiple AWS Services. Configure GitLab. Supported Providers. Supported AWS Services - each one may have to make updates to support GitLab, so here is the subset that support GitLab. This works with GitLab.com SaaS, GitLab Self-Managed and GitLab Dedicated. AWS CodeStar connections are not available in all AWS regions - the exclusion list is documented here. (12/28/2023) [AWS Built]

Video Explanation of AWS CodeStar Connection Integration for AWS (1 min)

AWS Services that are supported directly by a CodeStar Connection in an AWS account:

  • AWS Service Catalog directly inherits CodeStar Connections, there is not any specific documentation about GitLab because it just uses any GitLab CodeStar Connection that has been created in the account. (12/28/2023) [AWS Built]
  • AWS Proton directly inherits CodeStar Connections, there is not any specific documentation about GitLab since it just uses any GitLab CodeStar Connection that has been created in the account. (12/28/2023) [AWS Built]
  • AWS CodeBuild - for GitLab.com, self-managed and dedicated - click documentation tabs here. (03/26/2023) [AWS Built]

Documentation and References:

AWS CodePipeline Integrations

AWS CodePipeline Integration - by using GitLab as CodeStar Connections source for CodePipeline, additional AWS service integrations are available. (12/28/2023) [AWS Built]

AWS Services that are supported by an AWS CodePipeline integration:

  • Amazon SageMaker MLOps Projects are created via CodePipeline (as noted here), there is not any specific documentation about GitLab since it just uses any GitLab CodeStar Connection that has been created in the account. (12/28/2023) [AWS Built]

Documentation and References:

CodeStar Connections enabled AWS services that are not yet supported for GitLab

  • AWS CloudFormation publishing of public extensions - not yet supported. [AWS Built]
  • Amazon CodeGuru Reviewer Repositories - not yet supported. [AWS Built]
  • AWS App Runner - not yet supported. [AWS Built]

Custom GitLab Integration in AWS Services

Other SCM Integration Options

  • GitLab Push Mirroring to CodeCommit Workaround enables GitLab repositories to leverage CodePipeline SCM Triggers. GitLab can already leverage S3 and Container Triggers for CodePipeline. This work around enabled CodePipeline capabilities since it was documented. (06/06/2020) [GitLab Configuration]

See CD and Operations Integrations below for Continuous Deployment (CD) specific integrations that are also available.

CI Integrations

  • Direct CI Integrations That Use Keys, IAM or OIDC/JWT to Authenticate to AWS Services from GitLab Runners
  • Amazon CodeGuru Reviewer CI workflows using GitLab CI - can be done, not yet documented.[AWS Solution] [CI Solution]
  • Amazon CodeGuru Secure Scanning using GitLab CI (06/13/2022) [AWS Solution] [CI Solution]

CD and Operations Integrations

End-to-End Solutions for development and deployment of specific development frameworks or ecosystems

Generally solutions demonstrate end-to-end capabilities for the development framework - leveraging all relevant integration techniques to show the art of maximum value for using GitLab and AWS together.

Serverless

Terraform

CloudFormation

CloudFormation Development and Deployment With GitLab Lifecycle Managed DevOps Environments Working Code [GitLab Solution] [CI Solution]

CDK

.NET on AWS

System to system integration of GitLab and AWS

AWS Identity providers (IDP) can be configured to authenticate into GitLab or GitLab can function as an IDP into AWS accounts.

Top level groups on GitLab.com are also known as “Namespaces” and naming one after your company is the first step to setting up a tenant for your organization on GitLab.com. Namespaces can be configured for special functionality like SSO which then integrates your IDP into GitLab.

User authentication and authorization between GitLab and AWS

Runner workload authentication and authorization integration

GitLab infrastructure workloads deployed on AWS

While GitLab can be deployed on a single box for up to 500 users, when it is horizontally scaled for very large user counts like 50,000 it expands into being a complex, many tiered platform that benefits from deployment to AWS. GitLab is supports and is regularly tested being backed by AWS services. GitLab is deployable to Ec2 for traditional scaling and to AWS EKS in a Cloud Native Hybrid implementation. It is called Hybrid because specific service layers cannot be placed in a container cluster due to the workload shapes that are common to Git (and common to how Git processes behave handles that workload variety).

GitLab Instance Compute & Operations Integration

GitLab Runner on AWS Compute