imagebuilder / Client / create_image_pipeline

create_image_pipeline#

imagebuilder.Client.create_image_pipeline(**kwargs)#

Creates a new image pipeline. Image pipelines enable you to automate the creation and distribution of images.

See also: AWS API Documentation

Request Syntax

response = client.create_image_pipeline(
    name='string',
    description='string',
    imageRecipeArn='string',
    containerRecipeArn='string',
    infrastructureConfigurationArn='string',
    distributionConfigurationArn='string',
    imageTestsConfiguration={
        'imageTestsEnabled': True|False,
        'timeoutMinutes': 123
    },
    enhancedImageMetadataEnabled=True|False,
    schedule={
        'scheduleExpression': 'string',
        'timezone': 'string',
        'pipelineExecutionStartCondition': 'EXPRESSION_MATCH_ONLY'|'EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE'
    },
    status='DISABLED'|'ENABLED',
    tags={
        'string': 'string'
    },
    clientToken='string',
    imageScanningConfiguration={
        'imageScanningEnabled': True|False,
        'ecrConfiguration': {
            'repositoryName': 'string',
            'containerTags': [
                'string',
            ]
        }
    },
    workflows=[
        {
            'workflowArn': 'string',
            'parameters': [
                {
                    'name': 'string',
                    'value': [
                        'string',
                    ]
                },
            ],
            'parallelGroup': 'string',
            'onFailure': 'CONTINUE'|'ABORT'
        },
    ],
    executionRole='string'
)
Parameters:
  • name (string) –

    [REQUIRED]

    The name of the image pipeline.

  • description (string) – The description of the image pipeline.

  • imageRecipeArn (string) – The Amazon Resource Name (ARN) of the image recipe that will be used to configure images created by this image pipeline.

  • containerRecipeArn (string) – The Amazon Resource Name (ARN) of the container recipe that is used to configure images created by this container pipeline.

  • infrastructureConfigurationArn (string) –

    [REQUIRED]

    The Amazon Resource Name (ARN) of the infrastructure configuration that will be used to build images created by this image pipeline.

  • distributionConfigurationArn (string) – The Amazon Resource Name (ARN) of the distribution configuration that will be used to configure and distribute images created by this image pipeline.

  • imageTestsConfiguration (dict) –

    The image test configuration of the image pipeline.

    • imageTestsEnabled (boolean) –

      Determines if tests should run after building the image. Image Builder defaults to enable tests to run following the image build, before image distribution.

    • timeoutMinutes (integer) –

      The maximum time in minutes that tests are permitted to run.

      Note

      The timeoutMinutes attribute is not currently active. This value is ignored.

  • enhancedImageMetadataEnabled (boolean) – Collects additional information about the image being created, including the operating system (OS) version and package list. This information is used to enhance the overall experience of using EC2 Image Builder. Enabled by default.

  • schedule (dict) –

    The schedule of the image pipeline.

    • scheduleExpression (string) –

      The cron expression determines how often EC2 Image Builder evaluates your pipelineExecutionStartCondition.

      For information on how to format a cron expression in Image Builder, see Use cron expressions in EC2 Image Builder.

    • timezone (string) –

      The timezone that applies to the scheduling expression. For example, “Etc/UTC”, “America/Los_Angeles” in the IANA timezone format. If not specified this defaults to UTC.

    • pipelineExecutionStartCondition (string) –

      The condition configures when the pipeline should trigger a new image build. When the pipelineExecutionStartCondition is set to EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE, and you use semantic version filters on the base image or components in your image recipe, EC2 Image Builder will build a new image only when there are new versions of the image or components in your recipe that match the semantic version filter. When it is set to EXPRESSION_MATCH_ONLY, it will build a new image every time the CRON expression matches the current time. For semantic version syntax, see CreateComponent in the EC2 Image Builder API Reference.

  • status (string) – The status of the image pipeline.

  • tags (dict) –

    The tags of the image pipeline.

    • (string) –

      • (string) –

  • clientToken (string) –

    [REQUIRED]

    Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

    This field is autopopulated if not provided.

  • imageScanningConfiguration (dict) –

    Contains settings for vulnerability scans.

    • imageScanningEnabled (boolean) –

      A setting that indicates whether Image Builder keeps a snapshot of the vulnerability scans that Amazon Inspector runs against the build instance when you create a new image.

    • ecrConfiguration (dict) –

      Contains Amazon ECR settings for vulnerability scans.

      • repositoryName (string) –

        The name of the container repository that Amazon Inspector scans to identify findings for your container images. The name includes the path for the repository location. If you don’t provide this information, Image Builder creates a repository in your account named image-builder-image-scanning-repository for vulnerability scans of your output container images.

      • containerTags (list) –

        Tags for Image Builder to apply to the output container image that Amazon Inspector scans. Tags can help you identify and manage your scanned images.

        • (string) –

  • workflows (list) –

    Contains an array of workflow configuration objects.

    • (dict) –

      Contains control settings and configurable inputs for a workflow resource.

      • workflowArn (string) – [REQUIRED]

        The Amazon Resource Name (ARN) of the workflow resource.

      • parameters (list) –

        Contains parameter values for each of the parameters that the workflow document defined for the workflow resource.

        • (dict) –

          Contains a key/value pair that sets the named workflow parameter.

          • name (string) – [REQUIRED]

            The name of the workflow parameter to set.

          • value (list) – [REQUIRED]

            Sets the value for the named workflow parameter.

            • (string) –

      • parallelGroup (string) –

        Test workflows are defined within named runtime groups called parallel groups. The parallel group is the named group that contains this test workflow. Test workflows within a parallel group can run at the same time. Image Builder starts up to five test workflows in the group at the same time, and starts additional workflows as others complete, until all workflows in the group have completed. This field only applies for test workflows.

      • onFailure (string) –

        The action to take if the workflow fails.

  • executionRole (string) – The name or Amazon Resource Name (ARN) for the IAM role you create that grants Image Builder access to perform workflow actions.

Return type:

dict

Returns:

Response Syntax

{
    'requestId': 'string',
    'clientToken': 'string',
    'imagePipelineArn': 'string'
}

Response Structure

  • (dict) –

    • requestId (string) –

      The request ID that uniquely identifies this request.

    • clientToken (string) –

      The client token that uniquely identifies the request.

    • imagePipelineArn (string) –

      The Amazon Resource Name (ARN) of the image pipeline that was created by this request.

Exceptions

  • imagebuilder.Client.exceptions.ServiceException

  • imagebuilder.Client.exceptions.ClientException

  • imagebuilder.Client.exceptions.ServiceUnavailableException

  • imagebuilder.Client.exceptions.InvalidRequestException

  • imagebuilder.Client.exceptions.IdempotentParameterMismatchException

  • imagebuilder.Client.exceptions.ForbiddenException

  • imagebuilder.Client.exceptions.CallRateLimitExceededException

  • imagebuilder.Client.exceptions.ResourceInUseException

  • imagebuilder.Client.exceptions.ResourceAlreadyExistsException

  • imagebuilder.Client.exceptions.ServiceQuotaExceededException