Class: Aws::Imagebuilder::Client

Inherits:
Seahorse::Client::Base show all
Includes:
ClientStubs
Defined in:
gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb

Overview

An API client for Imagebuilder. To construct a client, you need to configure a :region and :credentials.

client = Aws::Imagebuilder::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

For details on configuring region and credentials see the developer guide.

See #initialize for a full list of supported configuration options.

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

API Operations collapse

Instance Method Summary collapse

Methods included from ClientStubs

#api_requests, #stub_data, #stub_responses

Methods inherited from Seahorse::Client::Base

add_plugin, api, clear_plugins, define, new, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.

Parameters:

  • options (Hash)

Options Hash (options):

  • :credentials (required, Aws::CredentialProvider)

    Your AWS credentials. This can be an instance of any one of the following classes:

    • Aws::Credentials - Used for configuring static, non-refreshing credentials.

    • Aws::SharedCredentials - Used for loading static credentials from a shared file, such as ~/.aws/config.

    • Aws::AssumeRoleCredentials - Used when you need to assume a role.

    • Aws::AssumeRoleWebIdentityCredentials - Used when you need to assume a role after providing credentials via the web.

    • Aws::SSOCredentials - Used for loading credentials from AWS SSO using an access token generated from aws login.

    • Aws::ProcessCredentials - Used for loading credentials from a process that outputs to stdout.

    • Aws::InstanceProfileCredentials - Used for loading credentials from an EC2 IMDS on an EC2 instance.

    • Aws::ECSCredentials - Used for loading credentials from instances running in ECS.

    • Aws::CognitoIdentityCredentials - Used for loading credentials from the Cognito Identity service.

    When :credentials are not configured directly, the following locations will be searched for credentials:

    • Aws.config[:credentials]
    • The :access_key_id, :secret_access_key, and :session_token options.
    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
    • ~/.aws/credentials
    • ~/.aws/config
    • EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive. Construct and pass an instance of Aws::InstanceProfileCredentails or Aws::ECSCredentials to enable retries and extended timeouts.
  • :region (required, String)

    The AWS region to connect to. The configured :region is used to determine the service :endpoint. When not passed, a default :region is searched for in the following locations:

    • Aws.config[:region]
    • ENV['AWS_REGION']
    • ENV['AMAZON_REGION']
    • ENV['AWS_DEFAULT_REGION']
    • ~/.aws/credentials
    • ~/.aws/config
  • :access_key_id (String)
  • :active_endpoint_cache (Boolean) — default: false

    When set to true, a thread polling for endpoints will be running in the background every 60 secs (default). Defaults to false.

  • :adaptive_retry_wait_to_fill (Boolean) — default: true

    Used only in adaptive retry mode. When true, the request will sleep until there is sufficent client side capacity to retry the request. When false, the request will raise a RetryCapacityNotAvailableError and will not retry instead of sleeping.

  • :client_side_monitoring (Boolean) — default: false

    When true, client-side metrics will be collected for all API requests from this client.

  • :client_side_monitoring_client_id (String) — default: ""

    Allows you to provide an identifier for this client which will be attached to all generated client side metrics. Defaults to an empty string.

  • :client_side_monitoring_host (String) — default: "127.0.0.1"

    Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_port (Integer) — default: 31000

    Required for publishing client metrics. The port that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) — default: Aws::ClientSideMonitoring::Publisher

    Allows you to provide a custom client-side monitoring publisher class. By default, will use the Client Side Monitoring Agent Publisher.

  • :convert_params (Boolean) — default: true

    When true, an attempt is made to coerce request parameters into the required types.

  • :correct_clock_skew (Boolean) — default: true

    Used only in standard and adaptive retry modes. Specifies whether to apply a clock skew correction and retry requests with skewed client clocks.

  • :disable_host_prefix_injection (Boolean) — default: false

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available.

  • :endpoint (String)

    The client endpoint is normally constructed from the :region option. You should only configure an :endpoint when connecting to test or custom endpoints. This should be a valid HTTP(S) URI.

  • :endpoint_cache_max_entries (Integer) — default: 1000

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000.

  • :endpoint_cache_max_threads (Integer) — default: 10

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.

  • :endpoint_cache_poll_interval (Integer) — default: 60

    When :endpoint_discovery and :active_endpoint_cache is enabled, Use this option to config the time interval in seconds for making requests fetching endpoints information. Defaults to 60 sec.

  • :endpoint_discovery (Boolean) — default: false

    When set to true, endpoint discovery will be enabled for operations when available.

  • :log_formatter (Aws::Log::Formatter) — default: Aws::Log::Formatter.default

    The log formatter.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the :logger at.

  • :logger (Logger)

    The Logger instance to send log messages to. If this option is not set, logging will be disabled.

  • :max_attempts (Integer) — default: 3

    An integer representing the maximum number attempts that will be made for a single request, including the initial attempt. For example, setting this value to 5 will result in a request being retried up to 4 times. Used in standard and adaptive retry modes.

  • :profile (String) — default: "default"

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, 'default' is used.

  • :retry_backoff (Proc)

    A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. This option is only used in the legacy retry mode.

  • :retry_base_delay (Float) — default: 0.3

    The base delay in seconds used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_jitter (Symbol) — default: :none

    A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number. This option is only used in the legacy retry mode.

    @see https://www.awsarchitectureblog.com/2015/03/backoff.html

  • :retry_limit (Integer) — default: 3

    The maximum number of times to retry failed requests. Only ~ 500 level server errors and certain ~ 400 level client errors are retried. Generally, these are throttling errors, data checksum errors, networking errors, timeout errors, auth errors, endpoint discovery, and errors from expired credentials. This option is only used in the legacy retry mode.

  • :retry_max_delay (Integer) — default: 0

    The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_mode (String) — default: "legacy"

    Specifies which retry algorithm to use. Values are:

    • legacy - The pre-existing retry behavior. This is default value if no retry mode is provided.

    • standard - A standardized set of retry rules across the AWS SDKs. This includes support for retry quotas, which limit the number of unsuccessful retries a client can make.

    • adaptive - An experimental retry mode that includes all the functionality of standard mode along with automatic client side throttling. This is a provisional mode that may change behavior in the future.

  • :secret_access_key (String)
  • :session_token (String)
  • :stub_responses (Boolean) — default: false

    Causes the client to return stubbed responses. By default fake responses are generated and returned. You can specify the response data to return or errors to raise by calling ClientStubs#stub_responses. See ClientStubs for more information.

    Please note When response stubbing is enabled, no HTTP requests are made, and retries are disabled.

  • :validate_params (Boolean) — default: true

    When true, request parameters are validated before sending the request.

  • :http_proxy (URI::HTTP, String)

    A proxy to send requests through. Formatted like 'http://proxy.com:123'.

  • :http_open_timeout (Float) — default: 15

    The number of seconds to wait when opening a HTTP session before raising a Timeout::Error.

  • :http_read_timeout (Integer) — default: 60

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_idle_timeout (Float) — default: 5

    The number of seconds a connection is allowed to sit idle before it is considered stale. Stale connections are closed and removed from the pool before making a request.

  • :http_continue_timeout (Float) — default: 1

    The number of seconds to wait for a 100-continue response before sending the request body. This option has no effect unless the request has "Expect" header set to "100-continue". Defaults to nil which disables this behaviour. This value can safely be set per request on the session.

  • :http_wire_trace (Boolean) — default: false

    When true, HTTP debug output will be sent to the :logger.

  • :ssl_verify_peer (Boolean) — default: true

    When true, SSL peer certificates are verified when establishing a connection.

  • :ssl_ca_bundle (String)

    Full path to the SSL certificate authority bundle file that should be used when verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.

  • :ssl_ca_directory (String)

    Full path of the directory that contains the unbundled SSL certificate authority files for verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.



324
325
326
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 324

def initialize(*args)
  super
end

Instance Method Details

#cancel_image_creation(params = {}) ⇒ Types::CancelImageCreationResponse

CancelImageCreation cancels the creation of Image. This operation can only be used on images in a non-terminal state.

Examples:

Request syntax with placeholder values


resp = client.cancel_image_creation({
  image_build_version_arn: "ImageBuildVersionArn", # required
  client_token: "ClientToken", # required
})

Response structure


resp.request_id #=> String
resp.client_token #=> String
resp.image_build_version_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :image_build_version_arn (required, String)

    The Amazon Resource Name (ARN) of the image whose creation you want to cancel.

  • :client_token (required, String)

    The idempotency token used to make this request idempotent.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

Returns:

See Also:



366
367
368
369
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 366

def cancel_image_creation(params = {}, options = {})
  req = build_request(:cancel_image_creation, params)
  req.send_request(options)
end

#create_component(params = {}) ⇒ Types::CreateComponentResponse

Creates a new component that can be used to build, validate, test, and assess your image.

Examples:

Request syntax with placeholder values


resp = client.create_component({
  name: "ResourceName", # required
  semantic_version: "VersionNumber", # required
  description: "NonEmptyString",
  change_description: "NonEmptyString",
  platform: "Windows", # required, accepts Windows, Linux
  supported_os_versions: ["OsVersion"],
  data: "InlineComponentData",
  uri: "Uri",
  kms_key_id: "NonEmptyString",
  tags: {
    "TagKey" => "TagValue",
  },
  client_token: "ClientToken", # required
})

Response structure


resp.request_id #=> String
resp.client_token #=> String
resp.component_build_version_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the component.

  • :semantic_version (required, String)

    The semantic version of the component. This version follows the semantic version syntax. For example, major.minor.patch. This could be versioned like software (2.0.1) or like a date (2019.12.01).

  • :description (String)

    The description of the component. Describes the contents of the component.

  • :change_description (String)

    The change description of the component. Describes what change has been made in this version, or what makes this version different from other versions of this component.

  • :platform (required, String)

    The platform of the component.

  • :supported_os_versions (Array<String>)

    The operating system (OS) version supported by the component. If the OS information is available, a prefix match is performed against the parent image OS version during image recipe creation.

  • :data (String)

    The data of the component. Used to specify the data inline. Either data or uri can be used to specify the data within the component.

  • :uri (String)

    The uri of the component. Must be an S3 URL and the requester must have permission to access the S3 bucket. If you use S3, you can specify component content up to your service quota. Either data or uri can be used to specify the data within the component.

  • :kms_key_id (String)

    The ID of the KMS key that should be used to encrypt this component.

  • :tags (Hash<String,String>)

    The tags of the component.

  • :client_token (required, String)

    The idempotency token of the component.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

Returns:

See Also:



455
456
457
458
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 455

def create_component(params = {}, options = {})
  req = build_request(:create_component, params)
  req.send_request(options)
end

#create_distribution_configuration(params = {}) ⇒ Types::CreateDistributionConfigurationResponse

Creates a new distribution configuration. Distribution configurations define and configure the outputs of your pipeline.

Examples:

Request syntax with placeholder values


resp = client.create_distribution_configuration({
  name: "ResourceName", # required
  description: "NonEmptyString",
  distributions: [ # required
    {
      region: "NonEmptyString", # required
      ami_distribution_configuration: {
        name: "AmiNameString",
        description: "NonEmptyString",
        target_account_ids: ["AccountId"],
        ami_tags: {
          "TagKey" => "TagValue",
        },
        kms_key_id: "NonEmptyString",
        launch_permission: {
          user_ids: ["AccountId"],
          user_groups: ["NonEmptyString"],
        },
      },
      license_configuration_arns: ["LicenseConfigurationArn"],
    },
  ],
  tags: {
    "TagKey" => "TagValue",
  },
  client_token: "ClientToken", # required
})

Response structure


resp.request_id #=> String
resp.client_token #=> String
resp.distribution_configuration_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the distribution configuration.

  • :description (String)

    The description of the distribution configuration.

  • :distributions (required, Array<Types::Distribution>)

    The distributions of the distribution configuration.

  • :tags (Hash<String,String>)

    The tags of the distribution configuration.

  • :client_token (required, String)

    The idempotency token of the distribution configuration.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

Returns:

See Also:



527
528
529
530
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 527

def create_distribution_configuration(params = {}, options = {})
  req = build_request(:create_distribution_configuration, params)
  req.send_request(options)
end

#create_image(params = {}) ⇒ Types::CreateImageResponse

Creates a new image. This request will create a new image along with all of the configured output resources defined in the distribution configuration.

Examples:

Request syntax with placeholder values


resp = client.create_image({
  image_recipe_arn: "ImageRecipeArn", # required
  distribution_configuration_arn: "DistributionConfigurationArn",
  infrastructure_configuration_arn: "InfrastructureConfigurationArn", # required
  image_tests_configuration: {
    image_tests_enabled: false,
    timeout_minutes: 1,
  },
  enhanced_image_metadata_enabled: false,
  tags: {
    "TagKey" => "TagValue",
  },
  client_token: "ClientToken", # required
})

Response structure


resp.request_id #=> String
resp.client_token #=> String
resp.image_build_version_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :image_recipe_arn (required, String)

    The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed.

  • :distribution_configuration_arn (String)

    The Amazon Resource Name (ARN) of the distribution configuration that defines and configures the outputs of your pipeline.

  • :infrastructure_configuration_arn (required, String)

    The Amazon Resource Name (ARN) of the infrastructure configuration that defines the environment in which your image will be built and tested.

  • :image_tests_configuration (Types::ImageTestsConfiguration)

    The image tests configuration of the image.

  • :enhanced_image_metadata_enabled (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.

  • :tags (Hash<String,String>)

    The tags of the image.

  • :client_token (required, String)

    The idempotency token used to make this request idempotent.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

Returns:

See Also:



600
601
602
603
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 600

def create_image(params = {}, options = {})
  req = build_request(:create_image, params)
  req.send_request(options)
end

#create_image_pipeline(params = {}) ⇒ Types::CreateImagePipelineResponse

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

Examples:

Request syntax with placeholder values


resp = client.create_image_pipeline({
  name: "ResourceName", # required
  description: "NonEmptyString",
  image_recipe_arn: "ImageRecipeArn", # required
  infrastructure_configuration_arn: "InfrastructureConfigurationArn", # required
  distribution_configuration_arn: "DistributionConfigurationArn",
  image_tests_configuration: {
    image_tests_enabled: false,
    timeout_minutes: 1,
  },
  enhanced_image_metadata_enabled: false,
  schedule: {
    schedule_expression: "NonEmptyString",
    pipeline_execution_start_condition: "EXPRESSION_MATCH_ONLY", # accepts EXPRESSION_MATCH_ONLY, EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE
  },
  status: "DISABLED", # accepts DISABLED, ENABLED
  tags: {
    "TagKey" => "TagValue",
  },
  client_token: "ClientToken", # required
})

Response structure


resp.request_id #=> String
resp.client_token #=> String
resp.image_pipeline_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the image pipeline.

  • :description (String)

    The description of the image pipeline.

  • :image_recipe_arn (required, String)

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

  • :infrastructure_configuration_arn (required, String)

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

  • :distribution_configuration_arn (String)

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

  • :image_tests_configuration (Types::ImageTestsConfiguration)

    The image test configuration of the image pipeline.

  • :enhanced_image_metadata_enabled (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 (Types::Schedule)

    The schedule of the image pipeline.

  • :status (String)

    The status of the image pipeline.

  • :tags (Hash<String,String>)

    The tags of the image pipeline.

  • :client_token (required, String)

    The idempotency token used to make this request idempotent.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

Returns:

See Also:



691
692
693
694
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 691

def create_image_pipeline(params = {}, options = {})
  req = build_request(:create_image_pipeline, params)
  req.send_request(options)
end

#create_image_recipe(params = {}) ⇒ Types::CreateImageRecipeResponse

Creates a new image recipe. Image recipes define how images are configured, tested, and assessed.

Examples:

Request syntax with placeholder values


resp = client.create_image_recipe({
  name: "ResourceName", # required
  description: "NonEmptyString",
  semantic_version: "VersionNumber", # required
  components: [ # required
    {
      component_arn: "ComponentVersionArnOrBuildVersionArn", # required
    },
  ],
  parent_image: "NonEmptyString", # required
  block_device_mappings: [
    {
      device_name: "NonEmptyString",
      ebs: {
        encrypted: false,
        delete_on_termination: false,
        iops: 1,
        kms_key_id: "NonEmptyString",
        snapshot_id: "NonEmptyString",
        volume_size: 1,
        volume_type: "standard", # accepts standard, io1, io2, gp2, sc1, st1
      },
      virtual_name: "NonEmptyString",
      no_device: "EmptyString",
    },
  ],
  tags: {
    "TagKey" => "TagValue",
  },
  working_directory: "NonEmptyString",
  client_token: "ClientToken", # required
})

Response structure


resp.request_id #=> String
resp.client_token #=> String
resp.image_recipe_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the image recipe.

  • :description (String)

    The description of the image recipe.

  • :semantic_version (required, String)

    The semantic version of the image recipe.

  • :components (required, Array<Types::ComponentConfiguration>)

    The components of the image recipe.

  • :parent_image (required, String)

    The parent image of the image recipe. The value of the string can be the ARN of the parent image or an AMI ID. The format for the ARN follows this example: arn:aws:imagebuilder:us-west-2:aws:image/windows-server-2016-english-full-base-x86/xxxx.x.x. You can provide the specific version that you want to use, or you can use a wildcard in all of the fields. If you enter an AMI ID for the string value, you must have access to the AMI, and the AMI must be in the same Region in which you are using Image Builder.

  • :block_device_mappings (Array<Types::InstanceBlockDeviceMapping>)

    The block device mappings of the image recipe.

  • :tags (Hash<String,String>)

    The tags of the image recipe.

  • :working_directory (String)

    The working directory to be used during build and test workflows.

  • :client_token (required, String)

    The idempotency token used to make this request idempotent.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

Returns:

See Also:



787
788
789
790
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 787

def create_image_recipe(params = {}, options = {})
  req = build_request(:create_image_recipe, params)
  req.send_request(options)
end

#create_infrastructure_configuration(params = {}) ⇒ Types::CreateInfrastructureConfigurationResponse

Creates a new infrastructure configuration. An infrastructure configuration defines the environment in which your image will be built and tested.

Examples:

Request syntax with placeholder values


resp = client.create_infrastructure_configuration({
  name: "ResourceName", # required
  description: "NonEmptyString",
  instance_types: ["InstanceType"],
  instance_profile_name: "NonEmptyString", # required
  security_group_ids: ["NonEmptyString"],
  subnet_id: "NonEmptyString",
  logging: {
    s3_logs: {
      s3_bucket_name: "NonEmptyString",
      s3_key_prefix: "NonEmptyString",
    },
  },
  key_pair: "NonEmptyString",
  terminate_instance_on_failure: false,
  sns_topic_arn: "SnsTopicArn",
  resource_tags: {
    "TagKey" => "TagValue",
  },
  tags: {
    "TagKey" => "TagValue",
  },
  client_token: "ClientToken", # required
})

Response structure


resp.request_id #=> String
resp.client_token #=> String
resp.infrastructure_configuration_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the infrastructure configuration.

  • :description (String)

    The description of the infrastructure configuration.

  • :instance_types (Array<String>)

    The instance types of the infrastructure configuration. You can specify one or more instance types to use for this build. The service will pick one of these instance types based on availability.

  • :instance_profile_name (required, String)

    The instance profile to associate with the instance used to customize your EC2 AMI.

  • :security_group_ids (Array<String>)

    The security group IDs to associate with the instance used to customize your EC2 AMI.

  • :subnet_id (String)

    The subnet ID in which to place the instance used to customize your EC2 AMI.

  • :logging (Types::Logging)

    The logging configuration of the infrastructure configuration.

  • :key_pair (String)

    The key pair of the infrastructure configuration. This can be used to log on to and debug the instance used to create your image.

  • :terminate_instance_on_failure (Boolean)

    The terminate instance on failure setting of the infrastructure configuration. Set to false if you want Image Builder to retain the instance used to configure your AMI if the build or test phase of your workflow fails.

  • :sns_topic_arn (String)

    The SNS topic on which to send image build events.

  • :resource_tags (Hash<String,String>)

    The tags attached to the resource created by Image Builder.

  • :tags (Hash<String,String>)

    The tags of the infrastructure configuration.

  • :client_token (required, String)

    The idempotency token used to make this request idempotent.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

Returns:

See Also:



890
891
892
893
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 890

def create_infrastructure_configuration(params = {}, options = {})
  req = build_request(:create_infrastructure_configuration, params)
  req.send_request(options)
end

#delete_component(params = {}) ⇒ Types::DeleteComponentResponse

Deletes a component build version.

Examples:

Request syntax with placeholder values


resp = client.delete_component({
  component_build_version_arn: "ComponentBuildVersionArn", # required
})

Response structure


resp.request_id #=> String
resp.component_build_version_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :component_build_version_arn (required, String)

    The Amazon Resource Name (ARN) of the component build version to delete.

Returns:

See Also:



921
922
923
924
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 921

def delete_component(params = {}, options = {})
  req = build_request(:delete_component, params)
  req.send_request(options)
end

#delete_distribution_configuration(params = {}) ⇒ Types::DeleteDistributionConfigurationResponse

Deletes a distribution configuration.

Examples:

Request syntax with placeholder values


resp = client.delete_distribution_configuration({
  distribution_configuration_arn: "DistributionConfigurationArn", # required
})

Response structure


resp.request_id #=> String
resp.distribution_configuration_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :distribution_configuration_arn (required, String)

    The Amazon Resource Name (ARN) of the distribution configuration to delete.

Returns:

See Also:



952
953
954
955
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 952

def delete_distribution_configuration(params = {}, options = {})
  req = build_request(:delete_distribution_configuration, params)
  req.send_request(options)
end

#delete_image(params = {}) ⇒ Types::DeleteImageResponse

Deletes an image.

Examples:

Request syntax with placeholder values


resp = client.delete_image({
  image_build_version_arn: "ImageBuildVersionArn", # required
})

Response structure


resp.request_id #=> String
resp.image_build_version_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :image_build_version_arn (required, String)

    The Amazon Resource Name (ARN) of the image to delete.

Returns:

See Also:



982
983
984
985
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 982

def delete_image(params = {}, options = {})
  req = build_request(:delete_image, params)
  req.send_request(options)
end

#delete_image_pipeline(params = {}) ⇒ Types::DeleteImagePipelineResponse

Deletes an image pipeline.

Examples:

Request syntax with placeholder values


resp = client.delete_image_pipeline({
  image_pipeline_arn: "ImagePipelineArn", # required
})

Response structure


resp.request_id #=> String
resp.image_pipeline_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :image_pipeline_arn (required, String)

    The Amazon Resource Name (ARN) of the image pipeline to delete.

Returns:

See Also:



1012
1013
1014
1015
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1012

def delete_image_pipeline(params = {}, options = {})
  req = build_request(:delete_image_pipeline, params)
  req.send_request(options)
end

#delete_image_recipe(params = {}) ⇒ Types::DeleteImageRecipeResponse

Deletes an image recipe.

Examples:

Request syntax with placeholder values


resp = client.delete_image_recipe({
  image_recipe_arn: "ImageRecipeArn", # required
})

Response structure


resp.request_id #=> String
resp.image_recipe_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :image_recipe_arn (required, String)

    The Amazon Resource Name (ARN) of the image recipe to delete.

Returns:

See Also:



1042
1043
1044
1045
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1042

def delete_image_recipe(params = {}, options = {})
  req = build_request(:delete_image_recipe, params)
  req.send_request(options)
end

#delete_infrastructure_configuration(params = {}) ⇒ Types::DeleteInfrastructureConfigurationResponse

Deletes an infrastructure configuration.

Examples:

Request syntax with placeholder values


resp = client.delete_infrastructure_configuration({
  infrastructure_configuration_arn: "InfrastructureConfigurationArn", # required
})

Response structure


resp.request_id #=> String
resp.infrastructure_configuration_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :infrastructure_configuration_arn (required, String)

    The Amazon Resource Name (ARN) of the infrastructure configuration to delete.

Returns:

See Also:



1073
1074
1075
1076
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1073

def delete_infrastructure_configuration(params = {}, options = {})
  req = build_request(:delete_infrastructure_configuration, params)
  req.send_request(options)
end

#get_component(params = {}) ⇒ Types::GetComponentResponse

Gets a component object.

Examples:

Request syntax with placeholder values


resp = client.get_component({
  component_build_version_arn: "ComponentVersionArnOrBuildVersionArn", # required
})

Response structure


resp.request_id #=> String
resp.component.arn #=> String
resp.component.name #=> String
resp.component.version #=> String
resp.component.description #=> String
resp.component.change_description #=> String
resp.component.type #=> String, one of "BUILD", "TEST"
resp.component.platform #=> String, one of "Windows", "Linux"
resp.component.supported_os_versions #=> Array
resp.component.supported_os_versions[0] #=> String
resp.component.owner #=> String
resp.component.data #=> String
resp.component.kms_key_id #=> String
resp.component.encrypted #=> Boolean
resp.component.date_created #=> String
resp.component.tags #=> Hash
resp.component.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :component_build_version_arn (required, String)

    The Amazon Resource Name (ARN) of the component that you want to retrieve. Regex requires "/\d+$" suffix.

Returns:

See Also:



1119
1120
1121
1122
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1119

def get_component(params = {}, options = {})
  req = build_request(:get_component, params)
  req.send_request(options)
end

#get_component_policy(params = {}) ⇒ Types::GetComponentPolicyResponse

Gets a component policy.

Examples:

Request syntax with placeholder values


resp = client.get_component_policy({
  component_arn: "ComponentBuildVersionArn", # required
})

Response structure


resp.request_id #=> String
resp.policy #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :component_arn (required, String)

    The Amazon Resource Name (ARN) of the component whose policy you want to retrieve.

Returns:

See Also:



1150
1151
1152
1153
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1150

def get_component_policy(params = {}, options = {})
  req = build_request(:get_component_policy, params)
  req.send_request(options)
end

#get_distribution_configuration(params = {}) ⇒ Types::GetDistributionConfigurationResponse

Gets a distribution configuration.

Examples:

Request syntax with placeholder values


resp = client.get_distribution_configuration({
  distribution_configuration_arn: "DistributionConfigurationArn", # required
})

Response structure


resp.request_id #=> String
resp.distribution_configuration.arn #=> String
resp.distribution_configuration.name #=> String
resp.distribution_configuration.description #=> String
resp.distribution_configuration.distributions #=> Array
resp.distribution_configuration.distributions[0].region #=> String
resp.distribution_configuration.distributions[0].ami_distribution_configuration.name #=> String
resp.distribution_configuration.distributions[0].ami_distribution_configuration.description #=> String
resp.distribution_configuration.distributions[0].ami_distribution_configuration. #=> Array
resp.distribution_configuration.distributions[0].ami_distribution_configuration.[0] #=> String
resp.distribution_configuration.distributions[0].ami_distribution_configuration.ami_tags #=> Hash
resp.distribution_configuration.distributions[0].ami_distribution_configuration.ami_tags["TagKey"] #=> String
resp.distribution_configuration.distributions[0].ami_distribution_configuration.kms_key_id #=> String
resp.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.user_ids #=> Array
resp.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.user_ids[0] #=> String
resp.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.user_groups #=> Array
resp.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.user_groups[0] #=> String
resp.distribution_configuration.distributions[0].license_configuration_arns #=> Array
resp.distribution_configuration.distributions[0].license_configuration_arns[0] #=> String
resp.distribution_configuration.timeout_minutes #=> Integer
resp.distribution_configuration.date_created #=> String
resp.distribution_configuration.date_updated #=> String
resp.distribution_configuration.tags #=> Hash
resp.distribution_configuration.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :distribution_configuration_arn (required, String)

    The Amazon Resource Name (ARN) of the distribution configuration that you want to retrieve.

Returns:

See Also:



1203
1204
1205
1206
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1203

def get_distribution_configuration(params = {}, options = {})
  req = build_request(:get_distribution_configuration, params)
  req.send_request(options)
end

#get_image(params = {}) ⇒ Types::GetImageResponse

Gets an image.

Examples:

Request syntax with placeholder values


resp = client.get_image({
  image_build_version_arn: "ImageVersionArnOrBuildVersionArn", # required
})

Response structure


resp.request_id #=> String
resp.image.arn #=> String
resp.image.name #=> String
resp.image.version #=> String
resp.image.platform #=> String, one of "Windows", "Linux"
resp.image. #=> Boolean
resp.image.os_version #=> String
resp.image.state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED"
resp.image.state.reason #=> String
resp.image.image_recipe.arn #=> String
resp.image.image_recipe.name #=> String
resp.image.image_recipe.description #=> String
resp.image.image_recipe.platform #=> String, one of "Windows", "Linux"
resp.image.image_recipe.owner #=> String
resp.image.image_recipe.version #=> String
resp.image.image_recipe.components #=> Array
resp.image.image_recipe.components[0].component_arn #=> String
resp.image.image_recipe.parent_image #=> String
resp.image.image_recipe.block_device_mappings #=> Array
resp.image.image_recipe.block_device_mappings[0].device_name #=> String
resp.image.image_recipe.block_device_mappings[0].ebs.encrypted #=> Boolean
resp.image.image_recipe.block_device_mappings[0].ebs.delete_on_termination #=> Boolean
resp.image.image_recipe.block_device_mappings[0].ebs.iops #=> Integer
resp.image.image_recipe.block_device_mappings[0].ebs.kms_key_id #=> String
resp.image.image_recipe.block_device_mappings[0].ebs.snapshot_id #=> String
resp.image.image_recipe.block_device_mappings[0].ebs.volume_size #=> Integer
resp.image.image_recipe.block_device_mappings[0].ebs.volume_type #=> String, one of "standard", "io1", "io2", "gp2", "sc1", "st1"
resp.image.image_recipe.block_device_mappings[0].virtual_name #=> String
resp.image.image_recipe.block_device_mappings[0].no_device #=> String
resp.image.image_recipe.date_created #=> String
resp.image.image_recipe.tags #=> Hash
resp.image.image_recipe.tags["TagKey"] #=> String
resp.image.image_recipe.working_directory #=> String
resp.image.source_pipeline_name #=> String
resp.image.source_pipeline_arn #=> String
resp.image.infrastructure_configuration.arn #=> String
resp.image.infrastructure_configuration.name #=> String
resp.image.infrastructure_configuration.description #=> String
resp.image.infrastructure_configuration.instance_types #=> Array
resp.image.infrastructure_configuration.instance_types[0] #=> String
resp.image.infrastructure_configuration.instance_profile_name #=> String
resp.image.infrastructure_configuration.security_group_ids #=> Array
resp.image.infrastructure_configuration.security_group_ids[0] #=> String
resp.image.infrastructure_configuration.subnet_id #=> String
resp.image.infrastructure_configuration.logging.s3_logs.s3_bucket_name #=> String
resp.image.infrastructure_configuration.logging.s3_logs.s3_key_prefix #=> String
resp.image.infrastructure_configuration.key_pair #=> String
resp.image.infrastructure_configuration.terminate_instance_on_failure #=> Boolean
resp.image.infrastructure_configuration.sns_topic_arn #=> String
resp.image.infrastructure_configuration.date_created #=> String
resp.image.infrastructure_configuration.date_updated #=> String
resp.image.infrastructure_configuration.resource_tags #=> Hash
resp.image.infrastructure_configuration.resource_tags["TagKey"] #=> String
resp.image.infrastructure_configuration.tags #=> Hash
resp.image.infrastructure_configuration.tags["TagKey"] #=> String
resp.image.distribution_configuration.arn #=> String
resp.image.distribution_configuration.name #=> String
resp.image.distribution_configuration.description #=> String
resp.image.distribution_configuration.distributions #=> Array
resp.image.distribution_configuration.distributions[0].region #=> String
resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.name #=> String
resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.description #=> String
resp.image.distribution_configuration.distributions[0].ami_distribution_configuration. #=> Array
resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.[0] #=> String
resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.ami_tags #=> Hash
resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.ami_tags["TagKey"] #=> String
resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.kms_key_id #=> String
resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.user_ids #=> Array
resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.user_ids[0] #=> String
resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.user_groups #=> Array
resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.user_groups[0] #=> String
resp.image.distribution_configuration.distributions[0].license_configuration_arns #=> Array
resp.image.distribution_configuration.distributions[0].license_configuration_arns[0] #=> String
resp.image.distribution_configuration.timeout_minutes #=> Integer
resp.image.distribution_configuration.date_created #=> String
resp.image.distribution_configuration.date_updated #=> String
resp.image.distribution_configuration.tags #=> Hash
resp.image.distribution_configuration.tags["TagKey"] #=> String
resp.image.image_tests_configuration.image_tests_enabled #=> Boolean
resp.image.image_tests_configuration.timeout_minutes #=> Integer
resp.image.date_created #=> String
resp.image.output_resources.amis #=> Array
resp.image.output_resources.amis[0].region #=> String
resp.image.output_resources.amis[0].image #=> String
resp.image.output_resources.amis[0].name #=> String
resp.image.output_resources.amis[0].description #=> String
resp.image.output_resources.amis[0].state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED"
resp.image.output_resources.amis[0].state.reason #=> String
resp.image.output_resources.amis[0]. #=> String
resp.image.tags #=> Hash
resp.image.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :image_build_version_arn (required, String)

    The Amazon Resource Name (ARN) of the image that you want to retrieve.

Returns:

See Also:



1322
1323
1324
1325
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1322

def get_image(params = {}, options = {})
  req = build_request(:get_image, params)
  req.send_request(options)
end

#get_image_pipeline(params = {}) ⇒ Types::GetImagePipelineResponse

Gets an image pipeline.

Examples:

Request syntax with placeholder values


resp = client.get_image_pipeline({
  image_pipeline_arn: "ImagePipelineArn", # required
})

Response structure


resp.request_id #=> String
resp.image_pipeline.arn #=> String
resp.image_pipeline.name #=> String
resp.image_pipeline.description #=> String
resp.image_pipeline.platform #=> String, one of "Windows", "Linux"
resp.image_pipeline. #=> Boolean
resp.image_pipeline.image_recipe_arn #=> String
resp.image_pipeline.infrastructure_configuration_arn #=> String
resp.image_pipeline.distribution_configuration_arn #=> String
resp.image_pipeline.image_tests_configuration.image_tests_enabled #=> Boolean
resp.image_pipeline.image_tests_configuration.timeout_minutes #=> Integer
resp.image_pipeline.schedule.schedule_expression #=> String
resp.image_pipeline.schedule.pipeline_execution_start_condition #=> String, one of "EXPRESSION_MATCH_ONLY", "EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE"
resp.image_pipeline.status #=> String, one of "DISABLED", "ENABLED"
resp.image_pipeline.date_created #=> String
resp.image_pipeline.date_updated #=> String
resp.image_pipeline.date_last_run #=> String
resp.image_pipeline.date_next_run #=> String
resp.image_pipeline.tags #=> Hash
resp.image_pipeline.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :image_pipeline_arn (required, String)

    The Amazon Resource Name (ARN) of the image pipeline that you want to retrieve.

Returns:

See Also:



1371
1372
1373
1374
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1371

def get_image_pipeline(params = {}, options = {})
  req = build_request(:get_image_pipeline, params)
  req.send_request(options)
end

#get_image_policy(params = {}) ⇒ Types::GetImagePolicyResponse

Gets an image policy.

Examples:

Request syntax with placeholder values


resp = client.get_image_policy({
  image_arn: "ImageBuildVersionArn", # required
})

Response structure


resp.request_id #=> String
resp.policy #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :image_arn (required, String)

    The Amazon Resource Name (ARN) of the image whose policy you want to retrieve.

Returns:

See Also:



1402
1403
1404
1405
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1402

def get_image_policy(params = {}, options = {})
  req = build_request(:get_image_policy, params)
  req.send_request(options)
end

#get_image_recipe(params = {}) ⇒ Types::GetImageRecipeResponse

Gets an image recipe.

Examples:

Request syntax with placeholder values


resp = client.get_image_recipe({
  image_recipe_arn: "ImageRecipeArn", # required
})

Response structure


resp.request_id #=> String
resp.image_recipe.arn #=> String
resp.image_recipe.name #=> String
resp.image_recipe.description #=> String
resp.image_recipe.platform #=> String, one of "Windows", "Linux"
resp.image_recipe.owner #=> String
resp.image_recipe.version #=> String
resp.image_recipe.components #=> Array
resp.image_recipe.components[0].component_arn #=> String
resp.image_recipe.parent_image #=> String
resp.image_recipe.block_device_mappings #=> Array
resp.image_recipe.block_device_mappings[0].device_name #=> String
resp.image_recipe.block_device_mappings[0].ebs.encrypted #=> Boolean
resp.image_recipe.block_device_mappings[0].ebs.delete_on_termination #=> Boolean
resp.image_recipe.block_device_mappings[0].ebs.iops #=> Integer
resp.image_recipe.block_device_mappings[0].ebs.kms_key_id #=> String
resp.image_recipe.block_device_mappings[0].ebs.snapshot_id #=> String
resp.image_recipe.block_device_mappings[0].ebs.volume_size #=> Integer
resp.image_recipe.block_device_mappings[0].ebs.volume_type #=> String, one of "standard", "io1", "io2", "gp2", "sc1", "st1"
resp.image_recipe.block_device_mappings[0].virtual_name #=> String
resp.image_recipe.block_device_mappings[0].no_device #=> String
resp.image_recipe.date_created #=> String
resp.image_recipe.tags #=> Hash
resp.image_recipe.tags["TagKey"] #=> String
resp.image_recipe.working_directory #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :image_recipe_arn (required, String)

    The Amazon Resource Name (ARN) of the image recipe that you want to retrieve.

Returns:

See Also:



1456
1457
1458
1459
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1456

def get_image_recipe(params = {}, options = {})
  req = build_request(:get_image_recipe, params)
  req.send_request(options)
end

#get_image_recipe_policy(params = {}) ⇒ Types::GetImageRecipePolicyResponse

Gets an image recipe policy.

Examples:

Request syntax with placeholder values


resp = client.get_image_recipe_policy({
  image_recipe_arn: "ImageRecipeArn", # required
})

Response structure


resp.request_id #=> String
resp.policy #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :image_recipe_arn (required, String)

    The Amazon Resource Name (ARN) of the image recipe whose policy you want to retrieve.

Returns:

See Also:



1487
1488
1489
1490
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1487

def get_image_recipe_policy(params = {}, options = {})
  req = build_request(:get_image_recipe_policy, params)
  req.send_request(options)
end

#get_infrastructure_configuration(params = {}) ⇒ Types::GetInfrastructureConfigurationResponse

Gets an infrastructure configuration.

Examples:

Request syntax with placeholder values


resp = client.get_infrastructure_configuration({
  infrastructure_configuration_arn: "InfrastructureConfigurationArn", # required
})

Response structure


resp.request_id #=> String
resp.infrastructure_configuration.arn #=> String
resp.infrastructure_configuration.name #=> String
resp.infrastructure_configuration.description #=> String
resp.infrastructure_configuration.instance_types #=> Array
resp.infrastructure_configuration.instance_types[0] #=> String
resp.infrastructure_configuration.instance_profile_name #=> String
resp.infrastructure_configuration.security_group_ids #=> Array
resp.infrastructure_configuration.security_group_ids[0] #=> String
resp.infrastructure_configuration.subnet_id #=> String
resp.infrastructure_configuration.logging.s3_logs.s3_bucket_name #=> String
resp.infrastructure_configuration.logging.s3_logs.s3_key_prefix #=> String
resp.infrastructure_configuration.key_pair #=> String
resp.infrastructure_configuration.terminate_instance_on_failure #=> Boolean
resp.infrastructure_configuration.sns_topic_arn #=> String
resp.infrastructure_configuration.date_created #=> String
resp.infrastructure_configuration.date_updated #=> String
resp.infrastructure_configuration.resource_tags #=> Hash
resp.infrastructure_configuration.resource_tags["TagKey"] #=> String
resp.infrastructure_configuration.tags #=> Hash
resp.infrastructure_configuration.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :infrastructure_configuration_arn (required, String)

    The Amazon Resource Name (ARN) of the infrastructure configuration that you want to retrieve.

Returns:

See Also:



1537
1538
1539
1540
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1537

def get_infrastructure_configuration(params = {}, options = {})
  req = build_request(:get_infrastructure_configuration, params)
  req.send_request(options)
end

#import_component(params = {}) ⇒ Types::ImportComponentResponse

Imports a component and transforms its data into a component document.

Examples:

Request syntax with placeholder values


resp = client.import_component({
  name: "ResourceName", # required
  semantic_version: "VersionNumber", # required
  description: "NonEmptyString",
  change_description: "NonEmptyString",
  type: "BUILD", # required, accepts BUILD, TEST
  format: "SHELL", # required, accepts SHELL
  platform: "Windows", # required, accepts Windows, Linux
  data: "NonEmptyString",
  uri: "Uri",
  kms_key_id: "NonEmptyString",
  tags: {
    "TagKey" => "TagValue",
  },
  client_token: "ClientToken", # required
})

Response structure


resp.request_id #=> String
resp.client_token #=> String
resp.component_build_version_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the component.

  • :semantic_version (required, String)

    The semantic version of the component. This version follows the semantic version syntax. For example, major.minor.patch. This could be versioned like software (2.0.1) or like a date (2019.12.01).

  • :description (String)

    The description of the component. Describes the contents of the component.

  • :change_description (String)

    The change description of the component. Describes what change has been made in this version, or what makes this version different from other versions of this component.

  • :type (required, String)

    The type of the component denotes whether the component is used to build the image or only to test it.

  • :format (required, String)

    The format of the resource that you want to import as a component.

  • :platform (required, String)

    The platform of the component.

  • :data (String)

    The data of the component. Used to specify the data inline. Either data or uri can be used to specify the data within the component.

  • :uri (String)

    The uri of the component. Must be an S3 URL and the requester must have permission to access the S3 bucket. If you use S3, you can specify component content up to your service quota. Either data or uri can be used to specify the data within the component.

  • :kms_key_id (String)

    The ID of the KMS key that should be used to encrypt this component.

  • :tags (Hash<String,String>)

    The tags of the component.

  • :client_token (required, String)

    The idempotency token of the component.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

Returns:

See Also:



1628
1629
1630
1631
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1628

def import_component(params = {}, options = {})
  req = build_request(:import_component, params)
  req.send_request(options)
end

#list_component_build_versions(params = {}) ⇒ Types::ListComponentBuildVersionsResponse

Returns the list of component build versions for the specified semantic version.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_component_build_versions({
  component_version_arn: "ComponentVersionArn", # required
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.request_id #=> String
resp.component_summary_list #=> Array
resp.component_summary_list[0].arn #=> String
resp.component_summary_list[0].name #=> String
resp.component_summary_list[0].version #=> String
resp.component_summary_list[0].platform #=> String, one of "Windows", "Linux"
resp.component_summary_list[0].supported_os_versions #=> Array
resp.component_summary_list[0].supported_os_versions[0] #=> String
resp.component_summary_list[0].type #=> String, one of "BUILD", "TEST"
resp.component_summary_list[0].owner #=> String
resp.component_summary_list[0].description #=> String
resp.component_summary_list[0].change_description #=> String
resp.component_summary_list[0].date_created #=> String
resp.component_summary_list[0].tags #=> Hash
resp.component_summary_list[0].tags["TagKey"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :component_version_arn (required, String)

    The component version Amazon Resource Name (ARN) whose versions you want to list.

  • :max_results (Integer)

    The maximum items to return in a request.

  • :next_token (String)

    A token to specify where to start paginating. This is the NextToken from a previously truncated response.

Returns:

See Also:



1686
1687
1688
1689
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1686

def list_component_build_versions(params = {}, options = {})
  req = build_request(:list_component_build_versions, params)
  req.send_request(options)
end

#list_components(params = {}) ⇒ Types::ListComponentsResponse

Returns the list of component build versions for the specified semantic version.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_components({
  owner: "Self", # accepts Self, Shared, Amazon
  filters: [
    {
      name: "FilterName",
      values: ["FilterValue"],
    },
  ],
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.request_id #=> String
resp.component_version_list #=> Array
resp.component_version_list[0].arn #=> String
resp.component_version_list[0].name #=> String
resp.component_version_list[0].version #=> String
resp.component_version_list[0].description #=> String
resp.component_version_list[0].platform #=> String, one of "Windows", "Linux"
resp.component_version_list[0].supported_os_versions #=> Array
resp.component_version_list[0].supported_os_versions[0] #=> String
resp.component_version_list[0].type #=> String, one of "BUILD", "TEST"
resp.component_version_list[0].owner #=> String
resp.component_version_list[0].date_created #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :owner (String)

    The owner defines which components you want to list. By default, this request will only show components owned by your account. You can use this field to specify if you want to view components owned by yourself, by Amazon, or those components that have been shared with you by other customers.

  • :filters (Array<Types::Filter>)

    The filters.

  • :max_results (Integer)

    The maximum items to return in a request.

  • :next_token (String)

    A token to specify where to start paginating. This is the NextToken from a previously truncated response.

Returns:

See Also:



1753
1754
1755
1756
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1753

def list_components(params = {}, options = {})
  req = build_request(:list_components, params)
  req.send_request(options)
end

#list_distribution_configurations(params = {}) ⇒ Types::ListDistributionConfigurationsResponse

Returns a list of distribution configurations.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_distribution_configurations({
  filters: [
    {
      name: "FilterName",
      values: ["FilterValue"],
    },
  ],
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.request_id #=> String
resp.distribution_configuration_summary_list #=> Array
resp.distribution_configuration_summary_list[0].arn #=> String
resp.distribution_configuration_summary_list[0].name #=> String
resp.distribution_configuration_summary_list[0].description #=> String
resp.distribution_configuration_summary_list[0].date_created #=> String
resp.distribution_configuration_summary_list[0].date_updated #=> String
resp.distribution_configuration_summary_list[0].tags #=> Hash
resp.distribution_configuration_summary_list[0].tags["TagKey"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filters (Array<Types::Filter>)

    The filters.

    • name - The name of this distribution configuration.

    ^

  • :max_results (Integer)

    The maximum items to return in a request.

  • :next_token (String)

    A token to specify where to start paginating. This is the NextToken from a previously truncated response.

Returns:

See Also:



1812
1813
1814
1815
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1812

def list_distribution_configurations(params = {}, options = {})
  req = build_request(:list_distribution_configurations, params)
  req.send_request(options)
end

#list_image_build_versions(params = {}) ⇒ Types::ListImageBuildVersionsResponse

Returns a list of image build versions.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_image_build_versions({
  image_version_arn: "ImageVersionArn", # required
  filters: [
    {
      name: "FilterName",
      values: ["FilterValue"],
    },
  ],
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.request_id #=> String
resp.image_summary_list #=> Array
resp.image_summary_list[0].arn #=> String
resp.image_summary_list[0].name #=> String
resp.image_summary_list[0].version #=> String
resp.image_summary_list[0].platform #=> String, one of "Windows", "Linux"
resp.image_summary_list[0].os_version #=> String
resp.image_summary_list[0].state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED"
resp.image_summary_list[0].state.reason #=> String
resp.image_summary_list[0].owner #=> String
resp.image_summary_list[0].date_created #=> String
resp.image_summary_list[0].output_resources.amis #=> Array
resp.image_summary_list[0].output_resources.amis[0].region #=> String
resp.image_summary_list[0].output_resources.amis[0].image #=> String
resp.image_summary_list[0].output_resources.amis[0].name #=> String
resp.image_summary_list[0].output_resources.amis[0].description #=> String
resp.image_summary_list[0].output_resources.amis[0].state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED"
resp.image_summary_list[0].output_resources.amis[0].state.reason #=> String
resp.image_summary_list[0].output_resources.amis[0]. #=> String
resp.image_summary_list[0].tags #=> Hash
resp.image_summary_list[0].tags["TagKey"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :image_version_arn (required, String)

    The Amazon Resource Name (ARN) of the image whose build versions you want to retrieve.

  • :filters (Array<Types::Filter>)

    The filters.

  • :max_results (Integer)

    The maximum items to return in a request.

  • :next_token (String)

    A token to specify where to start paginating. This is the NextToken from a previously truncated response.

Returns:

See Also:



1884
1885
1886
1887
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1884

def list_image_build_versions(params = {}, options = {})
  req = build_request(:list_image_build_versions, params)
  req.send_request(options)
end

#list_image_pipeline_images(params = {}) ⇒ Types::ListImagePipelineImagesResponse

Returns a list of images created by the specified pipeline.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_image_pipeline_images({
  image_pipeline_arn: "ImagePipelineArn", # required
  filters: [
    {
      name: "FilterName",
      values: ["FilterValue"],
    },
  ],
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.request_id #=> String
resp.image_summary_list #=> Array
resp.image_summary_list[0].arn #=> String
resp.image_summary_list[0].name #=> String
resp.image_summary_list[0].version #=> String
resp.image_summary_list[0].platform #=> String, one of "Windows", "Linux"
resp.image_summary_list[0].os_version #=> String
resp.image_summary_list[0].state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED"
resp.image_summary_list[0].state.reason #=> String
resp.image_summary_list[0].owner #=> String
resp.image_summary_list[0].date_created #=> String
resp.image_summary_list[0].output_resources.amis #=> Array
resp.image_summary_list[0].output_resources.amis[0].region #=> String
resp.image_summary_list[0].output_resources.amis[0].image #=> String
resp.image_summary_list[0].output_resources.amis[0].name #=> String
resp.image_summary_list[0].output_resources.amis[0].description #=> String
resp.image_summary_list[0].output_resources.amis[0].state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED"
resp.image_summary_list[0].output_resources.amis[0].state.reason #=> String
resp.image_summary_list[0].output_resources.amis[0]. #=> String
resp.image_summary_list[0].tags #=> Hash
resp.image_summary_list[0].tags["TagKey"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :image_pipeline_arn (required, String)

    The Amazon Resource Name (ARN) of the image pipeline whose images you want to view.

  • :filters (Array<Types::Filter>)

    The filters.

  • :max_results (Integer)

    The maximum items to return in a request.

  • :next_token (String)

    A token to specify where to start paginating. This is the NextToken from a previously truncated response.

Returns:

See Also:



1956
1957
1958
1959
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 1956

def list_image_pipeline_images(params = {}, options = {})
  req = build_request(:list_image_pipeline_images, params)
  req.send_request(options)
end

#list_image_pipelines(params = {}) ⇒ Types::ListImagePipelinesResponse

Returns a list of image pipelines.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_image_pipelines({
  filters: [
    {
      name: "FilterName",
      values: ["FilterValue"],
    },
  ],
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.request_id #=> String
resp.image_pipeline_list #=> Array
resp.image_pipeline_list[0].arn #=> String
resp.image_pipeline_list[0].name #=> String
resp.image_pipeline_list[0].description #=> String
resp.image_pipeline_list[0].platform #=> String, one of "Windows", "Linux"
resp.image_pipeline_list[0]. #=> Boolean
resp.image_pipeline_list[0].image_recipe_arn #=> String
resp.image_pipeline_list[0].infrastructure_configuration_arn #=> String
resp.image_pipeline_list[0].distribution_configuration_arn #=> String
resp.image_pipeline_list[0].image_tests_configuration.image_tests_enabled #=> Boolean
resp.image_pipeline_list[0].image_tests_configuration.timeout_minutes #=> Integer
resp.image_pipeline_list[0].schedule.schedule_expression #=> String
resp.image_pipeline_list[0].schedule.pipeline_execution_start_condition #=> String, one of "EXPRESSION_MATCH_ONLY", "EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE"
resp.image_pipeline_list[0].status #=> String, one of "DISABLED", "ENABLED"
resp.image_pipeline_list[0].date_created #=> String
resp.image_pipeline_list[0].date_updated #=> String
resp.image_pipeline_list[0].date_last_run #=> String
resp.image_pipeline_list[0].date_next_run #=> String
resp.image_pipeline_list[0].tags #=> Hash
resp.image_pipeline_list[0].tags["TagKey"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filters (Array<Types::Filter>)

    The filters.

  • :max_results (Integer)

    The maximum items to return in a request.

  • :next_token (String)

    A token to specify where to start paginating. This is the NextToken from a previously truncated response.

Returns:

See Also:



2023
2024
2025
2026
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 2023

def list_image_pipelines(params = {}, options = {})
  req = build_request(:list_image_pipelines, params)
  req.send_request(options)
end

#list_image_recipes(params = {}) ⇒ Types::ListImageRecipesResponse

Returns a list of image recipes.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_image_recipes({
  owner: "Self", # accepts Self, Shared, Amazon
  filters: [
    {
      name: "FilterName",
      values: ["FilterValue"],
    },
  ],
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.request_id #=> String
resp.image_recipe_summary_list #=> Array
resp.image_recipe_summary_list[0].arn #=> String
resp.image_recipe_summary_list[0].name #=> String
resp.image_recipe_summary_list[0].platform #=> String, one of "Windows", "Linux"
resp.image_recipe_summary_list[0].owner #=> String
resp.image_recipe_summary_list[0].parent_image #=> String
resp.image_recipe_summary_list[0].date_created #=> String
resp.image_recipe_summary_list[0].tags #=> Hash
resp.image_recipe_summary_list[0].tags["TagKey"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :owner (String)

    The owner defines which image recipes you want to list. By default, this request will only show image recipes owned by your account. You can use this field to specify if you want to view image recipes owned by yourself, by Amazon, or those image recipes that have been shared with you by other customers.

  • :filters (Array<Types::Filter>)

    The filters.

  • :max_results (Integer)

    The maximum items to return in a request.

  • :next_token (String)

    A token to specify where to start paginating. This is the NextToken from a previously truncated response.

Returns:

See Also:



2087
2088
2089
2090
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 2087

def list_image_recipes(params = {}, options = {})
  req = build_request(:list_image_recipes, params)
  req.send_request(options)
end

#list_images(params = {}) ⇒ Types::ListImagesResponse

Returns the list of images that you have access to.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_images({
  owner: "Self", # accepts Self, Shared, Amazon
  filters: [
    {
      name: "FilterName",
      values: ["FilterValue"],
    },
  ],
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.request_id #=> String
resp.image_version_list #=> Array
resp.image_version_list[0].arn #=> String
resp.image_version_list[0].name #=> String
resp.image_version_list[0].version #=> String
resp.image_version_list[0].platform #=> String, one of "Windows", "Linux"
resp.image_version_list[0].os_version #=> String
resp.image_version_list[0].owner #=> String
resp.image_version_list[0].date_created #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :owner (String)

    The owner defines which images you want to list. By default, this request will only show images owned by your account. You can use this field to specify if you want to view images owned by yourself, by Amazon, or those images that have been shared with you by other customers.

  • :filters (Array<Types::Filter>)

    The filters.

  • :max_results (Integer)

    The maximum items to return in a request.

  • :next_token (String)

    A token to specify where to start paginating. This is the NextToken from a previously truncated response.

Returns:

See Also:



2150
2151
2152
2153
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 2150

def list_images(params = {}, options = {})
  req = build_request(:list_images, params)
  req.send_request(options)
end

#list_infrastructure_configurations(params = {}) ⇒ Types::ListInfrastructureConfigurationsResponse

Returns a list of infrastructure configurations.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_infrastructure_configurations({
  filters: [
    {
      name: "FilterName",
      values: ["FilterValue"],
    },
  ],
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.request_id #=> String
resp.infrastructure_configuration_summary_list #=> Array
resp.infrastructure_configuration_summary_list[0].arn #=> String
resp.infrastructure_configuration_summary_list[0].name #=> String
resp.infrastructure_configuration_summary_list[0].description #=> String
resp.infrastructure_configuration_summary_list[0].date_created #=> String
resp.infrastructure_configuration_summary_list[0].date_updated #=> String
resp.infrastructure_configuration_summary_list[0].resource_tags #=> Hash
resp.infrastructure_configuration_summary_list[0].resource_tags["TagKey"] #=> String
resp.infrastructure_configuration_summary_list[0].tags #=> Hash
resp.infrastructure_configuration_summary_list[0].tags["TagKey"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filters (Array<Types::Filter>)

    The filters.

  • :max_results (Integer)

    The maximum items to return in a request.

  • :next_token (String)

    A token to specify where to start paginating. This is the NextToken from a previously truncated response.

Returns:

See Also:



2207
2208
2209
2210
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 2207

def list_infrastructure_configurations(params = {}, options = {})
  req = build_request(:list_infrastructure_configurations, params)
  req.send_request(options)
end

#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse

Returns the list of tags for the specified resource.

Examples:

Request syntax with placeholder values


resp = client.list_tags_for_resource({
  resource_arn: "ImageBuilderArn", # required
})

Response structure


resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource whose tags you want to retrieve.

Returns:

See Also:



2237
2238
2239
2240
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 2237

def list_tags_for_resource(params = {}, options = {})
  req = build_request(:list_tags_for_resource, params)
  req.send_request(options)
end

#put_component_policy(params = {}) ⇒ Types::PutComponentPolicyResponse

Applies a policy to a component. We recommend that you call the RAM API CreateResourceShare to share resources. If you call the Image Builder API PutComponentPolicy, you must also call the RAM API PromoteResourceShareCreatedFromPolicy in order for the resource to be visible to all principals with whom the resource is shared.

Examples:

Request syntax with placeholder values


resp = client.put_component_policy({
  component_arn: "ComponentBuildVersionArn", # required
  policy: "ResourcePolicyDocument", # required
})

Response structure


resp.request_id #=> String
resp.component_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :component_arn (required, String)

    The Amazon Resource Name (ARN) of the component that this policy should be applied to.

  • :policy (required, String)

    The policy to apply.

Returns:

See Also:



2281
2282
2283
2284
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 2281

def put_component_policy(params = {}, options = {})
  req = build_request(:put_component_policy, params)
  req.send_request(options)
end

#put_image_policy(params = {}) ⇒ Types::PutImagePolicyResponse

Applies a policy to an image. We recommend that you call the RAM API CreateResourceShare to share resources. If you call the Image Builder API PutImagePolicy, you must also call the RAM API PromoteResourceShareCreatedFromPolicy in order for the resource to be visible to all principals with whom the resource is shared.

Examples:

Request syntax with placeholder values


resp = client.put_image_policy({
  image_arn: "ImageBuildVersionArn", # required
  policy: "ResourcePolicyDocument", # required
})

Response structure


resp.request_id #=> String
resp.image_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :image_arn (required, String)

    The Amazon Resource Name (ARN) of the image that this policy should be applied to.

  • :policy (required, String)

    The policy to apply.

Returns:

See Also:



2325
2326
2327
2328
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 2325

def put_image_policy(params = {}, options = {})
  req = build_request(:put_image_policy, params)
  req.send_request(options)
end

#put_image_recipe_policy(params = {}) ⇒ Types::PutImageRecipePolicyResponse

Applies a policy to an image recipe. We recommend that you call the RAM API CreateResourceShare to share resources. If you call the Image Builder API PutImageRecipePolicy, you must also call the RAM API PromoteResourceShareCreatedFromPolicy in order for the resource to be visible to all principals with whom the resource is shared.

Examples:

Request syntax with placeholder values


resp = client.put_image_recipe_policy({
  image_recipe_arn: "ImageRecipeArn", # required
  policy: "ResourcePolicyDocument", # required
})

Response structure


resp.request_id #=> String
resp.image_recipe_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :image_recipe_arn (required, String)

    The Amazon Resource Name (ARN) of the image recipe that this policy should be applied to.

  • :policy (required, String)

    The policy to apply.

Returns:

See Also:



2370
2371
2372
2373
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 2370

def put_image_recipe_policy(params = {}, options = {})
  req = build_request(:put_image_recipe_policy, params)
  req.send_request(options)
end

#start_image_pipeline_execution(params = {}) ⇒ Types::StartImagePipelineExecutionResponse

Manually triggers a pipeline to create an image.

Examples:

Request syntax with placeholder values


resp = client.start_image_pipeline_execution({
  image_pipeline_arn: "ImagePipelineArn", # required
  client_token: "ClientToken", # required
})

Response structure


resp.request_id #=> String
resp.client_token #=> String
resp.image_build_version_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :image_pipeline_arn (required, String)

    The Amazon Resource Name (ARN) of the image pipeline that you want to manually invoke.

  • :client_token (required, String)

    The idempotency token used to make this request idempotent.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

Returns:

See Also:



2410
2411
2412
2413
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 2410

def start_image_pipeline_execution(params = {}, options = {})
  req = build_request(:start_image_pipeline_execution, params)
  req.send_request(options)
end

#tag_resource(params = {}) ⇒ Struct

Adds a tag to a resource.

Examples:

Request syntax with placeholder values


resp = client.tag_resource({
  resource_arn: "ImageBuilderArn", # required
  tags: { # required
    "TagKey" => "TagValue",
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource that you want to tag.

  • :tags (required, Hash<String,String>)

    The tags to apply to the resource.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2438
2439
2440
2441
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 2438

def tag_resource(params = {}, options = {})
  req = build_request(:tag_resource, params)
  req.send_request(options)
end

#untag_resource(params = {}) ⇒ Struct

Removes a tag from a resource.

Examples:

Request syntax with placeholder values


resp = client.untag_resource({
  resource_arn: "ImageBuilderArn", # required
  tag_keys: ["TagKey"], # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource that you want to untag.

  • :tag_keys (required, Array<String>)

    The tag keys to remove from the resource.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2464
2465
2466
2467
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 2464

def untag_resource(params = {}, options = {})
  req = build_request(:untag_resource, params)
  req.send_request(options)
end

#update_distribution_configuration(params = {}) ⇒ Types::UpdateDistributionConfigurationResponse

Updates a new distribution configuration. Distribution configurations define and configure the outputs of your pipeline.

Examples:

Request syntax with placeholder values


resp = client.update_distribution_configuration({
  distribution_configuration_arn: "DistributionConfigurationArn", # required
  description: "NonEmptyString",
  distributions: [ # required
    {
      region: "NonEmptyString", # required
      ami_distribution_configuration: {
        name: "AmiNameString",
        description: "NonEmptyString",
        target_account_ids: ["AccountId"],
        ami_tags: {
          "TagKey" => "TagValue",
        },
        kms_key_id: "NonEmptyString",
        launch_permission: {
          user_ids: ["AccountId"],
          user_groups: ["NonEmptyString"],
        },
      },
      license_configuration_arns: ["LicenseConfigurationArn"],
    },
  ],
  client_token: "ClientToken", # required
})

Response structure


resp.request_id #=> String
resp.client_token #=> String
resp.distribution_configuration_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :distribution_configuration_arn (required, String)

    The Amazon Resource Name (ARN) of the distribution configuration that you want to update.

  • :description (String)

    The description of the distribution configuration.

  • :distributions (required, Array<Types::Distribution>)

    The distributions of the distribution configuration.

  • :client_token (required, String)

    The idempotency token of the distribution configuration.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

Returns:

See Also:



2531
2532
2533
2534
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 2531

def update_distribution_configuration(params = {}, options = {})
  req = build_request(:update_distribution_configuration, params)
  req.send_request(options)
end

#update_image_pipeline(params = {}) ⇒ Types::UpdateImagePipelineResponse

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

Examples:

Request syntax with placeholder values


resp = client.update_image_pipeline({
  image_pipeline_arn: "ImagePipelineArn", # required
  description: "NonEmptyString",
  image_recipe_arn: "ImageRecipeArn", # required
  infrastructure_configuration_arn: "InfrastructureConfigurationArn", # required
  distribution_configuration_arn: "DistributionConfigurationArn",
  image_tests_configuration: {
    image_tests_enabled: false,
    timeout_minutes: 1,
  },
  enhanced_image_metadata_enabled: false,
  schedule: {
    schedule_expression: "NonEmptyString",
    pipeline_execution_start_condition: "EXPRESSION_MATCH_ONLY", # accepts EXPRESSION_MATCH_ONLY, EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE
  },
  status: "DISABLED", # accepts DISABLED, ENABLED
  client_token: "ClientToken", # required
})

Response structure


resp.request_id #=> String
resp.client_token #=> String
resp.image_pipeline_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :image_pipeline_arn (required, String)

    The Amazon Resource Name (ARN) of the image pipeline that you want to update.

  • :description (String)

    The description of the image pipeline.

  • :image_recipe_arn (required, String)

    The Amazon Resource Name (ARN) of the image recipe that will be used to configure images updated by this image pipeline.

  • :infrastructure_configuration_arn (required, String)

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

  • :distribution_configuration_arn (String)

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

  • :image_tests_configuration (Types::ImageTestsConfiguration)

    The image test configuration of the image pipeline.

  • :enhanced_image_metadata_enabled (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 (Types::Schedule)

    The schedule of the image pipeline.

  • :status (String)

    The status of the image pipeline.

  • :client_token (required, String)

    The idempotency token used to make this request idempotent.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

Returns:

See Also:



2617
2618
2619
2620
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 2617

def update_image_pipeline(params = {}, options = {})
  req = build_request(:update_image_pipeline, params)
  req.send_request(options)
end

#update_infrastructure_configuration(params = {}) ⇒ Types::UpdateInfrastructureConfigurationResponse

Updates a new infrastructure configuration. An infrastructure configuration defines the environment in which your image will be built and tested.

Examples:

Request syntax with placeholder values


resp = client.update_infrastructure_configuration({
  infrastructure_configuration_arn: "InfrastructureConfigurationArn", # required
  description: "NonEmptyString",
  instance_types: ["InstanceType"],
  instance_profile_name: "NonEmptyString", # required
  security_group_ids: ["NonEmptyString"],
  subnet_id: "NonEmptyString",
  logging: {
    s3_logs: {
      s3_bucket_name: "NonEmptyString",
      s3_key_prefix: "NonEmptyString",
    },
  },
  key_pair: "NonEmptyString",
  terminate_instance_on_failure: false,
  sns_topic_arn: "SnsTopicArn",
  client_token: "ClientToken", # required
  resource_tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.request_id #=> String
resp.client_token #=> String
resp.infrastructure_configuration_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :infrastructure_configuration_arn (required, String)

    The Amazon Resource Name (ARN) of the infrastructure configuration that you want to update.

  • :description (String)

    The description of the infrastructure configuration.

  • :instance_types (Array<String>)

    The instance types of the infrastructure configuration. You can specify one or more instance types to use for this build. The service will pick one of these instance types based on availability.

  • :instance_profile_name (required, String)

    The instance profile to associate with the instance used to customize your EC2 AMI.

  • :security_group_ids (Array<String>)

    The security group IDs to associate with the instance used to customize your EC2 AMI.

  • :subnet_id (String)

    The subnet ID to place the instance used to customize your EC2 AMI in.

  • :logging (Types::Logging)

    The logging configuration of the infrastructure configuration.

  • :key_pair (String)

    The key pair of the infrastructure configuration. This can be used to log on to and debug the instance used to create your image.

  • :terminate_instance_on_failure (Boolean)

    The terminate instance on failure setting of the infrastructure configuration. Set to false if you want Image Builder to retain the instance used to configure your AMI if the build or test phase of your workflow fails.

  • :sns_topic_arn (String)

    The SNS topic on which to send image build events.

  • :client_token (required, String)

    The idempotency token used to make this request idempotent.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :resource_tags (Hash<String,String>)

    The tags attached to the resource created by Image Builder.

Returns:

See Also:



2714
2715
2716
2717
# File 'gems/aws-sdk-imagebuilder/lib/aws-sdk-imagebuilder/client.rb', line 2714

def update_infrastructure_configuration(params = {}, options = {})
  req = build_request(:update_infrastructure_configuration, params)
  req.send_request(options)
end