@aws-cdk/aws-codebuild
Version:
The CDK Construct Library for AWS::CodeBuild
60 lines (59 loc) • 2.62 kB
TypeScript
import * as ecr from '@aws-cdk/aws-ecr';
import * as secretsmanager from '@aws-cdk/aws-secretsmanager';
import { BuildSpec } from './build-spec';
import { BuildEnvironment, ComputeType, IBuildImage, ImagePullPrincipalType } from './project';
/**
* A CodeBuild image running aarch64 Linux.
*
* This class has a bunch of public constants that represent the CodeBuild ARM images.
*
* You can also specify a custom image using the static method:
*
* - LinuxBuildImage.fromEcrRepository(repo[, tag])
*
*
* @see https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-available.html
*/
export declare class LinuxArmBuildImage implements IBuildImage {
/** Image "aws/codebuild/amazonlinux2-aarch64-standard:1.0". */
static readonly AMAZON_LINUX_2_STANDARD_1_0: IBuildImage;
/** Image "aws/codebuild/amazonlinux2-aarch64-standard:2.0". */
static readonly AMAZON_LINUX_2_STANDARD_2_0: IBuildImage;
/**
* Returns an ARM image running Linux 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.
*
* @see https://docs.aws.amazon.com/codebuild/latest/userguide/sample-ecr.html
*
* @param repository The ECR repository
* @param tagOrDigest Image tag or digest (default "latest", digests must start with `sha256:`)
* @returns An aarch64 Linux build image from an ECR repository.
*/
static fromEcrRepository(repository: ecr.IRepository, tagOrDigest?: string): IBuildImage;
/**
* Uses a Docker image provided by CodeBuild.
*
* @see https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-available.html
*
* @param id The image identifier
* @example 'aws/codebuild/amazonlinux2-aarch64-standard:1.0'
* @returns A Docker image provided by CodeBuild.
*/
static fromCodeBuildImageId(id: string): IBuildImage;
readonly type = "ARM_CONTAINER";
readonly defaultComputeType = ComputeType.LARGE;
readonly imageId: string;
readonly imagePullPrincipalType?: ImagePullPrincipalType;
readonly secretsManagerCredentials?: secretsmanager.ISecret;
readonly repository?: ecr.IRepository;
private constructor();
/**
* Validates by checking the BuildEnvironment computeType as aarch64 images only support ComputeType.SMALL and
* ComputeType.LARGE
* @param buildEnvironment BuildEnvironment
*/
validate(buildEnvironment: BuildEnvironment): string[];
runScriptBuildspec(entrypoint: string): BuildSpec;
}