You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.
Class: Aws::Imagebuilder::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::Imagebuilder::Client
- Defined in:
- (unknown)
Overview
An API client for EC2 Image Builder. To construct a client, you need to configure a :region
and :credentials
.
imagebuilder = Aws::Imagebuilder::Client.new(
region: region_name,
credentials: credentials,
# ...
)
See #initialize for a full list of supported configuration options.
Region
You can configure a default region in the following locations:
ENV['AWS_REGION']
Aws.config[:region]
Go here for a list of supported regions.
Credentials
Default credentials are loaded automatically from the following locations:
ENV['AWS_ACCESS_KEY_ID']
andENV['AWS_SECRET_ACCESS_KEY']
Aws.config[:credentials]
- The shared credentials ini file at
~/.aws/credentials
(more information) - From an instance profile when running on EC2
You can also construct a credentials object from one of the following classes:
Alternatively, you configure credentials with :access_key_id
and
:secret_access_key
:
# load credentials from disk
creds = YAML.load(File.read('/path/to/secrets'))
Aws::Imagebuilder::Client.new(
access_key_id: creds['access_key_id'],
secret_access_key: creds['secret_access_key']
)
Always load your credentials from outside your application. Avoid configuring credentials statically and never commit them to source control.
Instance Attribute Summary
Attributes inherited from Seahorse::Client::Base
Constructor collapse
-
#initialize(options = {}) ⇒ Aws::Imagebuilder::Client
constructor
Constructs an API client.
API Operations collapse
-
#cancel_image_creation(options = {}) ⇒ Types::CancelImageCreationResponse
CancelImageCreation cancels the creation of Image.
-
#create_component(options = {}) ⇒ Types::CreateComponentResponse
Creates a new component that can be used to build, validate, test, and assess your image.
.
-
#create_distribution_configuration(options = {}) ⇒ Types::CreateDistributionConfigurationResponse
Creates a new distribution configuration.
-
#create_image(options = {}) ⇒ Types::CreateImageResponse
Creates a new image.
-
#create_image_pipeline(options = {}) ⇒ Types::CreateImagePipelineResponse
Creates a new image pipeline.
-
#create_image_recipe(options = {}) ⇒ Types::CreateImageRecipeResponse
Creates a new image recipe.
-
#create_infrastructure_configuration(options = {}) ⇒ Types::CreateInfrastructureConfigurationResponse
Creates a new infrastructure configuration.
-
#delete_component(options = {}) ⇒ Types::DeleteComponentResponse
Deletes a component build version.
-
#delete_distribution_configuration(options = {}) ⇒ Types::DeleteDistributionConfigurationResponse
Deletes a distribution configuration.
-
#delete_image(options = {}) ⇒ Types::DeleteImageResponse
Deletes an image.
-
#delete_image_pipeline(options = {}) ⇒ Types::DeleteImagePipelineResponse
Deletes an image pipeline.
-
#delete_image_recipe(options = {}) ⇒ Types::DeleteImageRecipeResponse
Deletes an image recipe.
-
#delete_infrastructure_configuration(options = {}) ⇒ Types::DeleteInfrastructureConfigurationResponse
Deletes an infrastructure configuration.
-
#get_component(options = {}) ⇒ Types::GetComponentResponse
Gets a component object.
-
#get_component_policy(options = {}) ⇒ Types::GetComponentPolicyResponse
Gets a component policy.
-
#get_distribution_configuration(options = {}) ⇒ Types::GetDistributionConfigurationResponse
Gets a distribution configuration.
-
#get_image(options = {}) ⇒ Types::GetImageResponse
Gets an image.
-
#get_image_pipeline(options = {}) ⇒ Types::GetImagePipelineResponse
Gets an image pipeline.
-
#get_image_policy(options = {}) ⇒ Types::GetImagePolicyResponse
Gets an image policy.
-
#get_image_recipe(options = {}) ⇒ Types::GetImageRecipeResponse
Gets an image recipe.
-
#get_image_recipe_policy(options = {}) ⇒ Types::GetImageRecipePolicyResponse
Gets an image recipe policy.
-
#get_infrastructure_configuration(options = {}) ⇒ Types::GetInfrastructureConfigurationResponse
Gets an infrastructure configuration.
-
#import_component(options = {}) ⇒ Types::ImportComponentResponse
Imports a component and transforms its data into a component document.
-
#list_component_build_versions(options = {}) ⇒ Types::ListComponentBuildVersionsResponse
Returns the list of component build versions for the specified semantic version.
-
#list_components(options = {}) ⇒ Types::ListComponentsResponse
Returns the list of component build versions for the specified semantic version.
-
#list_distribution_configurations(options = {}) ⇒ Types::ListDistributionConfigurationsResponse
Returns a list of distribution configurations.
-
#list_image_build_versions(options = {}) ⇒ Types::ListImageBuildVersionsResponse
Returns a list of image build versions.
-
#list_image_pipeline_images(options = {}) ⇒ Types::ListImagePipelineImagesResponse
Returns a list of images created by the specified pipeline.
-
#list_image_pipelines(options = {}) ⇒ Types::ListImagePipelinesResponse
Returns a list of image pipelines.
-
#list_image_recipes(options = {}) ⇒ Types::ListImageRecipesResponse
Returns a list of image recipes.
-
#list_images(options = {}) ⇒ Types::ListImagesResponse
Returns the list of images that you have access to.
-
#list_infrastructure_configurations(options = {}) ⇒ Types::ListInfrastructureConfigurationsResponse
Returns a list of infrastructure configurations.
-
#list_tags_for_resource(options = {}) ⇒ Types::ListTagsForResourceResponse
Returns the list of tags for the specified resource.
-
#put_component_policy(options = {}) ⇒ Types::PutComponentPolicyResponse
Applies a policy to a component.
-
#put_image_policy(options = {}) ⇒ Types::PutImagePolicyResponse
Applies a policy to an image.
-
#put_image_recipe_policy(options = {}) ⇒ Types::PutImageRecipePolicyResponse
Applies a policy to an image recipe.
-
#start_image_pipeline_execution(options = {}) ⇒ Types::StartImagePipelineExecutionResponse
Manually triggers a pipeline to create an image.
-
#tag_resource(options = {}) ⇒ Struct
Adds a tag to a resource.
-
#untag_resource(options = {}) ⇒ Struct
Removes a tag from a resource.
-
#update_distribution_configuration(options = {}) ⇒ Types::UpdateDistributionConfigurationResponse
Updates a new distribution configuration.
-
#update_image_pipeline(options = {}) ⇒ Types::UpdateImagePipelineResponse
Updates a new image pipeline.
-
#update_infrastructure_configuration(options = {}) ⇒ Types::UpdateInfrastructureConfigurationResponse
Updates a new infrastructure configuration.
Instance Method Summary collapse
-
#wait_until(waiter_name, params = {}) {|waiter| ... } ⇒ Boolean
Waiters polls an API operation until a resource enters a desired state.
-
#waiter_names ⇒ Array<Symbol>
Returns the list of supported waiters.
Methods inherited from Seahorse::Client::Base
add_plugin, api, #build_request, clear_plugins, define, new, #operation, #operation_names, plugins, remove_plugin, set_api, set_plugins
Methods included from Seahorse::Client::HandlerBuilder
#handle, #handle_request, #handle_response
Constructor Details
#initialize(options = {}) ⇒ Aws::Imagebuilder::Client
Constructs an API client.
Instance Method Details
#cancel_image_creation(options = {}) ⇒ Types::CancelImageCreationResponse
CancelImageCreation cancels the creation of Image. This operation can only be used on images in a non-terminal state.
#create_component(options = {}) ⇒ Types::CreateComponentResponse
Creates a new component that can be used to build, validate, test, and assess your image.
#create_distribution_configuration(options = {}) ⇒ Types::CreateDistributionConfigurationResponse
Creates a new distribution configuration. Distribution configurations define and configure the outputs of your pipeline.
#create_image(options = {}) ⇒ 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.
#create_image_pipeline(options = {}) ⇒ Types::CreateImagePipelineResponse
Creates a new image pipeline. Image pipelines enable you to automate the creation and distribution of images.
#create_image_recipe(options = {}) ⇒ Types::CreateImageRecipeResponse
Creates a new image recipe. Image recipes define how images are configured, tested, and assessed.
#create_infrastructure_configuration(options = {}) ⇒ Types::CreateInfrastructureConfigurationResponse
Creates a new infrastructure configuration. An infrastructure configuration defines the environment in which your image will be built and tested.
#delete_component(options = {}) ⇒ Types::DeleteComponentResponse
Deletes a component build version.
#delete_distribution_configuration(options = {}) ⇒ Types::DeleteDistributionConfigurationResponse
Deletes a distribution configuration.
#delete_image(options = {}) ⇒ Types::DeleteImageResponse
Deletes an image.
#delete_image_pipeline(options = {}) ⇒ Types::DeleteImagePipelineResponse
Deletes an image pipeline.
#delete_image_recipe(options = {}) ⇒ Types::DeleteImageRecipeResponse
Deletes an image recipe.
#delete_infrastructure_configuration(options = {}) ⇒ Types::DeleteInfrastructureConfigurationResponse
Deletes an infrastructure configuration.
#get_component(options = {}) ⇒ Types::GetComponentResponse
Gets a component object.
#get_component_policy(options = {}) ⇒ Types::GetComponentPolicyResponse
Gets a component policy.
#get_distribution_configuration(options = {}) ⇒ Types::GetDistributionConfigurationResponse
Gets a distribution configuration.
#get_image(options = {}) ⇒ Types::GetImageResponse
Gets an image.
#get_image_pipeline(options = {}) ⇒ Types::GetImagePipelineResponse
Gets an image pipeline.
#get_image_policy(options = {}) ⇒ Types::GetImagePolicyResponse
Gets an image policy.
#get_image_recipe(options = {}) ⇒ Types::GetImageRecipeResponse
Gets an image recipe.
#get_image_recipe_policy(options = {}) ⇒ Types::GetImageRecipePolicyResponse
Gets an image recipe policy.
#get_infrastructure_configuration(options = {}) ⇒ Types::GetInfrastructureConfigurationResponse
Gets an infrastructure configuration.
#import_component(options = {}) ⇒ Types::ImportComponentResponse
Imports a component and transforms its data into a component document.
#list_component_build_versions(options = {}) ⇒ Types::ListComponentBuildVersionsResponse
Returns the list of component build versions for the specified semantic version.
#list_components(options = {}) ⇒ Types::ListComponentsResponse
Returns the list of component build versions for the specified semantic version.
#list_distribution_configurations(options = {}) ⇒ Types::ListDistributionConfigurationsResponse
Returns a list of distribution configurations.
#list_image_build_versions(options = {}) ⇒ Types::ListImageBuildVersionsResponse
Returns a list of image build versions.
#list_image_pipeline_images(options = {}) ⇒ Types::ListImagePipelineImagesResponse
Returns a list of images created by the specified pipeline.
#list_image_pipelines(options = {}) ⇒ Types::ListImagePipelinesResponse
Returns a list of image pipelines.
#list_image_recipes(options = {}) ⇒ Types::ListImageRecipesResponse
Returns a list of image recipes.
#list_images(options = {}) ⇒ Types::ListImagesResponse
Returns the list of images that you have access to.
#list_infrastructure_configurations(options = {}) ⇒ Types::ListInfrastructureConfigurationsResponse
Returns a list of infrastructure configurations.
#list_tags_for_resource(options = {}) ⇒ Types::ListTagsForResourceResponse
Returns the list of tags for the specified resource.
#put_component_policy(options = {}) ⇒ 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.
#put_image_policy(options = {}) ⇒ 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.
#put_image_recipe_policy(options = {}) ⇒ 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.
#start_image_pipeline_execution(options = {}) ⇒ Types::StartImagePipelineExecutionResponse
Manually triggers a pipeline to create an image.
#tag_resource(options = {}) ⇒ Struct
Adds a tag to a resource.
#untag_resource(options = {}) ⇒ Struct
Removes a tag from a resource.
#update_distribution_configuration(options = {}) ⇒ Types::UpdateDistributionConfigurationResponse
Updates a new distribution configuration. Distribution configurations define and configure the outputs of your pipeline.
#update_image_pipeline(options = {}) ⇒ Types::UpdateImagePipelineResponse
Updates a new image pipeline. Image pipelines enable you to automate the creation and distribution of images.
#update_infrastructure_configuration(options = {}) ⇒ Types::UpdateInfrastructureConfigurationResponse
Updates a new infrastructure configuration. An infrastructure configuration defines the environment in which your image will be built and tested.
#wait_until(waiter_name, params = {}) {|waiter| ... } ⇒ Boolean
Waiters polls an API operation until a resource enters a desired state.
Basic Usage
Waiters will poll until they are succesful, they fail by entering a terminal state, or until a maximum number of attempts are made.
# polls in a loop, sleeping between attempts client.waiter_until(waiter_name, params)
Configuration
You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You configure waiters by passing a block to #wait_until:
# poll for ~25 seconds
client.wait_until(...) do |w|
w.max_attempts = 5
w.delay = 5
end
Callbacks
You can be notified before each polling attempt and before each
delay. If you throw :success
or :failure
from these callbacks,
it will terminate the waiter.
started_at = Time.now
client.wait_until(...) do |w|
# disable max attempts
w.max_attempts = nil
# poll for 1 hour, instead of a number of attempts
w.before_wait do |attempts, response|
throw :failure if Time.now - started_at > 3600
end
end
Handling Errors
When a waiter is successful, it returns true
. When a waiter
fails, it raises an error. All errors raised extend from
Waiters::Errors::WaiterFailed.
begin
client.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
# resource did not enter the desired state in time
end
#waiter_names ⇒ Array<Symbol>
Returns the list of supported waiters. The following table lists the supported waiters and the client method they call:
Waiter Name | Client Method | Default Delay: | Default Max Attempts: |
---|