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.
Attribute Summary collapse
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: |
|---|