> **Experimental**
>
> `@aws-cdk/aws-imagebuilder-alpha` is an [**experimental**](/stability) (alpha) package: its API may change in any release, without a major version bump.
# ComponentDocument

Properties of an EC2 Image Builder Component Document.

- Stability: [Experimental](/cdk/api/stability.html)
- Source: [`lib/component.ts`](https://github.com/aws/aws-cdk/blob/v2.275.0-alpha.0/packages/@aws-cdk/aws-imagebuilder-alpha/lib/component.ts#L178)

## Example

```ts
const component = new imagebuilder.Component(this, 'StructuredComponent', {
  platform: imagebuilder.Platform.LINUX,
  data: imagebuilder.ComponentData.fromComponentDocumentJsonObject({
    schemaVersion: imagebuilder.ComponentSchemaVersion.V1_0,
    phases: [
      {
        name: imagebuilder.ComponentPhaseName.BUILD,
        steps: [
          {
            name: 'install-with-timeout',
            action: imagebuilder.ComponentAction.EXECUTE_BASH,
            timeout: Duration.minutes(10),
            onFailure: imagebuilder.ComponentOnFailure.CONTINUE,
            inputs: imagebuilder.ComponentStepInputs.fromObject({
              commands: ['./install-script.sh']
            })
          }
        ]
      }
    ]
  })
});
```

## Properties

- `constants`: { [key: string]: [ComponentConstantValue](/cdk/api/v2/docs/@aws-cdk_aws-imagebuilder-alpha.ComponentConstantValue.html) } = None — The constants to define in the document.

- `description`: string = None — The description of the document.

- `name`: string = None — The name of the document.

- `parameters`: { [key: string]: [ComponentDocumentParameterDefinition](/cdk/api/v2/docs/@aws-cdk_aws-imagebuilder-alpha.ComponentDocumentParameterDefinition.html) } = None — The parameters to define in the document.

- `phases`: [ComponentDocumentPhase](/cdk/api/v2/docs/@aws-cdk_aws-imagebuilder-alpha.ComponentDocumentPhase.html)[] (required) — The phases which define the grouping of steps to run in the build and test workflows of the image build.

- `schemaVersion`: [ComponentSchemaVersion](/cdk/api/v2/docs/@aws-cdk_aws-imagebuilder-alpha.ComponentSchemaVersion.html) (required) — The schema version of the component.
