AWS Fundamentals Logo
AWS Fundamentals
L2 Construct

Fleet

Fleet for a reserved capacity CodeBuild project. Fleets allow for process builds or tests to run immediately and reduces build durations, by reserving compute resources for your projects. You will be charged for the resources in the fleet, even if they are idle.

Import

import { Fleet } from 'aws-cdk-lib/aws-codebuild';

Or use the module namespace:

import * as codebuild from 'aws-cdk-lib/aws-codebuild';
// codebuild.Fleet

Properties

Configuration passed to the constructor as FleetProps.

baseCapacityRequired
number

The number of machines allocated to the compute fleet. Defines the number of builds that can run in parallel. Minimum value of 1.

computeTypeRequired
FleetComputeType

The instance type of the compute fleet.

environmentTypeRequired
EnvironmentType

The build environment (operating system/architecture/accelerator) type made available to projects using this fleet.

computeConfigurationOptional
ComputeConfiguration

The compute configuration of the compute fleet. This is only permitted if `computeType` is set to ATTRIBUTE_BASED or CUSTOM_INSTANCE_TYPE. In such cases, this is required.

Default: - do not specify compute configuration

fleetNameOptional
string

The name of the Fleet.

Default: - CloudFormation generated name

overflowBehaviorOptional
FleetOverflowBehavior

The compute fleet overflow behavior. For overflow behavior `QUEUE`, overflow builds need to wait on the existing fleet instances to become available. For overflow behavior `ON_DEMAND`, overflow builds run on CodeBuild on-demand.

Default: undefined - AWS CodeBuild default behavior is QUEUE

roleOptional
IRole

Service Role assumed by Fleet instances. This Role is not used by Project builds running on Fleet instances; Project builds assume the `role` on Project instead.

Default: - A role will be created if any permissions are granted

securityGroupsOptional
ISecurityGroup[]

What security groups to associate with the fleet's network interfaces. If none are provided, one will be created automatically. Only used if `vpc` is supplied.

Default: - A security group will be automatically created.

subnetSelectionOptional
SubnetSelection

Where to place the network interfaces within the VPC. To access AWS services, your fleet needs to be in one of the following types of subnets: 1. Subnets with access to the internet (of type PRIVATE_WITH_EGRESS). 2. Private subnets unconnected to the internet, but with [VPC endpoints](https://docs.aws.amazon.com/codebuild/latest/userguide/use-vpc-endpoints-with-codebuild.html) for the necessary services. If you don't specify a subnet selection, the default behavior is to use PRIVATE_WITH_EGRESS subnets first if they exist, then PRIVATE_WITHOUT_EGRESS, and finally PUBLIC subnets. If your VPC doesn't have PRIVATE_WITH_EGRESS subnets but you need AWS service access, add VPC Endpoints to your private subnets.

Default: - private subnets if available else public subnets

vpcOptional
IVpc

VPC network to place fleet instance network interfaces. Specify this if the fleet needs to access resources in a VPC.

Default: - No VPC is specified.

Get the AWS CodeBuild Cheat Sheet

Everything you need to know about AWS CodeBuild on one page. HD quality, print-friendly.

Download Free Infographic