Class: AWSCDK::ImageBuilder::CfnImagePipelineProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
image_builder/cfn_image_pipeline_props.rb

Overview

Properties for defining a CfnImagePipeline.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(infrastructure_configuration_arn:, name:, container_recipe_arn: nil, description: nil, distribution_configuration_arn: nil, enhanced_image_metadata_enabled: nil, execution_role: nil, image_recipe_arn: nil, image_scanning_configuration: nil, image_tests_configuration: nil, logging_configuration: nil, schedule: nil, status: nil, tags: nil, workflows: nil) ⇒ CfnImagePipelineProps

Returns a new instance of CfnImagePipelineProps.

Parameters:



24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# File 'image_builder/cfn_image_pipeline_props.rb', line 24

def initialize(infrastructure_configuration_arn:, name:, container_recipe_arn: nil, description: nil, distribution_configuration_arn: nil, enhanced_image_metadata_enabled: nil, execution_role: nil, image_recipe_arn: nil, image_scanning_configuration: nil, image_tests_configuration: nil, logging_configuration: nil, schedule: nil, status: nil, tags: nil, workflows: nil)
  @infrastructure_configuration_arn = infrastructure_configuration_arn
  Jsii::Type.check_type(@infrastructure_configuration_arn, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19pbWFnZWJ1aWxkZXIuSUluZnJhc3RydWN0dXJlQ29uZmlndXJhdGlvblJlZiJ9XX19")), "infrastructureConfigurationArn")
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @container_recipe_arn = container_recipe_arn
  Jsii::Type.check_type(@container_recipe_arn, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19pbWFnZWJ1aWxkZXIuSUNvbnRhaW5lclJlY2lwZVJlZiJ9XX19")), "containerRecipeArn") unless @container_recipe_arn.nil?
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @distribution_configuration_arn = distribution_configuration_arn
  Jsii::Type.check_type(@distribution_configuration_arn, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19pbWFnZWJ1aWxkZXIuSURpc3RyaWJ1dGlvbkNvbmZpZ3VyYXRpb25SZWYifV19fQ==")), "distributionConfigurationArn") unless @distribution_configuration_arn.nil?
  @enhanced_image_metadata_enabled = 
  Jsii::Type.check_type(@enhanced_image_metadata_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enhancedImageMetadataEnabled") unless @enhanced_image_metadata_enabled.nil?
  @execution_role = execution_role
  Jsii::Type.check_type(@execution_role, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "executionRole") unless @execution_role.nil?
  @image_recipe_arn = image_recipe_arn
  Jsii::Type.check_type(@image_recipe_arn, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19pbWFnZWJ1aWxkZXIuSUltYWdlUmVjaXBlUmVmIn1dfX0=")), "imageRecipeArn") unless @image_recipe_arn.nil?
  @image_scanning_configuration = image_scanning_configuration.is_a?(Hash) ? ::AWSCDK::ImageBuilder::CfnImagePipeline::ImageScanningConfigurationProperty.new(**image_scanning_configuration.transform_keys(&:to_sym)) : image_scanning_configuration
  Jsii::Type.check_type(@image_scanning_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19pbWFnZWJ1aWxkZXIuQ2ZuSW1hZ2VQaXBlbGluZS5JbWFnZVNjYW5uaW5nQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "imageScanningConfiguration") unless @image_scanning_configuration.nil?
  @image_tests_configuration = image_tests_configuration.is_a?(Hash) ? ::AWSCDK::ImageBuilder::CfnImagePipeline::ImageTestsConfigurationProperty.new(**image_tests_configuration.transform_keys(&:to_sym)) : image_tests_configuration
  Jsii::Type.check_type(@image_tests_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19pbWFnZWJ1aWxkZXIuQ2ZuSW1hZ2VQaXBlbGluZS5JbWFnZVRlc3RzQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "imageTestsConfiguration") unless @image_tests_configuration.nil?
  @logging_configuration = logging_configuration.is_a?(Hash) ? ::AWSCDK::ImageBuilder::CfnImagePipeline::PipelineLoggingConfigurationProperty.new(**logging_configuration.transform_keys(&:to_sym)) : logging_configuration
  Jsii::Type.check_type(@logging_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19pbWFnZWJ1aWxkZXIuQ2ZuSW1hZ2VQaXBlbGluZS5QaXBlbGluZUxvZ2dpbmdDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "loggingConfiguration") unless @logging_configuration.nil?
  @schedule = schedule.is_a?(Hash) ? ::AWSCDK::ImageBuilder::CfnImagePipeline::ScheduleProperty.new(**schedule.transform_keys(&:to_sym)) : schedule
  Jsii::Type.check_type(@schedule, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19pbWFnZWJ1aWxkZXIuQ2ZuSW1hZ2VQaXBlbGluZS5TY2hlZHVsZVByb3BlcnR5In1dfX0=")), "schedule") unless @schedule.nil?
  @status = status
  Jsii::Type.check_type(@status, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "status") unless @status.nil?
  @tags = tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoibWFwIn19")), "tags") unless @tags.nil?
  @workflows = workflows
  Jsii::Type.check_type(@workflows, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaW1hZ2VidWlsZGVyLkNmbkltYWdlUGlwZWxpbmUuV29ya2Zsb3dDb25maWd1cmF0aW9uUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "workflows") unless @workflows.nil?
end

Instance Attribute Details

#container_recipe_arnString, ... (readonly)

The Amazon Resource Name (ARN) of the container recipe that is used for this pipeline.



71
72
73
# File 'image_builder/cfn_image_pipeline_props.rb', line 71

def container_recipe_arn
  @container_recipe_arn
end

#descriptionString? (readonly)

The description of this image pipeline.



76
77
78
# File 'image_builder/cfn_image_pipeline_props.rb', line 76

def description
  @description
end

#distribution_configuration_arnString, ... (readonly)

The Amazon Resource Name (ARN) of the distribution configuration associated with this image pipeline.



81
82
83
# File 'image_builder/cfn_image_pipeline_props.rb', line 81

def distribution_configuration_arn
  @distribution_configuration_arn
end

#enhanced_image_metadata_enabledBoolean, ... (readonly)

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.



88
89
90
# File 'image_builder/cfn_image_pipeline_props.rb', line 88

def 
  @enhanced_image_metadata_enabled
end

#execution_roleString? (readonly)

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



93
94
95
# File 'image_builder/cfn_image_pipeline_props.rb', line 93

def execution_role
  @execution_role
end

#image_recipe_arnString, ... (readonly)

The Amazon Resource Name (ARN) of the image recipe associated with this image pipeline.



98
99
100
# File 'image_builder/cfn_image_pipeline_props.rb', line 98

def image_recipe_arn
  @image_recipe_arn
end

#image_scanning_configurationAWSCDK::IResolvable, ... (readonly)

Contains settings for vulnerability scans.



103
104
105
# File 'image_builder/cfn_image_pipeline_props.rb', line 103

def image_scanning_configuration
  @image_scanning_configuration
end

#image_tests_configurationAWSCDK::IResolvable, ... (readonly)

The configuration of the image tests that run after image creation to ensure the quality of the image that was created.



108
109
110
# File 'image_builder/cfn_image_pipeline_props.rb', line 108

def image_tests_configuration
  @image_tests_configuration
end

#infrastructure_configuration_arnString, AWSCDK::Interfaces::AWSImagebuilder::IInfrastructureConfigurationRef (readonly)

The Amazon Resource Name (ARN) of the infrastructure configuration associated with this image pipeline.



61
62
63
# File 'image_builder/cfn_image_pipeline_props.rb', line 61

def infrastructure_configuration_arn
  @infrastructure_configuration_arn
end

#logging_configurationAWSCDK::IResolvable, ... (readonly)

Defines logging configuration for the output image.



113
114
115
# File 'image_builder/cfn_image_pipeline_props.rb', line 113

def logging_configuration
  @logging_configuration
end

#nameString (readonly)

The name of the image pipeline.



66
67
68
# File 'image_builder/cfn_image_pipeline_props.rb', line 66

def name
  @name
end

#scheduleAWSCDK::IResolvable, ... (readonly)

The schedule of the image pipeline.

A schedule configures how often and when a pipeline automatically creates a new image.



120
121
122
# File 'image_builder/cfn_image_pipeline_props.rb', line 120

def schedule
  @schedule
end

#statusString? (readonly)

The status of the image pipeline.



125
126
127
# File 'image_builder/cfn_image_pipeline_props.rb', line 125

def status
  @status
end

#tagsHash{String => String}? (readonly)

The tags of this image pipeline.



130
131
132
# File 'image_builder/cfn_image_pipeline_props.rb', line 130

def tags
  @tags
end

#workflowsAWSCDK::IResolvable, ... (readonly)

Contains the workflows that run for the image pipeline.



135
136
137
# File 'image_builder/cfn_image_pipeline_props.rb', line 135

def workflows
  @workflows
end

Class Method Details

.jsii_propertiesObject



137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
# File 'image_builder/cfn_image_pipeline_props.rb', line 137

def self.jsii_properties
  {
    :infrastructure_configuration_arn => "infrastructureConfigurationArn",
    :name => "name",
    :container_recipe_arn => "containerRecipeArn",
    :description => "description",
    :distribution_configuration_arn => "distributionConfigurationArn",
    :enhanced_image_metadata_enabled => "enhancedImageMetadataEnabled",
    :execution_role => "executionRole",
    :image_recipe_arn => "imageRecipeArn",
    :image_scanning_configuration => "imageScanningConfiguration",
    :image_tests_configuration => "imageTestsConfiguration",
    :logging_configuration => "loggingConfiguration",
    :schedule => "schedule",
    :status => "status",
    :tags => "tags",
    :workflows => "workflows",
  }
end

Instance Method Details

#to_jsiiObject



157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'image_builder/cfn_image_pipeline_props.rb', line 157

def to_jsii
  result = {}
  result.merge!({
    "infrastructureConfigurationArn" => @infrastructure_configuration_arn,
    "name" => @name,
    "containerRecipeArn" => @container_recipe_arn,
    "description" => @description,
    "distributionConfigurationArn" => @distribution_configuration_arn,
    "enhancedImageMetadataEnabled" => @enhanced_image_metadata_enabled,
    "executionRole" => @execution_role,
    "imageRecipeArn" => @image_recipe_arn,
    "imageScanningConfiguration" => @image_scanning_configuration,
    "imageTestsConfiguration" => @image_tests_configuration,
    "loggingConfiguration" => @logging_configuration,
    "schedule" => @schedule,
    "status" => @status,
    "tags" => @tags,
    "workflows" => @workflows,
  })
  result.compact
end