Skip to content
v2.274.0

LinuxBuildImage Class ​

A CodeBuild image running x86-64 Linux.

This class has a bunch of public constants that represent the most popular images.

You can also specify a custom image using one of the static methods:

  • LinuxBuildImage.fromDockerRegistry(image[, { secretsManagerCredentials }])
  • LinuxBuildImage.fromEcrRepository(repo[, tag])
  • LinuxBuildImage.fromAsset(parent, id, props)

Example ​

ts
const pipeline = new pipelines.CodePipeline(this, 'Pipeline', {
  synth: new pipelines.ShellStep('Synth', {
    input: pipelines.CodePipelineSource.connection('my-org/my-app', 'main', {
      connectionArn:
        'arn:aws:codestar-connections:us-east-1:222222222222:connection/7d2469ff-514a-4e4f-9003-5ca4a43cdc41', // Created using the AWS console * });',
    }),
    commands: ['npm ci', 'npm run build', 'npx cdk synth'],
  }),

  // Turn this on because the pipeline uses Docker image assets
  dockerEnabledForSelfMutation: true,
});

pipeline.addWave('MyWave', {
  post: [
    new pipelines.CodeBuildStep('RunApproval', {
      commands: ['command-from-image'],
      buildEnvironment: {
        // The user of a Docker image asset in the pipeline requires turning on
        // 'dockerEnabledForSelfMutation'.
        buildImage: codebuild.LinuxBuildImage.fromAsset(this, 'Image', {
          directory: './docker-image',
        }),
      },
    }),
  ],
});

Properties ​

AMAZON_LINUX_2IBuildImageamazon_linux_2IBuildImageAMAZON_LINUX_2IBuildImageAMAZON_LINUX_2IBuildImageAMAZON_LINUX_2IBuildImagerequiredstaticdeprecated#
Use {@link LinuxBuildImage.AMAZON_LINUX_2_5 } instead.
AMAZON_LINUX_2_2IBuildImageamazon_linux_2_2IBuildImageAMAZON_LINUX_2_2IBuildImageAMAZON_LINUX_2_2IBuildImageAMAZON_LINUX_2_2IBuildImagerequiredstaticdeprecated#
Use {@link LinuxBuildImage.AMAZON_LINUX_2_5 } instead.
AMAZON_LINUX_2_3IBuildImageamazon_linux_2_3IBuildImageAMAZON_LINUX_2_3IBuildImageAMAZON_LINUX_2_3IBuildImageAMAZON_LINUX_2_3IBuildImagerequiredstaticdeprecated#
Use {@link LinuxBuildImage.AMAZON_LINUX_2_5 } instead.
AMAZON_LINUX_2_4IBuildImageamazon_linux_2_4IBuildImageAMAZON_LINUX_2_4IBuildImageAMAZON_LINUX_2_4IBuildImageAMAZON_LINUX_2_4IBuildImagerequiredstatic#
The Amazon Linux 2 x86_64 standard image, version `4.0`.
AMAZON_LINUX_2_5IBuildImageamazon_linux_2_5IBuildImageAMAZON_LINUX_2_5IBuildImageAMAZON_LINUX_2_5IBuildImageAMAZON_LINUX_2_5IBuildImagerequiredstatic#
The Amazon Linux 2023 x86_64 standard image, version `5.0`.
AMAZON_LINUX_2_ARMIBuildImageamazon_linux_2_armIBuildImageAMAZON_LINUX_2_ARMIBuildImageAMAZON_LINUX_2_ARMIBuildImageAMAZON_LINUX_2_ARMIBuildImagerequiredstaticdeprecated#
Use {@link LinuxArmBuildImage.AMAZON_LINUX_2_ARM_3 } instead.
AMAZON_LINUX_2_ARM_2IBuildImageamazon_linux_2_arm_2IBuildImageAMAZON_LINUX_2_ARM_2IBuildImageAMAZON_LINUX_2_ARM_2IBuildImageAMAZON_LINUX_2_ARM_2IBuildImagerequiredstatic#
Image "aws/codebuild/amazonlinux2-aarch64-standard:2.0".
AMAZON_LINUX_2_ARM_3IBuildImageamazon_linux_2_arm_3IBuildImageAMAZON_LINUX_2_ARM_3IBuildImageAMAZON_LINUX_2_ARM_3IBuildImageAMAZON_LINUX_2_ARM_3IBuildImagerequiredstatic#
Image "aws/codebuild/amazonlinux2-aarch64-standard:3.0".
AMAZON_LINUX_2_CORETTO_11IBuildImageamazon_linux_2_coretto_11IBuildImageAMAZON_LINUX_2_CORETTO_11IBuildImageAMAZON_LINUX_2_CORETTO_11IBuildImageAMAZON_LINUX_2_CORETTO_11IBuildImagerequiredstatic#
The Amazon Coretto 11 image x86_64, based on Amazon Linux 2.
AMAZON_LINUX_2_CORETTO_8IBuildImageamazon_linux_2_coretto_8IBuildImageAMAZON_LINUX_2_CORETTO_8IBuildImageAMAZON_LINUX_2_CORETTO_8IBuildImageAMAZON_LINUX_2_CORETTO_8IBuildImagerequiredstatic#
The Amazon Coretto 8 image x86_64, based on Amazon Linux 2.
AMAZON_LINUX_2023_4IBuildImageamazon_linux_2023_4IBuildImageAMAZON_LINUX_2023_4IBuildImageAMAZON_LINUX_2023_4IBuildImageAMAZON_LINUX_2023_4IBuildImagerequiredstatic#
The Amazon Linux 2023 x86_64 standard image, version `4.0`.
AMAZON_LINUX_2023_5IBuildImageamazon_linux_2023_5IBuildImageAMAZON_LINUX_2023_5IBuildImageAMAZON_LINUX_2023_5IBuildImageAMAZON_LINUX_2023_5IBuildImagerequiredstatic#
The Amazon Linux 2023 x86_64 standard image, version `5.0`.
AMAZON_LINUX_2023_6IBuildImageamazon_linux_2023_6IBuildImageAMAZON_LINUX_2023_6IBuildImageAMAZON_LINUX_2023_6IBuildImageAMAZON_LINUX_2023_6IBuildImagerequiredstatic#
The Amazon Linux 2023 x86_64 standard image, version `6.0`.
AMAZON_LINUX_2023_CORETTO_11IBuildImageamazon_linux_2023_coretto_11IBuildImageAMAZON_LINUX_2023_CORETTO_11IBuildImageAMAZON_LINUX_2023_CORETTO_11IBuildImageAMAZON_LINUX_2023_CORETTO_11IBuildImagerequiredstatic#
The Amazon Coretto 11 image x86_64, based on Amazon Linux 2023.
AMAZON_LINUX_2023_CORETTO_8IBuildImageamazon_linux_2023_coretto_8IBuildImageAMAZON_LINUX_2023_CORETTO_8IBuildImageAMAZON_LINUX_2023_CORETTO_8IBuildImageAMAZON_LINUX_2023_CORETTO_8IBuildImagerequiredstatic#
The Amazon Coretto 8 image x86_64, based on Amazon Linux 2023.
defaultComputeTypeComputeTypedefault_compute_typeComputeTypedefaultComputeTypeComputeTypeDefaultComputeTypeComputeTypeDefaultComputeTypeComputeTyperequired#
The default `ComputeType` to use with this image, if one was not specified in `BuildEnvironment#computeType` explicitly.
imageIdstringimage_idstrimageIdStringImageIdstringImageId*stringrequired#
The Docker image identifier that the build environment uses.
imagePullPrincipalTypemay be undefinedImagePullPrincipalTypeimage_pull_principal_typemay be undefinedImagePullPrincipalTypeimagePullPrincipalTypemay be undefinedImagePullPrincipalTypeImagePullPrincipalTypemay be undefinedImagePullPrincipalTypeImagePullPrincipalTypemay be undefinedImagePullPrincipalType#
The type of principal that CodeBuild will use to pull this build Docker image.
repositorymay be undefinedIRepositoryrepositorymay be undefinedIRepositoryrepositorymay be undefinedIRepositoryRepositorymay be undefinedIRepositoryRepositorymay be undefinedIRepository#
An optional ECR repository that the image is hosted in.
secretsManagerCredentialsmay be undefinedISecretsecrets_manager_credentialsmay be undefinedISecretsecretsManagerCredentialsmay be undefinedISecretSecretsManagerCredentialsmay be undefinedISecretSecretsManagerCredentialsmay be undefinedISecret#
The secretsManagerCredentials for access to a private registry.
STANDARD_1_0IBuildImagestandard_1_0IBuildImageSTANDARD_1_0IBuildImageSTANDARD_1_0IBuildImageSTANDARD_1_0IBuildImagerequiredstaticdeprecated#
Use {@link LinuxBuildImage.STANDARD_7_0 } instead.
STANDARD_2_0IBuildImagestandard_2_0IBuildImageSTANDARD_2_0IBuildImageSTANDARD_2_0IBuildImageSTANDARD_2_0IBuildImagerequiredstaticdeprecated#
Use {@link LinuxBuildImage.STANDARD_7_0 } instead.
STANDARD_3_0IBuildImagestandard_3_0IBuildImageSTANDARD_3_0IBuildImageSTANDARD_3_0IBuildImageSTANDARD_3_0IBuildImagerequiredstaticdeprecated#
Use {@link LinuxBuildImage.STANDARD_7_0 } instead.
STANDARD_4_0IBuildImagestandard_4_0IBuildImageSTANDARD_4_0IBuildImageSTANDARD_4_0IBuildImageSTANDARD_4_0IBuildImagerequiredstaticdeprecated#
Use {@link LinuxBuildImage.STANDARD_7_0 } instead.
STANDARD_5_0IBuildImagestandard_5_0IBuildImageSTANDARD_5_0IBuildImageSTANDARD_5_0IBuildImageSTANDARD_5_0IBuildImagerequiredstatic#
The `aws/codebuild/standard:5.0` build image.
STANDARD_6_0IBuildImagestandard_6_0IBuildImageSTANDARD_6_0IBuildImageSTANDARD_6_0IBuildImageSTANDARD_6_0IBuildImagerequiredstatic#
The `aws/codebuild/standard:6.0` build image.
STANDARD_7_0IBuildImagestandard_7_0IBuildImageSTANDARD_7_0IBuildImageSTANDARD_7_0IBuildImageSTANDARD_7_0IBuildImagerequiredstatic#
The `aws/codebuild/standard:7.0` build image.
STANDARD_8_0IBuildImagestandard_8_0IBuildImageSTANDARD_8_0IBuildImageSTANDARD_8_0IBuildImageSTANDARD_8_0IBuildImagerequiredstatic#
The `aws/codebuild/standard:8.0` build image.
typestringtypestrtypeStringTypestringType*stringrequired#
The type of build environment.

Methods ​

fromAsset(scope: Construct, id: string, props: DockerImageAssetProps): IBuildImage@staticmethod def from_asset(scope: Construct, id: str, props: DockerImageAssetProps) -> IBuildImagepublic static IBuildImage fromAsset(Construct scope, String id, DockerImageAssetProps props)public static IBuildImage FromAsset(Construct scope, string id, DockerImageAssetProps props)func FromAsset(Scope Construct, Id *string, Props DockerImageAssetProps) IBuildImagestatic#
Uses an Docker image asset as a x86-64 Linux build image.
fromCodeBuildImageId(id: string): IBuildImage@staticmethod def from_code_build_image_id(id: str) -> IBuildImagepublic static IBuildImage fromCodeBuildImageId(String id)public static IBuildImage FromCodeBuildImageId(string id)func FromCodeBuildImageId(Id *string) IBuildImagestatic#
Uses a Docker image provided by CodeBuild.
1 parameter · returns · example

Parameters

  • ididididId — The image identifier.

Returns: A Docker image provided by CodeBuild.

ts
'aws/codebuild/standard:4.0'
fromDockerRegistry(name: string, options?: DockerImageOptions): IBuildImage@staticmethod def from_docker_registry(name: str, options: typing.Optional[DockerImageOptions] = None) -> IBuildImagepublic static IBuildImage fromDockerRegistry(String name, DockerImageOptions options)public static IBuildImage FromDockerRegistry(string name, DockerImageOptions? options = null)func FromDockerRegistry(Name *string, Options DockerImageOptions) IBuildImagestatic#
returns

Returns: a x86-64 Linux build image from a Docker Hub image.

fromEcrRepository(repository: IRepository, tagOrDigest?: string): IBuildImage@staticmethod def from_ecr_repository(repository: IRepository, tag_or_digest: typing.Optional[str] = None) -> IBuildImagepublic static IBuildImage fromEcrRepository(IRepository repository, String tagOrDigest)public static IBuildImage FromEcrRepository(IRepository repository, string? tagOrDigest = null)func FromEcrRepository(Repository IRepository, TagOrDigest *string) IBuildImagestatic#
2 parameters · returns

Parameters

  • repositoryrepositoryrepositoryrepositoryRepository — The ECR repository.
  • tagOrDigesttag_or_digesttagOrDigesttagOrDigestTagOrDigest — Image tag or digest (default "latest", digests must start with sha256:).

Returns: A x86-64 Linux build image from an ECR repository. NOTE: if the repository is external (i.e. imported), then we won't be able to add a resource policy statement for it so CodeBuild can pull the image.

runScriptBuildspec(entrypoint: string): BuildSpecdef run_script_buildspec(self, entrypoint: str) -> BuildSpecpublic BuildSpec runScriptBuildspec(String entrypoint)public BuildSpec RunScriptBuildspec(string entrypoint)func RunScriptBuildspec(Entrypoint *string) BuildSpec#
Make a buildspec to run the indicated script.
validate(env: BuildEnvironment): string[]def validate(self, env: BuildEnvironment) -> typing.List[str]public List<String> validate(BuildEnvironment env)public string[] Validate(BuildEnvironment env)func Validate(Env BuildEnvironment) *[]*string#
Allows the image a chance to validate whether the passed configuration is correct.