CodeBuildOptions Struct
Options for customizing a single CodeBuild project.
Example
declare const source: pipelines.IFileSetProducer; // the repository source
declare const synthCommands: string[]; // Commands to synthesize your app
declare const installCommands: string[]; // Commands to install your toolchain
const pipeline = new pipelines.CodePipeline(this, 'Pipeline', {
// Standard CodePipeline properties...
synth: new pipelines.ShellStep('Synth', {
input: source,
commands: synthCommands,
}),
// Configure CodeBuild to use a drop-in Docker replacement.
codeBuildDefaults: {
partialBuildSpec: codebuild.BuildSpec.fromObject({
phases: {
install: {
// Add the shell commands to install your drop-in Docker
// replacement to the CodeBuild enviromment.
commands: installCommands,
},
},
}),
buildEnvironment: {
environmentVariables: {
// Instruct the AWS CDK to use `drop-in-replacement` instead of
// `docker` when building / publishing docker images.
// e.g., `drop-in-replacement build . -f path/to/Dockerfile`
CDK_DOCKER: { value: 'drop-in-replacement' },
},
},
},
});
Properties
buildEnvironmentBuildEnvironmentbuild_environmentBuildEnvironmentbuildEnvironmentBuildEnvironmentBuildEnvironmentBuildEnvironmentBuildEnvironmentBuildEnvironment= Non-privileged build, SMALL inst…#default
Default: Non-privileged build, SMALL instance, LinuxBuildImage.STANDARD_7_0
fileSystemLocationsIFileSystemLocation[]file_system_locationstyping.List[IFileSystemLocation]fileSystemLocationsList<IFileSystemLocation>FileSystemLocationsIFileSystemLocation[]FileSystemLocations*[]IFileSystemLocation= no file system locations#A ProjectFileSystemLocation object specifies the identifier, location, mountOptions, mountPoint, and type of a file system created using Amazon Elastic File System. Requires a vpc to be set and privileged to be set to true.
loggingLoggingOptionsloggingLoggingOptionsloggingLoggingOptionsLoggingLoggingOptionsLoggingLoggingOptions= no log configuration is set#A CodeBuild project can create logs in Amazon CloudWatch Logs, an S3 bucket, or both.
partialBuildSpecBuildSpecpartial_build_specBuildSpecpartialBuildSpecBuildSpecPartialBuildSpecBuildSpecPartialBuildSpecBuildSpec= No initial BuildSpec#The BuildSpec must be available inline--it cannot reference a file on disk.
rolePolicyPolicyStatement[]role_policytyping.List[PolicyStatement]rolePolicyList<PolicyStatement>RolePolicyPolicyStatement[]RolePolicy*[]PolicyStatement= No policy statements added to Co…#default
Default: No policy statements added to CodeBuild Project Role
securityGroupsISecurityGroup[]security_groupstyping.List[ISecurityGroup]securityGroupsList<ISecurityGroup>SecurityGroupsISecurityGroup[]SecurityGroups*[]ISecurityGroup= Security group will be automatic…#Only used if 'vpc' is supplied.
default
Default: Security group will be automatically created.
subnetSelectionSubnetSelectionsubnet_selectionSubnetSelectionsubnetSelectionSubnetSelectionSubnetSelectionSubnetSelectionSubnetSelectionSubnetSelection= All private subnets.#Only used if 'vpc' is supplied.
For valid values, see the timeoutInMinutes field in the AWS CodeBuild User Guide.