Skip to content
v2.273.0

BuildSpec Class ​

BuildSpec for CodeBuild projects.

Example ​

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

const codebuildProject = new codebuild.Project(this, 'Project', {
  projectName: 'MyTestProject',
  buildSpec: codebuild.BuildSpec.fromObject({
    version: '0.2',
    phases: {
      build: {
        commands: [
          'echo "Hello, CodeBuild!"',
        ],
      },
    },
  }),
});

const task = new tasks.CodeBuildStartBuild(this, 'Task', {
  project: codebuildProject,
  integrationPattern: sfn.IntegrationPattern.RUN_JOB,
  environmentVariablesOverride: {
    ZONE: {
      type: codebuild.BuildEnvironmentVariableType.PLAINTEXT,
      value: sfn.JsonPath.stringAt('$.envVariables.zone'),
    },
  },
});

Initializer ​

ts
new BuildSpec()
python
BuildSpec()
java
new BuildSpec()
csharp
new BuildSpec()
go
NewBuildSpec()

Properties ​

isImmediatebooleanis_immediateboolisImmediateBooleanIsImmediateboolIsImmediate*boolrequired#
Whether the buildspec is directly available or deferred until build-time.

Methods ​

fromAsset(path: string): BuildSpec // chainable@staticmethod def from_asset(path: str) -> BuildSpecpublic static BuildSpec fromAsset(String path)public static BuildSpec FromAsset(string path)func FromAsset(Path *string) BuildSpecstatic#
Use the contents of a local file as the build spec string.

Use this if you have a local .yml or .json file that you want to use as the buildspec

fromObject(value: { [key: string]: any }): BuildSpec // chainable@staticmethod def from_object(value: typing.Mapping[str, Any]) -> BuildSpecpublic static BuildSpec fromObject(Map<String, Object> value)public static BuildSpec FromObject(IDictionary<string, object> value)func FromObject(Value *map[string]interface{}) BuildSpecstatic#
fromObjectToYaml(value: { [key: string]: any }): BuildSpec // chainable@staticmethod def from_object_to_yaml(value: typing.Mapping[str, Any]) -> BuildSpecpublic static BuildSpec fromObjectToYaml(Map<String, Object> value)public static BuildSpec FromObjectToYaml(IDictionary<string, object> value)func FromObjectToYaml(Value *map[string]interface{}) BuildSpecstatic#
Create a buildspec from an object that will be rendered as YAML in the resulting CloudFormation template.
1 parameter

Parameters

  • valuevaluevaluevalueValue — the object containing the buildspec that will be rendered as YAML.
fromSourceFilename(filename: string): BuildSpec // chainable@staticmethod def from_source_filename(filename: str) -> BuildSpecpublic static BuildSpec fromSourceFilename(String filename)public static BuildSpec FromSourceFilename(string filename)func FromSourceFilename(Filename *string) BuildSpecstatic#
Use a file from the source as buildspec.

Use this if you want to use a file different from 'buildspec.yml'`

toBuildSpec(scope?: Construct): stringdef to_build_spec(self, scope: typing.Optional[Construct] = None) -> strpublic String toBuildSpec(Construct scope)public string ToBuildSpec(Construct? scope = null)func ToBuildSpec(Scope Construct) *string#
Render the represented BuildSpec.