Bitrise on AWS: Benefits of using a cloud-native mobile CI/CD solution

In the fast-paced world of mobile app development, a seamless, secure, and adaptable CI/CD process is essential. Bitrise has established itself as a leader in this domain, providing a mobile-focused CI/CD platform that allows you to automate all your build, test, and deployment workflows.

But what if regional restrictions, data sovereignty, or compliance regulations prevent your organization from implementing a managed CI infrastructure like Bitrise? We present Bitrise on AWS, replying on Amazon Web Services (AWS).

Control and manage Bitrise CI/CD Build nodes in your AWS account

Bitrise on AWS is designed for organizations wanting to combine Bitrise’s exceptional mobile CI/CD capabilities with AWS's reliable and secure infrastructure. 

The Bitrise on AWS marketplace offering provides a complete, scalable and easy-to-use integration.

Some highlights include:

  • With Bitrise CI/CD build machines under your control, your source code remains in your AWS environment.
  • EC2 Mac and Linux machines are powered by Bitrise-supplied Amazon Machine Images (AMI) that include the latest Xcode and Android Studio tools.
  • A stable CI/CD environment through ephemeral Mac virtualization ensures that builds always start from a consistent state.
  • Automated scaling of EC2 Mac machines with the Bitrise-provided AWS Cloud Controller reduces the workload on your DevOps team.
  • Achieve cost efficiency by scaling your EC2 Mac instances to match your team's weekly workload.

With full control over the EC2 Mac and Linux build machines in your AWS environment, you can leverage additional AWS features and capabilities securely. By configuring AWS security groups and VPN subnets, you can restrict CI/CD Build node access to necessary infrastructure, typically your self-hosted version control and artifact repository. As a result, your build nodes can access your codebase securely without leaving your AWS environment.

Availability of EC2 Mac Instances

MacOS is essential for developing apps for iPhone, iPad, Mac, Vision Pro, Apple Watch, and Apple TV. AWS is the first cloud provider to offer Cloud Mac instances. The Bitrise on AWS marketplace products delivers mobile CI/CD, Release Management, and Insights DevOps tools using Amazon EC2 Mac instances.

Our VM-based macOS AMI supports the following EC2 Mac Apple Silicon machine types:

EC2 Mac identifier Machine type CPU Performance cores Efficiency cores Memory
mac2.metal M1 MacMini 8 4 4 16 GiB
mac-m2.metal M3 8 4 4 24 GiB
mac2-m2pro.metal M2 Pro 12 8 4 32 GiB

Selecting the right machine type depends on your specific needs, whether optimizing for faster development feedback loops or cost efficiency. Running two VM machines on the EC2 Mac host can reduce costs, though build times may vary due to the noisy neighbor effect, as the two virtual machines are sharing the hardware resources.

EC2 Mac identifier 1 VM per machine benchmark 2 VM per machine
Single Build Benchmark
2 VM per machine
Two Build benchmark
mac2.metal 248.4 sec 389.5 sec 648.2 sec
mac-m2.metal 204.9 sec 263.4 sec 390.2 sec
mac2-m2pro.metal 143.4 sec 187.8 sec 241.9 sec

The above benchmark measurements were conducted using the public XcodeBenchmark tool using the Xcode 16.0 Bitrise stack on the EC2 Mac using gp3 disk type.

Note that not all EC2 Mac machine types are available in every EC2 region. For supported regions, see:

Would you like to learn more about Bitrise on AWS?

Download the Bitrise on AWS datasheet for more information. If you have any questions, join our Slack community and connect with Balazs Ilsinszki.

Schedule a Demo with Our Experts.

Frequently Asked Questions

What tools are installed on the Amazon Machine Images types?

We provide a comprehensive iOS and Android build environment on the AWS Marketplace, including all essential mobile development tools used by our Bitrise Cloud customers.

You can check the exact tools and versions using the stack report pages under “See the system report of the VM image here”.

How quickly is a new Xcode version AMI available?

Bitrise assembles a new Xcode AMI within 24 hours of its release, followed by an AWS review process that typically takes 3-4 days.

How stable is the macOS virtualization tool in the VM-based macOS AMI?

Powering millions of builds for our Bitrise Cloud customers, Bitrise's macOS virtualization is a robust solution for your needs.

When to choose Bare-metal macOS AMI?

VM-based macOS AMI offers stability, as each build runs in an ephemeral environment. Bare-metal macOS AMI is suitable for complex workflows with large source code or assets, allowing reuse of fetched and downloaded assets.

What network connection is required for AWS Build nodes?

The minimum requirement is for Build nodes to connect to Bitrise Control and build log services via static endpoints.

In all cases the EC2 Mac and Linux Build nodes are reaching out to Bitrise with outbound calls.

Why do EC2 Mac and Linux CI build nodes need to connect to the Bitrise control plane?

The Bitrise control plane manages essential features like build triggering and configuration, ensuring efficient build preparation and execution. The control plane keeps track of the customers’ registered EC2 mac and Linux Build nodes and will inform them about the jobs that need to run on next polling.

What additional AWS features can the Bitrise on AWS Build nodes utilize?

The AMIs include the AWS CLI, enabling relevant AWS feature usage. Bitrise and the community offer ready-to-use Steps, including S3 caching options(save and restore) and AWS device farm testing community steps to run tests on physical phones and tablets.

How does the AWS Cloud Controller automation work?

AWS Cloud Controller automates EC2 Mac machine reservation and instance launching, based on predefined machine pool configurations, facilitating easy scaling of EC2 Mac pools by just changing the number of machines in the configuration. The configuration contains the Bitrise-provided AMI and AWS security group and subnet.

What is the most secure Bitrise on AWS setup?

Bitrise on AWS was designed with security in mind from the beginning. There is an air-gapped AWS Cloud Controller setup option for enhanced security. Using this option means that all inbound network traffic - which can happen due to tooling updates - must be allowed separately.

Get Started for free

Start building now, choose a plan later.

Sign Up

Get started for free

Start building now, choose a plan later.