Class: Aws::CloudFront::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::CloudFront::Client
- Includes:
- Aws::ClientStubs
- Defined in:
- lib/aws-sdk-cloudfront/client.rb
Class Attribute Summary collapse
- .identifier ⇒ Object readonly private
API Operations collapse
-
#create_cloud_front_origin_access_identity(params = {}) ⇒ Types::CreateCloudFrontOriginAccessIdentityResult
Creates a new origin access identity.
-
#create_distribution(params = {}) ⇒ Types::CreateDistributionResult
Creates a new web distribution.
-
#create_distribution_with_tags(params = {}) ⇒ Types::CreateDistributionWithTagsResult
Create a new distribution with tags.
-
#create_field_level_encryption_config(params = {}) ⇒ Types::CreateFieldLevelEncryptionConfigResult
Create a new field-level encryption configuration.
-
#create_field_level_encryption_profile(params = {}) ⇒ Types::CreateFieldLevelEncryptionProfileResult
Create a field-level encryption profile.
-
#create_invalidation(params = {}) ⇒ Types::CreateInvalidationResult
Create a new invalidation.
-
#create_public_key(params = {}) ⇒ Types::CreatePublicKeyResult
Add a new public key to CloudFront to use, for example, for field-level encryption.
-
#create_streaming_distribution(params = {}) ⇒ Types::CreateStreamingDistributionResult
Creates a new RMTP distribution.
-
#create_streaming_distribution_with_tags(params = {}) ⇒ Types::CreateStreamingDistributionWithTagsResult
Create a new streaming distribution with tags.
-
#delete_cloud_front_origin_access_identity(params = {}) ⇒ Struct
Delete an origin access identity.
-
#delete_distribution(params = {}) ⇒ Struct
Delete a distribution.
-
#delete_field_level_encryption_config(params = {}) ⇒ Struct
Remove a field-level encryption configuration.
-
#delete_field_level_encryption_profile(params = {}) ⇒ Struct
Remove a field-level encryption profile.
-
#delete_public_key(params = {}) ⇒ Struct
Remove a public key you previously added to CloudFront.
-
#delete_streaming_distribution(params = {}) ⇒ Struct
Delete a streaming distribution.
-
#get_cloud_front_origin_access_identity(params = {}) ⇒ Types::GetCloudFrontOriginAccessIdentityResult
Get the information about an origin access identity.
-
#get_cloud_front_origin_access_identity_config(params = {}) ⇒ Types::GetCloudFrontOriginAccessIdentityConfigResult
Get the configuration information about an origin access identity.
-
#get_distribution(params = {}) ⇒ Types::GetDistributionResult
Get the information about a distribution.
-
#get_distribution_config(params = {}) ⇒ Types::GetDistributionConfigResult
Get the configuration information about a distribution.
-
#get_field_level_encryption(params = {}) ⇒ Types::GetFieldLevelEncryptionResult
Get the field-level encryption configuration information.
-
#get_field_level_encryption_config(params = {}) ⇒ Types::GetFieldLevelEncryptionConfigResult
Get the field-level encryption configuration information.
-
#get_field_level_encryption_profile(params = {}) ⇒ Types::GetFieldLevelEncryptionProfileResult
Get the field-level encryption profile information.
-
#get_field_level_encryption_profile_config(params = {}) ⇒ Types::GetFieldLevelEncryptionProfileConfigResult
Get the field-level encryption profile configuration information.
-
#get_invalidation(params = {}) ⇒ Types::GetInvalidationResult
Get the information about an invalidation.
-
#get_public_key(params = {}) ⇒ Types::GetPublicKeyResult
Get the public key information.
-
#get_public_key_config(params = {}) ⇒ Types::GetPublicKeyConfigResult
Return public key configuration informaation.
-
#get_streaming_distribution(params = {}) ⇒ Types::GetStreamingDistributionResult
Gets information about a specified RTMP distribution, including the distribution configuration.
-
#get_streaming_distribution_config(params = {}) ⇒ Types::GetStreamingDistributionConfigResult
Get the configuration information about a streaming distribution.
-
#list_cloud_front_origin_access_identities(params = {}) ⇒ Types::ListCloudFrontOriginAccessIdentitiesResult
Lists origin access identities.
-
#list_distributions(params = {}) ⇒ Types::ListDistributionsResult
List distributions.
-
#list_distributions_by_web_acl_id(params = {}) ⇒ Types::ListDistributionsByWebACLIdResult
List the distributions that are associated with a specified AWS WAF web ACL.
-
#list_field_level_encryption_configs(params = {}) ⇒ Types::ListFieldLevelEncryptionConfigsResult
List all field-level encryption configurations that have been created in CloudFront for this account.
-
#list_field_level_encryption_profiles(params = {}) ⇒ Types::ListFieldLevelEncryptionProfilesResult
Request a list of field-level encryption profiles that have been created in CloudFront for this account.
-
#list_invalidations(params = {}) ⇒ Types::ListInvalidationsResult
Lists invalidation batches.
-
#list_public_keys(params = {}) ⇒ Types::ListPublicKeysResult
List all public keys that have been added to CloudFront for this account.
-
#list_streaming_distributions(params = {}) ⇒ Types::ListStreamingDistributionsResult
List streaming distributions.
-
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResult
List tags for a CloudFront resource.
-
#tag_resource(params = {}) ⇒ Struct
Add tags to a CloudFront resource.
-
#untag_resource(params = {}) ⇒ Struct
Remove tags from a CloudFront resource.
-
#update_cloud_front_origin_access_identity(params = {}) ⇒ Types::UpdateCloudFrontOriginAccessIdentityResult
Update an origin access identity.
-
#update_distribution(params = {}) ⇒ Types::UpdateDistributionResult
Updates the configuration for a web distribution.
-
#update_field_level_encryption_config(params = {}) ⇒ Types::UpdateFieldLevelEncryptionConfigResult
Update a field-level encryption configuration.
-
#update_field_level_encryption_profile(params = {}) ⇒ Types::UpdateFieldLevelEncryptionProfileResult
Update a field-level encryption profile.
-
#update_public_key(params = {}) ⇒ Types::UpdatePublicKeyResult
Update public key information.
-
#update_streaming_distribution(params = {}) ⇒ Types::UpdateStreamingDistributionResult
Update a streaming distribution.
Class Method Summary collapse
- .errors_module ⇒ Object private
Instance Method Summary collapse
- #build_request(operation_name, params = {}) ⇒ Object private
-
#initialize(options) ⇒ Client
constructor
A new instance of Client.
-
#wait_until(waiter_name, params = {}, options = {}) {|w.waiter| ... } ⇒ Boolean
Polls an API operation until a resource enters a desired state.
- #waiter_names ⇒ Object deprecated private Deprecated.
Constructor Details
#initialize(options) ⇒ Client
Returns a new instance of Client.
247 248 249 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 247 def initialize(*args) super end |
Class Attribute Details
.identifier ⇒ Object (readonly)
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
4191 4192 4193 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 4191 def identifier @identifier end |
Class Method Details
.errors_module ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
4194 4195 4196 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 4194 def errors_module Errors end |
Instance Method Details
#build_request(operation_name, params = {}) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
4052 4053 4054 4055 4056 4057 4058 4059 4060 4061 4062 4063 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 4052 def build_request(operation_name, params = {}) handlers = @handlers.for(operation_name) context = Seahorse::Client::RequestContext.new( operation_name: operation_name, operation: config.api.operation(operation_name), client: self, params: params, config: config) context[:gem_name] = 'aws-sdk-cloudfront' context[:gem_version] = '1.18.0' Seahorse::Client::Request.new(handlers, context) end |
#create_cloud_front_origin_access_identity(params = {}) ⇒ Types::CreateCloudFrontOriginAccessIdentityResult
Creates a new origin access identity. If you’re using Amazon S3 for your origin, you can use an origin access identity to require users to access your content using a CloudFront URL instead of the Amazon S3 URL. For more information about how to use origin access identities, see [Serving Private Content through CloudFront] in the *Amazon CloudFront Developer Guide*.
[1]: docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html
295 296 297 298 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 295 def create_cloud_front_origin_access_identity(params = {}, = {}) req = build_request(:create_cloud_front_origin_access_identity, params) req.send_request() end |
#create_distribution(params = {}) ⇒ Types::CreateDistributionResult
Creates a new web distribution. You create a CloudFront distribution to tell CloudFront where you want content to be delivered from, and the details about how to track and manage content delivery. Send a ‘POST` request to the `/CloudFront API version/distribution`/`distribution ID` resource.
When you update a distribution, there are more required fields than when you create a distribution. When you update your distribution by using UpdateDistribution, follow the steps included in the documentation to get the current configuration and then make your updates. This helps to make sure that you include all of the required fields. To view a summary, see [Required Fields for Create Distribution and Update Distribution] in the *Amazon CloudFront Developer Guide*.
If you are using Adobe Flash Media Server’s RTMP protocol, you set up a different kind of CloudFront distribution. For more information, see CreateStreamingDistribution.
699 700 701 702 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 699 def create_distribution(params = {}, = {}) req = build_request(:create_distribution, params) req.send_request() end |
#create_distribution_with_tags(params = {}) ⇒ Types::CreateDistributionWithTagsResult
Create a new distribution with tags.
1092 1093 1094 1095 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 1092 def (params = {}, = {}) req = build_request(:create_distribution_with_tags, params) req.send_request() end |
#create_field_level_encryption_config(params = {}) ⇒ Types::CreateFieldLevelEncryptionConfigResult
Create a new field-level encryption configuration.
1166 1167 1168 1169 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 1166 def create_field_level_encryption_config(params = {}, = {}) req = build_request(:create_field_level_encryption_config, params) req.send_request() end |
#create_field_level_encryption_profile(params = {}) ⇒ Types::CreateFieldLevelEncryptionProfileResult
Create a field-level encryption profile.
1226 1227 1228 1229 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 1226 def create_field_level_encryption_profile(params = {}, = {}) req = build_request(:create_field_level_encryption_profile, params) req.send_request() end |
#create_invalidation(params = {}) ⇒ Types::CreateInvalidationResult
Create a new invalidation.
1272 1273 1274 1275 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 1272 def create_invalidation(params = {}, = {}) req = build_request(:create_invalidation, params) req.send_request() end |
#create_public_key(params = {}) ⇒ Types::CreatePublicKeyResult
Add a new public key to CloudFront to use, for example, for field-level encryption. You can add a maximum of 10 public keys with one AWS account.
1316 1317 1318 1319 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 1316 def create_public_key(params = {}, = {}) req = build_request(:create_public_key, params) req.send_request() end |
#create_streaming_distribution(params = {}) ⇒ Types::CreateStreamingDistributionResult
Creates a new RMTP distribution. An RTMP distribution is similar to a web distribution, but an RTMP distribution streams media files using the Adobe Real-Time Messaging Protocol (RTMP) instead of serving files using HTTP.
To create a new web distribution, submit a ‘POST` request to the *CloudFront API version*/distribution resource. The request body must include a document with a StreamingDistributionConfig element. The response echoes the `StreamingDistributionConfig` element and returns other information about the RTMP distribution.
To get the status of your request, use the *GET StreamingDistribution* API action. When the value of ‘Enabled` is `true` and the value of `Status` is `Deployed`, your distribution is ready. A distribution usually deploys in less than 15 minutes.
For more information about web distributions, see [Working with RTMP Distributions] in the *Amazon CloudFront Developer Guide*.
Beginning with the 2012-05-05 version of the CloudFront API, we made substantial changes to the format of the XML document that you include in the request body when you create or update a web distribution or an RTMP distribution, and when you invalidate objects. With previous versions of the API, we discovered that it was too easy to accidentally delete one or more values for an element that accepts multiple values, for example, CNAMEs and trusted signers. Our changes for the 2012-05-05 release are intended to prevent these accidental deletions and to notify you when there’s a mismatch between the number of values you say you’re specifying in the ‘Quantity` element and the number of values specified.
[1]: docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-rtmp.html
1431 1432 1433 1434 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 1431 def create_streaming_distribution(params = {}, = {}) req = build_request(:create_streaming_distribution, params) req.send_request() end |
#create_streaming_distribution_with_tags(params = {}) ⇒ Types::CreateStreamingDistributionWithTagsResult
Create a new streaming distribution with tags.
1523 1524 1525 1526 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 1523 def (params = {}, = {}) req = build_request(:create_streaming_distribution_with_tags, params) req.send_request() end |
#delete_cloud_front_origin_access_identity(params = {}) ⇒ Struct
Delete an origin access identity.
1550 1551 1552 1553 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 1550 def delete_cloud_front_origin_access_identity(params = {}, = {}) req = build_request(:delete_cloud_front_origin_access_identity, params) req.send_request() end |
#delete_distribution(params = {}) ⇒ Struct
Delete a distribution.
1577 1578 1579 1580 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 1577 def delete_distribution(params = {}, = {}) req = build_request(:delete_distribution, params) req.send_request() end |
#delete_field_level_encryption_config(params = {}) ⇒ Struct
Remove a field-level encryption configuration.
1604 1605 1606 1607 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 1604 def delete_field_level_encryption_config(params = {}, = {}) req = build_request(:delete_field_level_encryption_config, params) req.send_request() end |
#delete_field_level_encryption_profile(params = {}) ⇒ Struct
Remove a field-level encryption profile.
1631 1632 1633 1634 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 1631 def delete_field_level_encryption_profile(params = {}, = {}) req = build_request(:delete_field_level_encryption_profile, params) req.send_request() end |
#delete_public_key(params = {}) ⇒ Struct
Remove a public key you previously added to CloudFront.
1658 1659 1660 1661 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 1658 def delete_public_key(params = {}, = {}) req = build_request(:delete_public_key, params) req.send_request() end |
#delete_streaming_distribution(params = {}) ⇒ Struct
Delete a streaming distribution. To delete an RTMP distribution using the CloudFront API, perform the following steps.
**To delete an RTMP distribution using the CloudFront API**:
-
Disable the RTMP distribution.
-
Submit a ‘GET Streaming Distribution Config` request to get the current configuration and the `Etag` header for the distribution.
-
Update the XML document that was returned in the response to your ‘GET Streaming Distribution Config` request to change the value of `Enabled` to `false`.
-
Submit a ‘PUT Streaming Distribution Config` request to update the configuration for your distribution. In the request body, include the XML document that you updated in Step 3. Then set the value of the HTTP `If-Match` header to the value of the `ETag` header that CloudFront returned when you submitted the `GET Streaming Distribution Config` request in Step 2.
-
Review the response to the ‘PUT Streaming Distribution Config` request to confirm that the distribution was successfully disabled.
-
Submit a ‘GET Streaming Distribution Config` request to confirm that your changes have propagated. When propagation is complete, the value of `Status` is `Deployed`.
-
Submit a ‘DELETE Streaming Distribution` request. Set the value of the HTTP `If-Match` header to the value of the `ETag` header that CloudFront returned when you submitted the `GET Streaming Distribution Config` request in Step 2.
-
Review the response to your ‘DELETE Streaming Distribution` request to confirm that the distribution was successfully deleted.
For information about deleting a distribution using the CloudFront console, see [Deleting a Distribution] in the *Amazon CloudFront Developer Guide*.
[1]: docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/HowToDeleteDistribution.html
1728 1729 1730 1731 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 1728 def delete_streaming_distribution(params = {}, = {}) req = build_request(:delete_streaming_distribution, params) req.send_request() end |
#get_cloud_front_origin_access_identity(params = {}) ⇒ Types::GetCloudFrontOriginAccessIdentityResult
Get the information about an origin access identity.
1761 1762 1763 1764 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 1761 def get_cloud_front_origin_access_identity(params = {}, = {}) req = build_request(:get_cloud_front_origin_access_identity, params) req.send_request() end |
#get_cloud_front_origin_access_identity_config(params = {}) ⇒ Types::GetCloudFrontOriginAccessIdentityConfigResult
Get the configuration information about an origin access identity.
1792 1793 1794 1795 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 1792 def get_cloud_front_origin_access_identity_config(params = {}, = {}) req = build_request(:get_cloud_front_origin_access_identity_config, params) req.send_request() end |
#get_distribution(params = {}) ⇒ Types::GetDistributionResult
Get the information about a distribution.
1964 1965 1966 1967 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 1964 def get_distribution(params = {}, = {}) req = build_request(:get_distribution, params) req.send_request() end |
#get_distribution_config(params = {}) ⇒ Types::GetDistributionConfigResult
Get the configuration information about a distribution.
2123 2124 2125 2126 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 2123 def get_distribution_config(params = {}, = {}) req = build_request(:get_distribution_config, params) req.send_request() end |
#get_field_level_encryption(params = {}) ⇒ Types::GetFieldLevelEncryptionResult
Get the field-level encryption configuration information.
2168 2169 2170 2171 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 2168 def get_field_level_encryption(params = {}, = {}) req = build_request(:get_field_level_encryption, params) req.send_request() end |
#get_field_level_encryption_config(params = {}) ⇒ Types::GetFieldLevelEncryptionConfigResult
Get the field-level encryption configuration information.
2211 2212 2213 2214 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 2211 def get_field_level_encryption_config(params = {}, = {}) req = build_request(:get_field_level_encryption_config, params) req.send_request() end |
#get_field_level_encryption_profile(params = {}) ⇒ Types::GetFieldLevelEncryptionProfileResult
Get the field-level encryption profile information.
2252 2253 2254 2255 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 2252 def get_field_level_encryption_profile(params = {}, = {}) req = build_request(:get_field_level_encryption_profile, params) req.send_request() end |
#get_field_level_encryption_profile_config(params = {}) ⇒ Types::GetFieldLevelEncryptionProfileConfigResult
Get the field-level encryption profile configuration information.
2292 2293 2294 2295 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 2292 def get_field_level_encryption_profile_config(params = {}, = {}) req = build_request(:get_field_level_encryption_profile_config, params) req.send_request() end |
#get_invalidation(params = {}) ⇒ Types::GetInvalidationResult
Get the information about an invalidation.
2331 2332 2333 2334 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 2331 def get_invalidation(params = {}, = {}) req = build_request(:get_invalidation, params) req.send_request() end |
#get_public_key(params = {}) ⇒ Types::GetPublicKeyResult
Get the public key information.
2366 2367 2368 2369 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 2366 def get_public_key(params = {}, = {}) req = build_request(:get_public_key, params) req.send_request() end |
#get_public_key_config(params = {}) ⇒ Types::GetPublicKeyConfigResult
Return public key configuration informaation
2399 2400 2401 2402 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 2399 def get_public_key_config(params = {}, = {}) req = build_request(:get_public_key_config, params) req.send_request() end |
#get_streaming_distribution(params = {}) ⇒ Types::GetStreamingDistributionResult
Gets information about a specified RTMP distribution, including the distribution configuration.
2457 2458 2459 2460 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 2457 def get_streaming_distribution(params = {}, = {}) req = build_request(:get_streaming_distribution, params) req.send_request() end |
#get_streaming_distribution_config(params = {}) ⇒ Types::GetStreamingDistributionConfigResult
Get the configuration information about a streaming distribution.
2502 2503 2504 2505 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 2502 def get_streaming_distribution_config(params = {}, = {}) req = build_request(:get_streaming_distribution_config, params) req.send_request() end |
#list_cloud_front_origin_access_identities(params = {}) ⇒ Types::ListCloudFrontOriginAccessIdentitiesResult
Lists origin access identities.
2548 2549 2550 2551 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 2548 def list_cloud_front_origin_access_identities(params = {}, = {}) req = build_request(:list_cloud_front_origin_access_identities, params) req.send_request() end |
#list_distributions(params = {}) ⇒ Types::ListDistributionsResult
List distributions.
2718 2719 2720 2721 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 2718 def list_distributions(params = {}, = {}) req = build_request(:list_distributions, params) req.send_request() end |
#list_distributions_by_web_acl_id(params = {}) ⇒ Types::ListDistributionsByWebACLIdResult
List the distributions that are associated with a specified AWS WAF web ACL.
2897 2898 2899 2900 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 2897 def list_distributions_by_web_acl_id(params = {}, = {}) req = build_request(:list_distributions_by_web_acl_id, params) req.send_request() end |
#list_field_level_encryption_configs(params = {}) ⇒ Types::ListFieldLevelEncryptionConfigsResult
List all field-level encryption configurations that have been created in CloudFront for this account.
2953 2954 2955 2956 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 2953 def list_field_level_encryption_configs(params = {}, = {}) req = build_request(:list_field_level_encryption_configs, params) req.send_request() end |
#list_field_level_encryption_profiles(params = {}) ⇒ Types::ListFieldLevelEncryptionProfilesResult
Request a list of field-level encryption profiles that have been created in CloudFront for this account.
3005 3006 3007 3008 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 3005 def list_field_level_encryption_profiles(params = {}, = {}) req = build_request(:list_field_level_encryption_profiles, params) req.send_request() end |
#list_invalidations(params = {}) ⇒ Types::ListInvalidationsResult
Lists invalidation batches.
3057 3058 3059 3060 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 3057 def list_invalidations(params = {}, = {}) req = build_request(:list_invalidations, params) req.send_request() end |
#list_public_keys(params = {}) ⇒ Types::ListPublicKeysResult
List all public keys that have been added to CloudFront for this account.
3102 3103 3104 3105 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 3102 def list_public_keys(params = {}, = {}) req = build_request(:list_public_keys, params) req.send_request() end |
#list_streaming_distributions(params = {}) ⇒ Types::ListStreamingDistributionsResult
List streaming distributions.
3156 3157 3158 3159 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 3156 def list_streaming_distributions(params = {}, = {}) req = build_request(:list_streaming_distributions, params) req.send_request() end |
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResult
List tags for a CloudFront resource.
3186 3187 3188 3189 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 3186 def (params = {}, = {}) req = build_request(:list_tags_for_resource, params) req.send_request() end |
#tag_resource(params = {}) ⇒ Struct
Add tags to a CloudFront resource.
3219 3220 3221 3222 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 3219 def tag_resource(params = {}, = {}) req = build_request(:tag_resource, params) req.send_request() end |
#untag_resource(params = {}) ⇒ Struct
Remove tags from a CloudFront resource.
3247 3248 3249 3250 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 3247 def untag_resource(params = {}, = {}) req = build_request(:untag_resource, params) req.send_request() end |
#update_cloud_front_origin_access_identity(params = {}) ⇒ Types::UpdateCloudFrontOriginAccessIdentityResult
Update an origin access identity.
3292 3293 3294 3295 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 3292 def update_cloud_front_origin_access_identity(params = {}, = {}) req = build_request(:update_cloud_front_origin_access_identity, params) req.send_request() end |
#update_distribution(params = {}) ⇒ Types::UpdateDistributionResult
Updates the configuration for a web distribution.
When you update a distribution, there are more required fields than when you create a distribution. When you update your distribution by using this API action, follow the steps here to get the current configuration and then make your updates, to make sure that you include all of the required fields. To view a summary, see [Required Fields for Create Distribution and Update Distribution] in the *Amazon CloudFront Developer Guide*.
The update process includes getting the current distribution configuration, updating the XML document that is returned to make your changes, and then submitting an ‘UpdateDistribution` request to make the updates.
For information about updating a distribution using the CloudFront console instead, see [Creating a Distribution] in the *Amazon CloudFront Developer Guide*.
**To update a web distribution using the CloudFront API**
-
Submit a GetDistributionConfig request to get the current configuration and an ‘Etag` header for the distribution.
<note markdown=“1”> If you update the distribution again, you must get a new ‘Etag` header.
</note>
-
Update the XML document that was returned in the response to your ‘GetDistributionConfig` request to include your changes.
When you edit the XML file, be aware of the following:
* You must strip out the ETag parameter that is returned.
-
Additional fields are required when you update a distribution. There may be fields included in the XML file for features that you haven’t configured for your distribution. This is expected and required to successfully update the distribution.
-
You can’t change the value of ‘CallerReference`. If you try to change this value, CloudFront returns an `IllegalUpdate` error.
-
The new configuration replaces the existing configuration; the values that you specify in an ‘UpdateDistribution` request are not merged into your existing configuration. When you add, delete, or replace values in an element that allows multiple values (for example, `CNAME`), you must specify all of the values that you want to appear in the updated distribution. In addition, you must update the corresponding `Quantity` element.
-
-
Submit an ‘UpdateDistribution` request to update the configuration for your distribution:
-
In the request body, include the XML document that you updated in Step 2. The request body must include an XML document with a ‘DistributionConfig` element.
-
Set the value of the HTTP ‘If-Match` header to the value of the `ETag` header that CloudFront returned when you submitted the `GetDistributionConfig` request in Step 1.
-
-
Review the response to the ‘UpdateDistribution` request to confirm that the configuration was successfully updated.
-
Optional: Submit a GetDistribution request to confirm that your changes have propagated. When propagation is complete, the value of ‘Status` is `Deployed`.
[1]: docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-overview-required-fields.html [2]: docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-creating-console.html
3755 3756 3757 3758 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 3755 def update_distribution(params = {}, = {}) req = build_request(:update_distribution, params) req.send_request() end |
#update_field_level_encryption_config(params = {}) ⇒ Types::UpdateFieldLevelEncryptionConfigResult
Update a field-level encryption configuration.
3836 3837 3838 3839 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 3836 def update_field_level_encryption_config(params = {}, = {}) req = build_request(:update_field_level_encryption_config, params) req.send_request() end |
#update_field_level_encryption_profile(params = {}) ⇒ Types::UpdateFieldLevelEncryptionProfileResult
Update a field-level encryption profile.
3903 3904 3905 3906 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 3903 def update_field_level_encryption_profile(params = {}, = {}) req = build_request(:update_field_level_encryption_profile, params) req.send_request() end |
#update_public_key(params = {}) ⇒ Types::UpdatePublicKeyResult
Update public key information. Note that the only value you can change is the comment.
3953 3954 3955 3956 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 3953 def update_public_key(params = {}, = {}) req = build_request(:update_public_key, params) req.send_request() end |
#update_streaming_distribution(params = {}) ⇒ Types::UpdateStreamingDistributionResult
Update a streaming distribution.
4043 4044 4045 4046 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 4043 def update_streaming_distribution(params = {}, = {}) req = build_request(:update_streaming_distribution, params) req.send_request() end |
#wait_until(waiter_name, params = {}, options = {}) {|w.waiter| ... } ⇒ Boolean
Polls an API operation until a resource enters a desired state.
## Basic Usage
A waiter will call an API operation until:
-
It is successful
-
It enters a terminal state
-
It makes the maximum number of attempts
In between attempts, the waiter will sleep.
# polls in a loop, sleeping between attempts
client.wait_until(waiter_name, params)
## Configuration
You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You can pass configuration as the final arguments hash.
# poll for ~25 seconds
client.wait_until(waiter_name, params, {
max_attempts: 5,
delay: 5,
})
## 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(waiter_name, params, {
# disable max attempts
max_attempts: nil,
# poll for 1 hour, instead of a number of attempts
before_wait: -> (attempts, response) do
throw :failure if Time.now - started_at > 3600
end
})
## Handling Errors
When a waiter is unsuccessful, it will raise an error. All of the failure errors extend from Waiters::Errors::WaiterFailed.
begin
client.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
# resource did not enter the desired state in time
end
## Valid Waiters
The following table lists the valid waiter names, the operations they call, and the default ‘:delay` and `:max_attempts` values.
| waiter_name | params | :delay | :max_attempts | | ——————————- | —————————– | ——– | ————- | | distribution_deployed | #get_distribution | 60 | 25 | | invalidation_completed | #get_invalidation | 20 | 30 | | streaming_distribution_deployed | #get_streaming_distribution | 60 | 25 |
4155 4156 4157 4158 4159 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 4155 def wait_until(waiter_name, params = {}, = {}) w = waiter(waiter_name, ) yield(w.waiter) if block_given? # deprecated w.wait(params) end |
#waiter_names ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
4163 4164 4165 |
# File 'lib/aws-sdk-cloudfront/client.rb', line 4163 def waiter_names waiters.keys end |