EC2 Image Builder

8 resource kinds. Generated from the operator's CRD schemas.

API Group: aws.konfig.io/v1alpha1

ImageBuilderComponent # CLOUD CONTROL · AWS::ImageBuilder::Component

ImageBuilderComponent manages AWS::ImageBuilder::Component through the AWS Cloud Control API.

kubectl get imagebuildercomponents · example on GitHub

Example

# ImageBuilderComponent — EC2 Image Builder
# Full-options example generated from the CRD schema. Optional fields are
# included with sample values; delete what you don't need. Field reference:
# https://konfig-konector.io/docs/imagebuilder.html#imagebuildercomponent
apiVersion: aws.konfig.io/v1alpha1
kind: ImageBuilderComponent
metadata:
  name: example-imagebuildercomponent
  namespace: default
spec:
  changeDescription: Managed by konfig-konector
  data: example
  description: Managed by konfig-konector
  kmsKeyId: arn:aws:kms:us-east-1:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab
  name: example-imagebuildercomponent
  platform: Windows
  providerRef:
    name: example-imagebuildercomponent
    region: us-east-1
  supportedOsVersions:
  - example
  tags:
    environment: dev
    team: platform
  uri: example
  version: '1.0'

Spec

FieldTypeRequiredDescription
changeDescriptionstring—The change description of the component.
datastring—The data of the component.
descriptionstring—The description of the component.
kmsKeyIdstring—The KMS key identifier used to encrypt the component.
namestringyesThe name of the component.
platformenumyesThe platform of the component. Allowed: Windows, Linux, macOS
providerRefobject—ProviderRef selects the AWSProvider (account/region) this resource is reconciled against.
providerRef.namestringyesName of a cluster-scoped AWSProvider.
providerRef.regionstring—Region overrides the provider's region for this resource only.
supportedOsVersionsarray<string>—The operating system (OS) version supported by the component.
tagsmap<string>—The tags associated with the component.
uristring—The uri of the component.
versionstringyesThe version of the component.

Status

FieldTypeRequiredDescription
arnstring—The Amazon Resource Name (ARN) of the component.
attemptinteger—Attempt counts failed create/delete requests; it salts the Cloud Control idempotency token so a retry is not served the cached failure.
awsProviderobject—AWSProvider confirms the account and region this resource was reconciled against.
awsProvider.accountIdstring—AccountID the resource lives in.
awsProvider.namestring—Name of the AWSProvider used; empty when the operator's own credentials were used.
awsProvider.regionstring—Region the resource lives in (empty for global services).
conditionsarray<object>—Conditions describe the current state of the resource.
conditions[].lastTransitionTimestringyeslastTransitionTime is the last time the condition transitioned from one status to another.
conditions[].messagestringyesmessage is a human readable message indicating details about the transition.
conditions[].observedGenerationinteger—observedGeneration represents the .metadata.generation that the condition was set based upon.
conditions[].reasonstringyesreason contains a programmatic identifier indicating the reason for the condition's last transition.
conditions[].statusenumyesstatus of the condition, one of True, False, Unknown. Allowed: True, False, Unknown
conditions[].typestringyestype of condition in CamelCase or in foo.example.com/CamelCase.
encryptedboolean—The encryption status of the component.
identifierstring—Identifier is the Cloud Control primary identifier of the resource.
lastSyncTimestring—
latestVersionobject—The latest version references of the component.
latestVersion.arnstring—The latest version ARN of the created component.
latestVersion.majorstring—The latest version ARN of the created component, with the same major version.
latestVersion.minorstring—The latest version ARN of the created component, with the same minor version.
latestVersion.patchstring—The latest version ARN of the created component, with the same patch version.
observedGenerationinteger—
operationstring—Operation is the in-flight operation (CREATE, UPDATE, DELETE).
operationStatusstring—OperationStatus is the last reported operation status.
requestTokenstring—RequestToken tracks an in-flight asynchronous operation.
typeenum—The type of the component denotes whether the component is used to build the image or only to test it. Allowed: BUILD, TEST

ImageBuilderContainerRecipe # CLOUD CONTROL · AWS::ImageBuilder::ContainerRecipe

ImageBuilderContainerRecipe manages AWS::ImageBuilder::ContainerRecipe through the AWS Cloud Control API.

kubectl get imagebuildercontainerrecipes · example on GitHub

Example

# ImageBuilderContainerRecipe — EC2 Image Builder
# Full-options example generated from the CRD schema. Optional fields are
# included with sample values; delete what you don't need. Field reference:
# https://konfig-konector.io/docs/imagebuilder.html#imagebuildercontainerrecipe
apiVersion: aws.konfig.io/v1alpha1
kind: ImageBuilderContainerRecipe
metadata:
  name: example-imagebuildercontainerrecipe
  namespace: default
spec:
  components:
  - componentArn: arn:aws:iam::123456789012:role/example-role
    parameters:
    - name: example-imagebuildercontainerrecipe
      value:
      - example
  containerType: DOCKER
  description: Managed by konfig-konector
  dockerfileTemplateData: example
  dockerfileTemplateUri: example
  imageOsVersionOverride: example
  instanceConfiguration:
    blockDeviceMappings:
    - deviceName: example-imagebuildercontainerrecipe
      noDevice: example
      virtualName: example-imagebuildercontainerrecipe
    image: example
  kmsKeyId: arn:aws:kms:us-east-1:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab
  name: example-imagebuildercontainerrecipe
  parentImage: example
  platformOverride: Windows
  providerRef:
    name: example-imagebuildercontainerrecipe
    region: us-east-1
  tags:
    environment: dev
    team: platform
  targetRepository:
    repositoryName: example-imagebuildercontainerrecipe
    service: ECR
  version: '1.0'
  workingDirectory: example

Spec

FieldTypeRequiredDescription
componentsarray<object>—Components for build and test that are included in the container recipe.
components[].componentArnstring—The Amazon Resource Name (ARN) of the component.
components[].parametersarray<object>—A group of parameter settings that are used to configure the component for a specific recipe.
components[].parameters[].namestringyesThe name of the component parameter to set.
components[].parameters[].valuearray<string>yesSets the value for the named component parameter.
containerTypeenum—Specifies the type of container, such as Docker. Allowed: DOCKER
descriptionstring—The description of the container recipe.
dockerfileTemplateDatastring—Dockerfiles are text documents that are used to build Docker containers, and ensure that they contain all of the elements required by the application running inside.
dockerfileTemplateUristring—The S3 URI for the Dockerfile that will be used to build your container image.
imageOsVersionOverridestring—Specifies the operating system version for the source image.
instanceConfigurationobject—A group of options that can be used to configure an instance for building and testing container images.
instanceConfiguration.blockDeviceMappingsarray<object>—Defines the block devices to attach for building an instance from this Image Builder AMI.
instanceConfiguration.blockDeviceMappings[].deviceNamestring—The device to which these mappings apply.
instanceConfiguration.blockDeviceMappings[].ebsobject—Use to manage Amazon EBS-specific configuration for this mapping.
instanceConfiguration.blockDeviceMappings[].ebs.deleteOnTerminationboolean—Use to configure delete on termination of the associated device.
instanceConfiguration.blockDeviceMappings[].ebs.encryptedboolean—Use to configure device encryption.
instanceConfiguration.blockDeviceMappings[].ebs.iopsinteger—Use to configure device IOPS.
instanceConfiguration.blockDeviceMappings[].ebs.kmsKeyIdstring—Use to configure the KMS key to use when encrypting the device.
instanceConfiguration.blockDeviceMappings[].ebs.snapshotIdstring—The snapshot that defines the device contents.
instanceConfiguration.blockDeviceMappings[].ebs.throughputinteger—For GP3 volumes only - The throughput in MiB/s that the volume supports.
instanceConfiguration.blockDeviceMappings[].ebs.volumeSizeinteger—Use to override the device's volume size.
instanceConfiguration.blockDeviceMappings[].ebs.volumeTypeenum—Use to override the device's volume type. Allowed: standard, io1, io2, io2a, gp2, gp3, gp3a, sc1…
instanceConfiguration.blockDeviceMappings[].noDevicestring—Use to remove a mapping from the parent image.
instanceConfiguration.blockDeviceMappings[].virtualNamestring—Use to manage instance ephemeral devices.
instanceConfiguration.imagestring—The AMI ID to use as the base image for a container build and test instance.
kmsKeyIdstring—Identifies which KMS key is used to encrypt the container image.
namestring—The name of the container recipe.
parentImagestring—The source image for the container recipe.
platformOverrideenum—Specifies the operating system platform when you use a custom source image. Allowed: Windows, Linux
providerRefobject—ProviderRef selects the AWSProvider (account/region) this resource is reconciled against.
providerRef.namestringyesName of a cluster-scoped AWSProvider.
providerRef.regionstring—Region overrides the provider's region for this resource only.
tagsmap<string>—Tags that are attached to the container recipe.
targetRepositoryobject—The destination repository for the container image.
targetRepository.repositoryNamestring—The name of the container repository where the output container image is stored.
targetRepository.serviceenum—Specifies the service in which this image was registered. Allowed: ECR
versionstring—The semantic version of the container recipe (..).
workingDirectorystring—The working directory to be used during build and test workflows.

Status

FieldTypeRequiredDescription
arnstring—The Amazon Resource Name (ARN) of the container recipe.
attemptinteger—Attempt counts failed create/delete requests; it salts the Cloud Control idempotency token so a retry is not served the cached failure.
awsProviderobject—AWSProvider confirms the account and region this resource was reconciled against.
awsProvider.accountIdstring—AccountID the resource lives in.
awsProvider.namestring—Name of the AWSProvider used; empty when the operator's own credentials were used.
awsProvider.regionstring—Region the resource lives in (empty for global services).
conditionsarray<object>—Conditions describe the current state of the resource.
conditions[].lastTransitionTimestringyeslastTransitionTime is the last time the condition transitioned from one status to another.
conditions[].messagestringyesmessage is a human readable message indicating details about the transition.
conditions[].observedGenerationinteger—observedGeneration represents the .metadata.generation that the condition was set based upon.
conditions[].reasonstringyesreason contains a programmatic identifier indicating the reason for the condition's last transition.
conditions[].statusenumyesstatus of the condition, one of True, False, Unknown. Allowed: True, False, Unknown
conditions[].typestringyestype of condition in CamelCase or in foo.example.com/CamelCase.
identifierstring—Identifier is the Cloud Control primary identifier of the resource.
lastSyncTimestring—
latestVersionobject—The latest version references of the container recipe.
latestVersion.arnstring—The latest version ARN of the created container recipe.
latestVersion.majorstring—The latest version ARN of the created container recipe, with the same major version.
latestVersion.minorstring—The latest version ARN of the created container recipe, with the same minor version.
latestVersion.patchstring—The latest version ARN of the created container recipe, with the same patch version.
observedGenerationinteger—
operationstring—Operation is the in-flight operation (CREATE, UPDATE, DELETE).
operationStatusstring—OperationStatus is the last reported operation status.
requestTokenstring—RequestToken tracks an in-flight asynchronous operation.

ImageBuilderDistributionConfiguration # CLOUD CONTROL · AWS::ImageBuilder::DistributionConfiguration

ImageBuilderDistributionConfiguration manages AWS::ImageBuilder::DistributionConfiguration through the AWS Cloud Control API.

kubectl get imagebuilderdistributionconfigurations · example on GitHub

Example

# ImageBuilderDistributionConfiguration — EC2 Image Builder
# Full-options example generated from the CRD schema. Optional fields are
# included with sample values; delete what you don't need. Field reference:
# https://konfig-konector.io/docs/imagebuilder.html#imagebuilderdistributionconfiguration
apiVersion: aws.konfig.io/v1alpha1
kind: ImageBuilderDistributionConfiguration
metadata:
  name: example-imagebuilderdistributionconfiguration
  namespace: default
spec:
  description: Managed by konfig-konector
  distributions:
  - amiDistributionConfiguration:
      description: Managed by konfig-konector
      kmsKeyId: arn:aws:kms:us-east-1:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab
      name: example-imagebuilderdistributionconfiguration
      targetAccountIds:
      - example
    containerDistributionConfiguration:
      containerTags:
      - example
      description: Managed by konfig-konector
    fastLaunchConfigurations:
    - accountId: '123456789012'
      enabled: true
      maxParallelLaunches: 1
    launchTemplateConfigurations:
    - accountId: '123456789012'
      setDefaultVersion: false
    licenseConfigurationArns:
    - example
    region: us-east-1
    ssmParameterConfigurations:
    - amiAccountId: '123456789012'
      dataType: example
      parameterName: example-imagebuilderdistributionconfiguration
  name: example-imagebuilderdistributionconfiguration
  providerRef:
    name: example-imagebuilderdistributionconfiguration
    region: us-east-1
  tags:
    environment: dev
    team: platform

Spec

FieldTypeRequiredDescription
descriptionstring—The description of the distribution configuration.
distributionsarray<object>yesThe distributions of the distribution configuration.
distributions[].amiDistributionConfigurationobject—ImageBuilderDistributionConfigurationAmiDistributionConfiguration is a nested property type of AWS::ImageBuilder::DistributionConfiguration.
distributions[].amiDistributionConfiguration.amiTagsmap<string>—The tags to apply to AMIs distributed to this Region.
distributions[].amiDistributionConfiguration.descriptionstring—The description of the AMI distribution configuration.
distributions[].amiDistributionConfiguration.kmsKeyIdstring—The KMS key identifier used to encrypt the distributed image.
distributions[].amiDistributionConfiguration.launchPermissionConfigurationobject—ImageBuilderDistributionConfigurationLaunchPermissionConfiguration is a nested property type of AWS::ImageBuilder::DistributionConfiguration.
distributions[].amiDistributionConfiguration.launchPermissionConfiguration.organizationArnsarray<string>—The ARN for an Amazon Web Services Organization that you want to share your AMI with.
distributions[].amiDistributionConfiguration.launchPermissionConfiguration.organizationalUnitArnsarray<string>—The ARN for an Organizations organizational unit (OU) that you want to share your AMI with.
distributions[].amiDistributionConfiguration.launchPermissionConfiguration.userGroupsarray<string>—The name of the group.
distributions[].amiDistributionConfiguration.launchPermissionConfiguration.userIdsarray<string>—The AWS account ID.
distributions[].amiDistributionConfiguration.namestring—The name of the AMI distribution configuration.
distributions[].amiDistributionConfiguration.targetAccountIdsarray<string>—The ID of accounts to which you want to distribute an image.
distributions[].containerDistributionConfigurationobject—ImageBuilderDistributionConfigurationContainerDistributionConfiguration is a nested property type of AWS::ImageBuilder::DistributionConfiguration.
distributions[].containerDistributionConfiguration.containerTagsarray<string>—Tags that are attached to the container distribution configuration.
distributions[].containerDistributionConfiguration.descriptionstring—The description of the container distribution configuration.
distributions[].containerDistributionConfiguration.targetRepositoryobject—The destination repository for the container distribution configuration.
distributions[].containerDistributionConfiguration.targetRepository.repositoryNamestring—The repository name of target container repository.
distributions[].containerDistributionConfiguration.targetRepository.serviceenum—The service of target container repository. Allowed: ECR
distributions[].fastLaunchConfigurationsarray<object>—The Windows faster-launching configurations to use for AMI distribution.
distributions[].fastLaunchConfigurations[].accountIdstring—The owner account ID for the fast-launch enabled Windows AMI.
distributions[].fastLaunchConfigurations[].enabledboolean—A Boolean that represents the current state of faster launching for the Windows AMI.
distributions[].fastLaunchConfigurations[].launchTemplateobject—The launch template that the fast-launch enabled Windows AMI uses when it launches Windows instances to create pre-provisioned snapshots.
distributions[].fastLaunchConfigurations[].launchTemplate.launchTemplateIdstring—The ID of the launch template to use for faster launching for a Windows AMI.
distributions[].fastLaunchConfigurations[].launchTemplate.launchTemplateNamestring—The name of the launch template to use for faster launching for a Windows AMI.
distributions[].fastLaunchConfigurations[].launchTemplate.launchTemplateVersionstring—The version of the launch template to use for faster launching for a Windows AMI.
distributions[].fastLaunchConfigurations[].maxParallelLaunchesinteger—The maximum number of parallel instances that are launched for creating resources.
distributions[].fastLaunchConfigurations[].snapshotConfigurationobject—Configuration settings for managing the number of snapshots that are created from pre-provisioned instances for the Windows AMI when faster launching is enabled.
distributions[].fastLaunchConfigurations[].snapshotConfiguration.targetResourceCountinteger—The number of pre-provisioned snapshots to keep on hand for a fast-launch enabled Windows AMI.
distributions[].launchTemplateConfigurationsarray<object>—A group of launchTemplateConfiguration settings that apply to image distribution.
distributions[].launchTemplateConfigurations[].accountIdstring—The account ID that this configuration applies to.
distributions[].launchTemplateConfigurations[].launchTemplateIdstring—Identifies the EC2 launch template to use.
distributions[].launchTemplateConfigurations[].setDefaultVersionboolean—Set the specified EC2 launch template as the default launch template for the specified account.
distributions[].licenseConfigurationArnsarray<string>—The License Manager Configuration to associate with the AMI in the specified Region.
distributions[].regionstringyesregion
distributions[].ssmParameterConfigurationsarray<object>—The SSM parameter configurations to use for AMI distribution.
distributions[].ssmParameterConfigurations[].amiAccountIdstring—The account ID for the AMI to update the parameter with.
distributions[].ssmParameterConfigurations[].dataTypestring—The data type of the SSM parameter.
distributions[].ssmParameterConfigurations[].parameterNamestringyesThe name of the SSM parameter.
namestringyesThe name of the distribution configuration.
providerRefobject—ProviderRef selects the AWSProvider (account/region) this resource is reconciled against.
providerRef.namestringyesName of a cluster-scoped AWSProvider.
providerRef.regionstring—Region overrides the provider's region for this resource only.
tagsmap<string>—The tags associated with the component.

Status

FieldTypeRequiredDescription
arnstring—The Amazon Resource Name (ARN) of the distribution configuration.
attemptinteger—Attempt counts failed create/delete requests; it salts the Cloud Control idempotency token so a retry is not served the cached failure.
awsProviderobject—AWSProvider confirms the account and region this resource was reconciled against.
awsProvider.accountIdstring—AccountID the resource lives in.
awsProvider.namestring—Name of the AWSProvider used; empty when the operator's own credentials were used.
awsProvider.regionstring—Region the resource lives in (empty for global services).
conditionsarray<object>—Conditions describe the current state of the resource.
conditions[].lastTransitionTimestringyeslastTransitionTime is the last time the condition transitioned from one status to another.
conditions[].messagestringyesmessage is a human readable message indicating details about the transition.
conditions[].observedGenerationinteger—observedGeneration represents the .metadata.generation that the condition was set based upon.
conditions[].reasonstringyesreason contains a programmatic identifier indicating the reason for the condition's last transition.
conditions[].statusenumyesstatus of the condition, one of True, False, Unknown. Allowed: True, False, Unknown
conditions[].typestringyestype of condition in CamelCase or in foo.example.com/CamelCase.
identifierstring—Identifier is the Cloud Control primary identifier of the resource.
lastSyncTimestring—
observedGenerationinteger—
operationstring—Operation is the in-flight operation (CREATE, UPDATE, DELETE).
operationStatusstring—OperationStatus is the last reported operation status.
requestTokenstring—RequestToken tracks an in-flight asynchronous operation.

ImageBuilderImagePipeline # CLOUD CONTROL · AWS::ImageBuilder::ImagePipeline

ImageBuilderImagePipeline manages AWS::ImageBuilder::ImagePipeline through the AWS Cloud Control API.

kubectl get imagebuilderimagepipelines · example on GitHub

Example

# ImageBuilderImagePipeline — EC2 Image Builder
# Full-options example generated from the CRD schema. Optional fields are
# included with sample values; delete what you don't need. Field reference:
# https://konfig-konector.io/docs/imagebuilder.html#imagebuilderimagepipeline
apiVersion: aws.konfig.io/v1alpha1
kind: ImageBuilderImagePipeline
metadata:
  name: example-imagebuilderimagepipeline
  namespace: default
spec:
  containerRecipeArn: arn:aws:iam::123456789012:role/example-role
  description: Managed by konfig-konector
  distributionConfigurationArn: arn:aws:iam::123456789012:role/example-role
  enhancedImageMetadataEnabled: true
  executionRole: example
  imageRecipeArn: arn:aws:iam::123456789012:role/example-role
  imageScanningConfiguration:
    ecrConfiguration:
      containerTags:
      - example
      repositoryName: example-imagebuilderimagepipeline
    imageScanningEnabled: true
  imageTags:
    environment: dev
    team: platform
  imageTestsConfiguration:
    imageTestsEnabled: true
    timeoutMinutes: 60
  infrastructureConfigurationArn: arn:aws:iam::123456789012:role/example-role
  loggingConfiguration:
    imageLogGroupName: example-imagebuilderimagepipeline
    pipelineLogGroupName: example-imagebuilderimagepipeline
  name: example-imagebuilderimagepipeline
  providerRef:
    name: example-imagebuilderimagepipeline
    region: us-east-1
  schedule:
    autoDisablePolicy:
      failureCount: 1
    pipelineExecutionStartCondition: EXPRESSION_MATCH_ONLY
    scheduleExpression: example
    timezone: example
  status: DISABLED
  tags:
    environment: dev
    team: platform
  workflows:
  - onFailure: CONTINUE
    parallelGroup: example
    parameters:
    - name: example-imagebuilderimagepipeline
      value:
      - example
    workflowArn: arn:aws:iam::123456789012:role/example-role

Spec

FieldTypeRequiredDescription
containerRecipeArnstring—The Amazon Resource Name (ARN) of the container recipe that defines how images are configured and tested.
descriptionstring—The description of the image pipeline.
distributionConfigurationArnstring—The Amazon Resource Name (ARN) of the distribution configuration associated with this image pipeline.
enhancedImageMetadataEnabledboolean—Collects additional information about the image being created, including the operating system (OS) version and package list.
executionRolestring—The execution role name/ARN for the image build, if provided
imageRecipeArnstring—The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed.
imageScanningConfigurationobject—Contains settings for vulnerability scans that Amazon Inspector runs against the test instance during image creation.
imageScanningConfiguration.ecrConfigurationobject—Contains ECR settings for vulnerability scans.
imageScanningConfiguration.ecrConfiguration.containerTagsarray<string>—Tags for Image Builder to apply the output container image that is scanned.
imageScanningConfiguration.ecrConfiguration.repositoryNamestring—The name of the container repository that Amazon Inspector scans to identify findings for your container images.
imageScanningConfiguration.imageScanningEnabledboolean—This sets whether Image Builder keeps a snapshot of the vulnerability scans that Amazon Inspector runs against the test instance when you create a new image.
imageTagsmap<string>—The tags to be applied to images created by this pipeline.
imageTestsConfigurationobject—The image tests configuration of the image pipeline.
imageTestsConfiguration.imageTestsEnabledboolean—Defines if tests should be executed when building this image.
imageTestsConfiguration.timeoutMinutesinteger—The maximum time in minutes that tests are permitted to run.
infrastructureConfigurationArnstring—The Amazon Resource Name (ARN) of the infrastructure configuration associated with this image pipeline.
loggingConfigurationobject—The logging configuration settings for the image pipeline.
loggingConfiguration.imageLogGroupNamestring—The name of the log group for image build logs.
loggingConfiguration.pipelineLogGroupNamestring—The name of the log group for pipeline execution logs.
namestring—The name of the image pipeline.
providerRefobject—ProviderRef selects the AWSProvider (account/region) this resource is reconciled against.
providerRef.namestringyesName of a cluster-scoped AWSProvider.
providerRef.regionstring—Region overrides the provider's region for this resource only.
scheduleobject—The schedule of the image pipeline.
schedule.autoDisablePolicyobject—The auto-disable policy for the image pipeline.
schedule.autoDisablePolicy.failureCountintegeryesThe number of consecutive failures after which the pipeline should be automatically disabled.
schedule.pipelineExecutionStartConditionenum—The condition configures when the pipeline should trigger a new image build. Allowed: EXPRESSION_MATCH_ONLY, EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE
schedule.scheduleExpressionstring—The expression determines how often EC2 Image Builder evaluates your pipelineExecutionStartCondition.
schedule.timezonestring—The timezone that applies to the scheduling expression, for example "Etc/UTC" or "America/Los_Angeles" in IANA timezone format.
statusenum—The status of the image pipeline. Allowed: DISABLED, ENABLED
tagsmap<string>—The tags of this image pipeline.
workflowsarray<object>—Workflows to define the image build process
workflows[].onFailureenum—Define execution decision in case of workflow failure Allowed: CONTINUE, ABORT
workflows[].parallelGroupstring—The parallel group name
workflows[].parametersarray<object>—The parameters associated with the workflow
workflows[].parameters[].namestring—
workflows[].parameters[].valuearray<string>—
workflows[].workflowArnstring—The Amazon Resource Name (ARN) of the workflow

Status

FieldTypeRequiredDescription
arnstring—The Amazon Resource Name (ARN) of the image pipeline.
attemptinteger—Attempt counts failed create/delete requests; it salts the Cloud Control idempotency token so a retry is not served the cached failure.
awsProviderobject—AWSProvider confirms the account and region this resource was reconciled against.
awsProvider.accountIdstring—AccountID the resource lives in.
awsProvider.namestring—Name of the AWSProvider used; empty when the operator's own credentials were used.
awsProvider.regionstring—Region the resource lives in (empty for global services).
conditionsarray<object>—Conditions describe the current state of the resource.
conditions[].lastTransitionTimestringyeslastTransitionTime is the last time the condition transitioned from one status to another.
conditions[].messagestringyesmessage is a human readable message indicating details about the transition.
conditions[].observedGenerationinteger—observedGeneration represents the .metadata.generation that the condition was set based upon.
conditions[].reasonstringyesreason contains a programmatic identifier indicating the reason for the condition's last transition.
conditions[].statusenumyesstatus of the condition, one of True, False, Unknown. Allowed: True, False, Unknown
conditions[].typestringyestype of condition in CamelCase or in foo.example.com/CamelCase.
deploymentIdstring—The deployment ID of the pipeline, used for resource create/update triggers.
identifierstring—Identifier is the Cloud Control primary identifier of the resource.
lastSyncTimestring—
observedGenerationinteger—
operationstring—Operation is the in-flight operation (CREATE, UPDATE, DELETE).
operationStatusstring—OperationStatus is the last reported operation status.
requestTokenstring—RequestToken tracks an in-flight asynchronous operation.

ImageBuilderImageRecipe # CLOUD CONTROL · AWS::ImageBuilder::ImageRecipe

ImageBuilderImageRecipe manages AWS::ImageBuilder::ImageRecipe through the AWS Cloud Control API.

kubectl get imagebuilderimagerecipes · example on GitHub

Example

# ImageBuilderImageRecipe — EC2 Image Builder
# Full-options example generated from the CRD schema. Optional fields are
# included with sample values; delete what you don't need. Field reference:
# https://konfig-konector.io/docs/imagebuilder.html#imagebuilderimagerecipe
apiVersion: aws.konfig.io/v1alpha1
kind: ImageBuilderImageRecipe
metadata:
  name: example-imagebuilderimagerecipe
  namespace: default
spec:
  additionalInstanceConfiguration:
    systemsManagerAgent:
      uninstallAfterBuild: false
    userDataOverride: example
  amiTags:
    environment: dev
    team: platform
  amiWatermarks:
  - example
  blockDeviceMappings:
  - deviceName: example-imagebuilderimagerecipe
    ebs:
      deleteOnTermination: false
      encrypted: true
      iops: 1
      kmsKeyId: arn:aws:kms:us-east-1:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab
      throughput: 1
      volumeSize: 2
      volumeType: standard
    noDevice: example
    virtualName: example-imagebuilderimagerecipe
  components:
  - componentArn: arn:aws:iam::123456789012:role/example-role
    parameters:
    - name: example-imagebuilderimagerecipe
      value:
      - example
  description: Managed by konfig-konector
  name: example-imagebuilderimagerecipe
  parentImage: example
  providerRef:
    name: example-imagebuilderimagerecipe
    region: us-east-1
  tags:
    environment: dev
    team: platform
  version: '1.0'
  workingDirectory: example

Spec

FieldTypeRequiredDescription
additionalInstanceConfigurationobject—Specify additional settings and launch scripts for your build instances.
additionalInstanceConfiguration.systemsManagerAgentobject—Contains settings for the SSM agent on your build instance.
additionalInstanceConfiguration.systemsManagerAgent.uninstallAfterBuildboolean—Controls whether the SSM agent is removed from your final build image, prior to creating the new AMI.
additionalInstanceConfiguration.userDataOverridestring—Use this property to provide commands or a command script to run when you launch your build instance.
amiTagsmap<string>—The tags to apply to the AMI created by this image recipe.
amiWatermarksarray<string>—The AMI watermark names to attach to the output AMI from this recipe.
blockDeviceMappingsarray<object>—The block device mappings to apply when creating images from this recipe.
blockDeviceMappings[].deviceNamestring—The device to which these mappings apply.
blockDeviceMappings[].ebsobject—Use to manage Amazon EBS-specific configuration for this mapping.
blockDeviceMappings[].ebs.deleteOnTerminationboolean—Use to configure delete on termination of the associated device.
blockDeviceMappings[].ebs.encryptedboolean—Use to configure device encryption.
blockDeviceMappings[].ebs.iopsinteger—Use to configure device IOPS.
blockDeviceMappings[].ebs.kmsKeyIdstring—Use to configure the KMS key to use when encrypting the device.
blockDeviceMappings[].ebs.snapshotIdstring—The snapshot that defines the device contents.
blockDeviceMappings[].ebs.throughputinteger—For GP3 volumes only - The throughput in MiB/s that the volume supports.
blockDeviceMappings[].ebs.volumeSizeinteger—Use to override the device's volume size.
blockDeviceMappings[].ebs.volumeTypeenum—Use to override the device's volume type. Allowed: standard, io1, io2, io2a, gp2, gp3, gp3a, sc1…
blockDeviceMappings[].noDevicestring—Use to remove a mapping from the parent image.
blockDeviceMappings[].virtualNamestring—Use to manage instance ephemeral devices.
componentsarray<object>—The components of the image recipe.
components[].componentArnstring—The Amazon Resource Name (ARN) of the component.
components[].parametersarray<object>—A group of parameter settings that are used to configure the component for a specific recipe.
components[].parameters[].namestringyesThe name of the component parameter to set.
components[].parameters[].valuearray<string>yesSets the value for the named component parameter.
descriptionstring—The description of the image recipe.
namestringyesThe name of the image recipe.
parentImagestringyesThe parent image of the image recipe.
providerRefobject—ProviderRef selects the AWSProvider (account/region) this resource is reconciled against.
providerRef.namestringyesName of a cluster-scoped AWSProvider.
providerRef.regionstring—Region overrides the provider's region for this resource only.
tagsmap<string>—The tags of the image recipe.
versionstringyesThe version of the image recipe.
workingDirectorystring—The working directory to be used during build and test workflows.

Status

FieldTypeRequiredDescription
arnstring—The Amazon Resource Name (ARN) of the image recipe.
attemptinteger—Attempt counts failed create/delete requests; it salts the Cloud Control idempotency token so a retry is not served the cached failure.
awsProviderobject—AWSProvider confirms the account and region this resource was reconciled against.
awsProvider.accountIdstring—AccountID the resource lives in.
awsProvider.namestring—Name of the AWSProvider used; empty when the operator's own credentials were used.
awsProvider.regionstring—Region the resource lives in (empty for global services).
conditionsarray<object>—Conditions describe the current state of the resource.
conditions[].lastTransitionTimestringyeslastTransitionTime is the last time the condition transitioned from one status to another.
conditions[].messagestringyesmessage is a human readable message indicating details about the transition.
conditions[].observedGenerationinteger—observedGeneration represents the .metadata.generation that the condition was set based upon.
conditions[].reasonstringyesreason contains a programmatic identifier indicating the reason for the condition's last transition.
conditions[].statusenumyesstatus of the condition, one of True, False, Unknown. Allowed: True, False, Unknown
conditions[].typestringyestype of condition in CamelCase or in foo.example.com/CamelCase.
identifierstring—Identifier is the Cloud Control primary identifier of the resource.
lastSyncTimestring—
latestVersionobject—The latest version references of the image recipe.
latestVersion.arnstring—The latest version ARN of the created image recipe.
latestVersion.majorstring—The latest version ARN of the created image recipe, with the same major version.
latestVersion.minorstring—The latest version ARN of the created image recipe, with the same minor version.
latestVersion.patchstring—The latest version ARN of the created image recipe, with the same patch version.
observedGenerationinteger—
operationstring—Operation is the in-flight operation (CREATE, UPDATE, DELETE).
operationStatusstring—OperationStatus is the last reported operation status.
requestTokenstring—RequestToken tracks an in-flight asynchronous operation.

ImageBuilderInfrastructureConfiguration # CLOUD CONTROL · AWS::ImageBuilder::InfrastructureConfiguration

ImageBuilderInfrastructureConfiguration manages AWS::ImageBuilder::InfrastructureConfiguration through the AWS Cloud Control API.

kubectl get imagebuilderinfrastructureconfigurations · example on GitHub

Example

# ImageBuilderInfrastructureConfiguration — EC2 Image Builder
# Full-options example generated from the CRD schema. Optional fields are
# included with sample values; delete what you don't need. Field reference:
# https://konfig-konector.io/docs/imagebuilder.html#imagebuilderinfrastructureconfiguration
apiVersion: aws.konfig.io/v1alpha1
kind: ImageBuilderInfrastructureConfiguration
metadata:
  name: example-imagebuilderinfrastructureconfiguration
  namespace: default
spec:
  description: Managed by konfig-konector
  instanceMetadataOptions:
    httpPutResponseHopLimit: 1
    httpTokens: required
  instanceProfileName: example-imagebuilderinfrastructureconfiguration
  instanceTypes:
  - example
  keyPair: example
  logging:
    s3Logs:
      s3BucketName: example-imagebuilderinfrastructureconfiguration
      s3KeyPrefix: example
  name: example-imagebuilderinfrastructureconfiguration
  placement:
    availabilityZone: us-east-1a
    hostResourceGroupArn: arn:aws:iam::123456789012:role/example-role
    tenancy: default
  providerRef:
    name: example-imagebuilderinfrastructureconfiguration
    region: us-east-1
  resourceTags:
    environment: dev
    team: platform
  securityGroupIds:
  - example
  snsTopicArn: arn:aws:iam::123456789012:role/example-role
  tags:
    environment: dev
    team: platform
  terminateInstanceOnFailure: false

Spec

FieldTypeRequiredDescription
descriptionstring—The description of the infrastructure configuration.
instanceMetadataOptionsobject—The instance metadata option settings for the infrastructure configuration.
instanceMetadataOptions.httpPutResponseHopLimitinteger—Limit the number of hops that an instance metadata request can traverse to reach its destination.
instanceMetadataOptions.httpTokensenum—Indicates whether a signed token header is required for instance metadata retrieval requests. Allowed: required, optional
instanceProfileNamestringyesThe instance profile of the infrastructure configuration.
instanceTypesarray<string>—The instance types of the infrastructure configuration.
keyPairstring—The EC2 key pair of the infrastructure configuration..
loggingobject—The logging configuration of the infrastructure configuration.
logging.s3Logsobject—ImageBuilderInfrastructureConfigurationS3Logs is a nested property type of AWS::ImageBuilder::InfrastructureConfiguration.
logging.s3Logs.s3BucketNamestring—S3BucketName
logging.s3Logs.s3KeyPrefixstring—S3KeyPrefix
namestringyesThe name of the infrastructure configuration.
placementobject—The placement option settings for the infrastructure configuration.
placement.availabilityZonestring—AvailabilityZone
placement.hostIdstring—HostId
placement.hostResourceGroupArnstring—HostResourceGroupArn
placement.tenancyenum—Tenancy Allowed: default, dedicated, host
providerRefobject—ProviderRef selects the AWSProvider (account/region) this resource is reconciled against.
providerRef.namestringyesName of a cluster-scoped AWSProvider.
providerRef.regionstring—Region overrides the provider's region for this resource only.
resourceTagsmap<string>—The tags attached to the resource created by Image Builder.
securityGroupIdsarray<string>—The security group IDs of the infrastructure configuration.
snsTopicArnstring—The SNS Topic Amazon Resource Name (ARN) of the infrastructure configuration.
subnetIdstring—The subnet ID of the infrastructure configuration.
tagsmap<string>—The tags associated with the component.
terminateInstanceOnFailureboolean—The terminate instance on failure configuration of the infrastructure configuration.

Status

FieldTypeRequiredDescription
arnstring—The Amazon Resource Name (ARN) of the infrastructure configuration.
attemptinteger—Attempt counts failed create/delete requests; it salts the Cloud Control idempotency token so a retry is not served the cached failure.
awsProviderobject—AWSProvider confirms the account and region this resource was reconciled against.
awsProvider.accountIdstring—AccountID the resource lives in.
awsProvider.namestring—Name of the AWSProvider used; empty when the operator's own credentials were used.
awsProvider.regionstring—Region the resource lives in (empty for global services).
conditionsarray<object>—Conditions describe the current state of the resource.
conditions[].lastTransitionTimestringyeslastTransitionTime is the last time the condition transitioned from one status to another.
conditions[].messagestringyesmessage is a human readable message indicating details about the transition.
conditions[].observedGenerationinteger—observedGeneration represents the .metadata.generation that the condition was set based upon.
conditions[].reasonstringyesreason contains a programmatic identifier indicating the reason for the condition's last transition.
conditions[].statusenumyesstatus of the condition, one of True, False, Unknown. Allowed: True, False, Unknown
conditions[].typestringyestype of condition in CamelCase or in foo.example.com/CamelCase.
identifierstring—Identifier is the Cloud Control primary identifier of the resource.
lastSyncTimestring—
observedGenerationinteger—
operationstring—Operation is the in-flight operation (CREATE, UPDATE, DELETE).
operationStatusstring—OperationStatus is the last reported operation status.
requestTokenstring—RequestToken tracks an in-flight asynchronous operation.

ImageBuilderLifecyclePolicy # CLOUD CONTROL · AWS::ImageBuilder::LifecyclePolicy

ImageBuilderLifecyclePolicy manages AWS::ImageBuilder::LifecyclePolicy through the AWS Cloud Control API.

kubectl get imagebuilderlifecyclepolicies · example on GitHub

Example

# ImageBuilderLifecyclePolicy — EC2 Image Builder
# Full-options example generated from the CRD schema. Optional fields are
# included with sample values; delete what you don't need. Field reference:
# https://konfig-konector.io/docs/imagebuilder.html#imagebuilderlifecyclepolicy
apiVersion: aws.konfig.io/v1alpha1
kind: ImageBuilderLifecyclePolicy
metadata:
  name: example-imagebuilderlifecyclepolicy
  namespace: default
spec:
  description: Managed by konfig-konector
  executionRole: example
  name: example-imagebuilderlifecyclepolicy
  policyDetails:
  - action:
      type: DELETE
    filter:
      retainAtLeast: 1
      type: AGE
      unit: DAYS
      value: 1
  providerRef:
    name: example-imagebuilderlifecyclepolicy
    region: us-east-1
  resourceSelection:
    recipes:
    - name: example-imagebuilderlifecyclepolicy
      semanticVersion: '1.0'
    tagMap:
      environment: dev
      team: platform
  resourceType: AMI_IMAGE
  status: DISABLED
  tags:
    environment: dev
    team: platform

Spec

FieldTypeRequiredDescription
descriptionstring—The description of the lifecycle policy.
executionRolestringyesThe execution role of the lifecycle policy.
namestringyesThe name of the lifecycle policy.
policyDetailsarray<object>yesThe policy details of the lifecycle policy.
policyDetails[].actionobjectyesImageBuilderLifecyclePolicyAction is a nested property type of AWS::ImageBuilder::LifecyclePolicy.
policyDetails[].action.includeResourcesobject—ImageBuilderLifecyclePolicyIncludeResources is a nested property type of AWS::ImageBuilder::LifecyclePolicy.
policyDetails[].action.includeResources.amisboolean—Use to configure lifecycle actions on AMIs.
policyDetails[].action.includeResources.containersboolean—Use to configure lifecycle actions on containers.
policyDetails[].action.includeResources.snapshotsboolean—Use to configure lifecycle actions on snapshots.
policyDetails[].action.typeenumyesThe action type of the policy detail. Allowed: DELETE, DEPRECATE, DISABLE
policyDetails[].exclusionRulesobject—ImageBuilderLifecyclePolicyExclusionRules is a nested property type of AWS::ImageBuilder::LifecyclePolicy.
policyDetails[].exclusionRules.amisobject—ImageBuilderLifecyclePolicyAmiExclusionRules is a nested property type of AWS::ImageBuilder::LifecyclePolicy.
policyDetails[].exclusionRules.amis.isPublicboolean—Use to apply lifecycle policy actions on whether the AMI is public.
policyDetails[].exclusionRules.amis.lastLaunchedobject—Use to apply lifecycle policy actions on AMIs launched before a certain time.
policyDetails[].exclusionRules.amis.lastLaunched.unitenumyesThe value's time unit. Allowed: DAYS, WEEKS, MONTHS, YEARS
policyDetails[].exclusionRules.amis.lastLaunched.valueintegeryesThe last launched value.
policyDetails[].exclusionRules.amis.regionsarray<string>—Use to apply lifecycle policy actions on AMIs distributed to a set of regions.
policyDetails[].exclusionRules.amis.sharedAccountsarray<string>—Use to apply lifecycle policy actions on AMIs shared with a set of regions.
policyDetails[].exclusionRules.amis.tagMapmap<string>—The AMIs to select by tag.
policyDetails[].exclusionRules.tagMapmap<string>—The Image Builder tags to filter on.
policyDetails[].filterobjectyesImageBuilderLifecyclePolicyFilter is a nested property type of AWS::ImageBuilder::LifecyclePolicy.
policyDetails[].filter.retainAtLeastinteger—The minimum number of Image Builder resources to retain.
policyDetails[].filter.typeenumyesThe filter type. Allowed: AGE, COUNT
policyDetails[].filter.unitenum—The value's time unit. Allowed: DAYS, WEEKS, MONTHS, YEARS
policyDetails[].filter.valueintegeryesThe filter value.
providerRefobject—ProviderRef selects the AWSProvider (account/region) this resource is reconciled against.
providerRef.namestringyesName of a cluster-scoped AWSProvider.
providerRef.regionstring—Region overrides the provider's region for this resource only.
resourceSelectionobjectyesThe resource selection of the lifecycle policy.
resourceSelection.recipesarray<object>—The recipes to select.
resourceSelection.recipes[].namestringyesThe recipe name.
resourceSelection.recipes[].semanticVersionstringyesThe recipe version.
resourceSelection.tagMapmap<string>—The Image Builder resources to select by tag.
resourceTypeenumyesThe resource type of the lifecycle policy. Allowed: AMI_IMAGE, CONTAINER_IMAGE
statusenum—The status of the lifecycle policy. Allowed: DISABLED, ENABLED
tagsmap<string>—The tags associated with the lifecycle policy.

Status

FieldTypeRequiredDescription
arnstring—The Amazon Resource Name (ARN) of the lifecycle policy.
attemptinteger—Attempt counts failed create/delete requests; it salts the Cloud Control idempotency token so a retry is not served the cached failure.
awsProviderobject—AWSProvider confirms the account and region this resource was reconciled against.
awsProvider.accountIdstring—AccountID the resource lives in.
awsProvider.namestring—Name of the AWSProvider used; empty when the operator's own credentials were used.
awsProvider.regionstring—Region the resource lives in (empty for global services).
conditionsarray<object>—Conditions describe the current state of the resource.
conditions[].lastTransitionTimestringyeslastTransitionTime is the last time the condition transitioned from one status to another.
conditions[].messagestringyesmessage is a human readable message indicating details about the transition.
conditions[].observedGenerationinteger—observedGeneration represents the .metadata.generation that the condition was set based upon.
conditions[].reasonstringyesreason contains a programmatic identifier indicating the reason for the condition's last transition.
conditions[].statusenumyesstatus of the condition, one of True, False, Unknown. Allowed: True, False, Unknown
conditions[].typestringyestype of condition in CamelCase or in foo.example.com/CamelCase.
identifierstring—Identifier is the Cloud Control primary identifier of the resource.
lastSyncTimestring—
observedGenerationinteger—
operationstring—Operation is the in-flight operation (CREATE, UPDATE, DELETE).
operationStatusstring—OperationStatus is the last reported operation status.
requestTokenstring—RequestToken tracks an in-flight asynchronous operation.

ImageBuilderWorkflow # CLOUD CONTROL · AWS::ImageBuilder::Workflow

ImageBuilderWorkflow manages AWS::ImageBuilder::Workflow through the AWS Cloud Control API.

kubectl get imagebuilderworkflows · example on GitHub

Example

# ImageBuilderWorkflow — EC2 Image Builder
# Full-options example generated from the CRD schema. Optional fields are
# included with sample values; delete what you don't need. Field reference:
# https://konfig-konector.io/docs/imagebuilder.html#imagebuilderworkflow
apiVersion: aws.konfig.io/v1alpha1
kind: ImageBuilderWorkflow
metadata:
  name: example-imagebuilderworkflow
  namespace: default
spec:
  changeDescription: Managed by konfig-konector
  data: example
  description: Managed by konfig-konector
  kmsKeyId: arn:aws:kms:us-east-1:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab
  name: example-imagebuilderworkflow
  providerRef:
    name: example-imagebuilderworkflow
    region: us-east-1
  tags:
    environment: dev
    team: platform
  type: BUILD
  uri: example
  version: '1.0'

Spec

FieldTypeRequiredDescription
changeDescriptionstring—The change description of the workflow.
datastring—The data of the workflow.
descriptionstring—The description of the workflow.
kmsKeyIdstring—The KMS key identifier used to encrypt the workflow.
namestringyesThe name of the workflow.
providerRefobject—ProviderRef selects the AWSProvider (account/region) this resource is reconciled against.
providerRef.namestringyesName of a cluster-scoped AWSProvider.
providerRef.regionstring—Region overrides the provider's region for this resource only.
tagsmap<string>—The tags associated with the workflow.
typeenumyesThe type of the workflow denotes whether the workflow is used to build, test, or distribute. Allowed: BUILD, TEST, DISTRIBUTION
uristring—The uri of the workflow.
versionstringyesThe version of the workflow.

Status

FieldTypeRequiredDescription
arnstring—The Amazon Resource Name (ARN) of the workflow.
attemptinteger—Attempt counts failed create/delete requests; it salts the Cloud Control idempotency token so a retry is not served the cached failure.
awsProviderobject—AWSProvider confirms the account and region this resource was reconciled against.
awsProvider.accountIdstring—AccountID the resource lives in.
awsProvider.namestring—Name of the AWSProvider used; empty when the operator's own credentials were used.
awsProvider.regionstring—Region the resource lives in (empty for global services).
conditionsarray<object>—Conditions describe the current state of the resource.
conditions[].lastTransitionTimestringyeslastTransitionTime is the last time the condition transitioned from one status to another.
conditions[].messagestringyesmessage is a human readable message indicating details about the transition.
conditions[].observedGenerationinteger—observedGeneration represents the .metadata.generation that the condition was set based upon.
conditions[].reasonstringyesreason contains a programmatic identifier indicating the reason for the condition's last transition.
conditions[].statusenumyesstatus of the condition, one of True, False, Unknown. Allowed: True, False, Unknown
conditions[].typestringyestype of condition in CamelCase or in foo.example.com/CamelCase.
identifierstring—Identifier is the Cloud Control primary identifier of the resource.
lastSyncTimestring—
latestVersionobject—The latest version references of the workflow.
latestVersion.arnstring—The latest version ARN of the created workflow.
latestVersion.majorstring—The latest version ARN of the created workflow, with the same major version.
latestVersion.minorstring—The latest version ARN of the created workflow, with the same minor version.
latestVersion.patchstring—The latest version ARN of the created workflow, with the same patch version.
observedGenerationinteger—
operationstring—Operation is the in-flight operation (CREATE, UPDATE, DELETE).
operationStatusstring—OperationStatus is the last reported operation status.
requestTokenstring—RequestToken tracks an in-flight asynchronous operation.