aws-sdk-cloudfront 1.69.0 → 1.70.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -412,6 +412,246 @@ module Aws::CloudFront
412
412
  req.send_request(options)
413
413
  end
414
414
 
415
+ # Creates a staging distribution using the configuration of the provided
416
+ # primary distribution. A staging distribution is a copy of an existing
417
+ # distribution (called the primary distribution) that you can use in a
418
+ # continuous deployment workflow.
419
+ #
420
+ # After you create a staging distribution, you can use
421
+ # `UpdateDistribution` to modify the staging distribution’s
422
+ # configuration. Then you can use `CreateContinuousDeploymentPolicy` to
423
+ # incrementally move traffic to the staging distribution.
424
+ #
425
+ # @option params [required, String] :primary_distribution_id
426
+ # The identifier of the primary distribution whose configuration you are
427
+ # copying. To get a distribution ID, use `ListDistributions`.
428
+ #
429
+ # @option params [Boolean] :staging
430
+ # The type of distribution that your primary distribution will be copied
431
+ # to. The only valid value is `True`, indicating that you are copying to
432
+ # a staging distribution.
433
+ #
434
+ # @option params [String] :if_match
435
+ # The version identifier of the primary distribution whose configuration
436
+ # you are copying. This is the `ETag` value returned in the response to
437
+ # `GetDistribution` and `GetDistributionConfig`.
438
+ #
439
+ # @option params [required, String] :caller_reference
440
+ # A value that uniquely identifies a request to create a resource. This
441
+ # helps to prevent CloudFront from creating a duplicate resource if you
442
+ # accidentally resubmit an identical request.
443
+ #
444
+ # @return [Types::CopyDistributionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
445
+ #
446
+ # * {Types::CopyDistributionResult#distribution #distribution} => Types::Distribution
447
+ # * {Types::CopyDistributionResult#location #location} => String
448
+ # * {Types::CopyDistributionResult#etag #etag} => String
449
+ #
450
+ # @example Request syntax with placeholder values
451
+ #
452
+ # resp = client.copy_distribution({
453
+ # primary_distribution_id: "string", # required
454
+ # staging: false,
455
+ # if_match: "string",
456
+ # caller_reference: "string", # required
457
+ # })
458
+ #
459
+ # @example Response structure
460
+ #
461
+ # resp.distribution.id #=> String
462
+ # resp.distribution.arn #=> String
463
+ # resp.distribution.status #=> String
464
+ # resp.distribution.last_modified_time #=> Time
465
+ # resp.distribution.in_progress_invalidation_batches #=> Integer
466
+ # resp.distribution.domain_name #=> String
467
+ # resp.distribution.active_trusted_signers.enabled #=> Boolean
468
+ # resp.distribution.active_trusted_signers.quantity #=> Integer
469
+ # resp.distribution.active_trusted_signers.items #=> Array
470
+ # resp.distribution.active_trusted_signers.items[0].aws_account_number #=> String
471
+ # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
472
+ # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
473
+ # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
474
+ # resp.distribution.active_trusted_key_groups.enabled #=> Boolean
475
+ # resp.distribution.active_trusted_key_groups.quantity #=> Integer
476
+ # resp.distribution.active_trusted_key_groups.items #=> Array
477
+ # resp.distribution.active_trusted_key_groups.items[0].key_group_id #=> String
478
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.quantity #=> Integer
479
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items #=> Array
480
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items[0] #=> String
481
+ # resp.distribution.distribution_config.caller_reference #=> String
482
+ # resp.distribution.distribution_config.aliases.quantity #=> Integer
483
+ # resp.distribution.distribution_config.aliases.items #=> Array
484
+ # resp.distribution.distribution_config.aliases.items[0] #=> String
485
+ # resp.distribution.distribution_config.default_root_object #=> String
486
+ # resp.distribution.distribution_config.origins.quantity #=> Integer
487
+ # resp.distribution.distribution_config.origins.items #=> Array
488
+ # resp.distribution.distribution_config.origins.items[0].id #=> String
489
+ # resp.distribution.distribution_config.origins.items[0].domain_name #=> String
490
+ # resp.distribution.distribution_config.origins.items[0].origin_path #=> String
491
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.quantity #=> Integer
492
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.items #=> Array
493
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_name #=> String
494
+ # resp.distribution.distribution_config.origins.items[0].custom_headers.items[0].header_value #=> String
495
+ # resp.distribution.distribution_config.origins.items[0].s3_origin_config.origin_access_identity #=> String
496
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.http_port #=> Integer
497
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.https_port #=> Integer
498
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
499
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
500
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
501
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
502
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_read_timeout #=> Integer
503
+ # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
504
+ # resp.distribution.distribution_config.origins.items[0].connection_attempts #=> Integer
505
+ # resp.distribution.distribution_config.origins.items[0].connection_timeout #=> Integer
506
+ # resp.distribution.distribution_config.origins.items[0].origin_shield.enabled #=> Boolean
507
+ # resp.distribution.distribution_config.origins.items[0].origin_shield.origin_shield_region #=> String
508
+ # resp.distribution.distribution_config.origins.items[0].origin_access_control_id #=> String
509
+ # resp.distribution.distribution_config.origin_groups.quantity #=> Integer
510
+ # resp.distribution.distribution_config.origin_groups.items #=> Array
511
+ # resp.distribution.distribution_config.origin_groups.items[0].id #=> String
512
+ # resp.distribution.distribution_config.origin_groups.items[0].failover_criteria.status_codes.quantity #=> Integer
513
+ # resp.distribution.distribution_config.origin_groups.items[0].failover_criteria.status_codes.items #=> Array
514
+ # resp.distribution.distribution_config.origin_groups.items[0].failover_criteria.status_codes.items[0] #=> Integer
515
+ # resp.distribution.distribution_config.origin_groups.items[0].members.quantity #=> Integer
516
+ # resp.distribution.distribution_config.origin_groups.items[0].members.items #=> Array
517
+ # resp.distribution.distribution_config.origin_groups.items[0].members.items[0].origin_id #=> String
518
+ # resp.distribution.distribution_config.default_cache_behavior.target_origin_id #=> String
519
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.enabled #=> Boolean
520
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
521
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
522
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
523
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.enabled #=> Boolean
524
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.quantity #=> Integer
525
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items #=> Array
526
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items[0] #=> String
527
+ # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
528
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
529
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
530
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
531
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
532
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items #=> Array
533
+ # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
534
+ # resp.distribution.distribution_config.default_cache_behavior.smooth_streaming #=> Boolean
535
+ # resp.distribution.distribution_config.default_cache_behavior.compress #=> Boolean
536
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.quantity #=> Integer
537
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items #=> Array
538
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
539
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
540
+ # resp.distribution.distribution_config.default_cache_behavior.lambda_function_associations.items[0].include_body #=> Boolean
541
+ # resp.distribution.distribution_config.default_cache_behavior.function_associations.quantity #=> Integer
542
+ # resp.distribution.distribution_config.default_cache_behavior.function_associations.items #=> Array
543
+ # resp.distribution.distribution_config.default_cache_behavior.function_associations.items[0].function_arn #=> String
544
+ # resp.distribution.distribution_config.default_cache_behavior.function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
545
+ # resp.distribution.distribution_config.default_cache_behavior.field_level_encryption_id #=> String
546
+ # resp.distribution.distribution_config.default_cache_behavior.realtime_log_config_arn #=> String
547
+ # resp.distribution.distribution_config.default_cache_behavior.cache_policy_id #=> String
548
+ # resp.distribution.distribution_config.default_cache_behavior.origin_request_policy_id #=> String
549
+ # resp.distribution.distribution_config.default_cache_behavior.response_headers_policy_id #=> String
550
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
551
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
552
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
553
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
554
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
555
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.quantity #=> Integer
556
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items #=> Array
557
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.headers.items[0] #=> String
558
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
559
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
560
+ # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
561
+ # resp.distribution.distribution_config.default_cache_behavior.min_ttl #=> Integer
562
+ # resp.distribution.distribution_config.default_cache_behavior.default_ttl #=> Integer
563
+ # resp.distribution.distribution_config.default_cache_behavior.max_ttl #=> Integer
564
+ # resp.distribution.distribution_config.cache_behaviors.quantity #=> Integer
565
+ # resp.distribution.distribution_config.cache_behaviors.items #=> Array
566
+ # resp.distribution.distribution_config.cache_behaviors.items[0].path_pattern #=> String
567
+ # resp.distribution.distribution_config.cache_behaviors.items[0].target_origin_id #=> String
568
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
569
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
570
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
571
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
572
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
573
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
574
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items #=> Array
575
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
576
+ # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
577
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
578
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
579
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
580
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
581
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
582
+ # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
583
+ # resp.distribution.distribution_config.cache_behaviors.items[0].smooth_streaming #=> Boolean
584
+ # resp.distribution.distribution_config.cache_behaviors.items[0].compress #=> Boolean
585
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
586
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items #=> Array
587
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
588
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
589
+ # resp.distribution.distribution_config.cache_behaviors.items[0].lambda_function_associations.items[0].include_body #=> Boolean
590
+ # resp.distribution.distribution_config.cache_behaviors.items[0].function_associations.quantity #=> Integer
591
+ # resp.distribution.distribution_config.cache_behaviors.items[0].function_associations.items #=> Array
592
+ # resp.distribution.distribution_config.cache_behaviors.items[0].function_associations.items[0].function_arn #=> String
593
+ # resp.distribution.distribution_config.cache_behaviors.items[0].function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
594
+ # resp.distribution.distribution_config.cache_behaviors.items[0].field_level_encryption_id #=> String
595
+ # resp.distribution.distribution_config.cache_behaviors.items[0].realtime_log_config_arn #=> String
596
+ # resp.distribution.distribution_config.cache_behaviors.items[0].cache_policy_id #=> String
597
+ # resp.distribution.distribution_config.cache_behaviors.items[0].origin_request_policy_id #=> String
598
+ # resp.distribution.distribution_config.cache_behaviors.items[0].response_headers_policy_id #=> String
599
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
600
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
601
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
602
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
603
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
604
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
605
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items #=> Array
606
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
607
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
608
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
609
+ # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
610
+ # resp.distribution.distribution_config.cache_behaviors.items[0].min_ttl #=> Integer
611
+ # resp.distribution.distribution_config.cache_behaviors.items[0].default_ttl #=> Integer
612
+ # resp.distribution.distribution_config.cache_behaviors.items[0].max_ttl #=> Integer
613
+ # resp.distribution.distribution_config.custom_error_responses.quantity #=> Integer
614
+ # resp.distribution.distribution_config.custom_error_responses.items #=> Array
615
+ # resp.distribution.distribution_config.custom_error_responses.items[0].error_code #=> Integer
616
+ # resp.distribution.distribution_config.custom_error_responses.items[0].response_page_path #=> String
617
+ # resp.distribution.distribution_config.custom_error_responses.items[0].response_code #=> String
618
+ # resp.distribution.distribution_config.custom_error_responses.items[0].error_caching_min_ttl #=> Integer
619
+ # resp.distribution.distribution_config.comment #=> String
620
+ # resp.distribution.distribution_config.logging.enabled #=> Boolean
621
+ # resp.distribution.distribution_config.logging.include_cookies #=> Boolean
622
+ # resp.distribution.distribution_config.logging.bucket #=> String
623
+ # resp.distribution.distribution_config.logging.prefix #=> String
624
+ # resp.distribution.distribution_config.price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All"
625
+ # resp.distribution.distribution_config.enabled #=> Boolean
626
+ # resp.distribution.distribution_config.viewer_certificate.cloud_front_default_certificate #=> Boolean
627
+ # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
628
+ # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
629
+ # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
630
+ # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021"
631
+ # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
632
+ # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
633
+ # resp.distribution.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
634
+ # resp.distribution.distribution_config.restrictions.geo_restriction.quantity #=> Integer
635
+ # resp.distribution.distribution_config.restrictions.geo_restriction.items #=> Array
636
+ # resp.distribution.distribution_config.restrictions.geo_restriction.items[0] #=> String
637
+ # resp.distribution.distribution_config.web_acl_id #=> String
638
+ # resp.distribution.distribution_config.http_version #=> String, one of "http1.1", "http2", "http3", "http2and3"
639
+ # resp.distribution.distribution_config.is_ipv6_enabled #=> Boolean
640
+ # resp.distribution.alias_icp_recordals #=> Array
641
+ # resp.distribution.alias_icp_recordals[0].cname #=> String
642
+ # resp.distribution.alias_icp_recordals[0].icp_recordal_status #=> String, one of "APPROVED", "SUSPENDED", "PENDING"
643
+ # resp.location #=> String
644
+ # resp.etag #=> String
645
+ #
646
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/CopyDistribution AWS API Documentation
647
+ #
648
+ # @overload copy_distribution(params = {})
649
+ # @param [Hash] params ({})
650
+ def copy_distribution(params = {}, options = {})
651
+ req = build_request(:copy_distribution, params)
652
+ req.send_request(options)
653
+ end
654
+
415
655
  # Creates a cache policy.
416
656
  #
417
657
  # After you create a cache policy, you can attach it to one or more
@@ -568,25 +808,81 @@ module Aws::CloudFront
568
808
  req.send_request(options)
569
809
  end
570
810
 
571
- # Creates a new web distribution. You create a CloudFront distribution
572
- # to tell CloudFront where you want content to be delivered from, and
573
- # the details about how to track and manage content delivery. Send a
574
- # `POST` request to the `/CloudFront API
575
- # version/distribution`/`distribution ID` resource.
576
- #
577
- # When you update a distribution, there are more required fields than
578
- # when you create a distribution. When you update your distribution by
579
- # using [UpdateDistribution][1], follow the steps included in the
580
- # documentation to get the current configuration and then make your
581
- # updates. This helps to make sure that you include all of the required
582
- # fields. To view a summary, see [Required Fields for Create
583
- # Distribution and Update Distribution][2] in the *Amazon CloudFront
584
- # Developer Guide*.
811
+ # Creates a continuous deployment policy that distributes traffic for a
812
+ # custom domain name to two different CloudFront distributions.
813
+ #
814
+ # To use a continuous deployment policy, first use `CopyDistribution` to
815
+ # create a staging distribution, then use `UpdateDistribution` to modify
816
+ # the staging distribution’s configuration.
817
+ #
818
+ # After you create and update a staging distribution, you can use a
819
+ # continuous deployment policy to incrementally move traffic to the
820
+ # staging distribution. This workflow enables you to test changes to a
821
+ # distribution’s configuration before moving all of your domain’s
822
+ # production traffic to the new configuration.
823
+ #
824
+ # @option params [required, Types::ContinuousDeploymentPolicyConfig] :continuous_deployment_policy_config
825
+ # Contains the configuration for a continuous deployment policy.
826
+ #
827
+ # @return [Types::CreateContinuousDeploymentPolicyResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
585
828
  #
829
+ # * {Types::CreateContinuousDeploymentPolicyResult#continuous_deployment_policy #continuous_deployment_policy} => Types::ContinuousDeploymentPolicy
830
+ # * {Types::CreateContinuousDeploymentPolicyResult#location #location} => String
831
+ # * {Types::CreateContinuousDeploymentPolicyResult#etag #etag} => String
586
832
  #
833
+ # @example Request syntax with placeholder values
587
834
  #
588
- # [1]: https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html
589
- # [2]: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-overview-required-fields.html
835
+ # resp = client.create_continuous_deployment_policy({
836
+ # continuous_deployment_policy_config: { # required
837
+ # staging_distribution_dns_names: { # required
838
+ # quantity: 1, # required
839
+ # items: ["string"],
840
+ # },
841
+ # enabled: false, # required
842
+ # traffic_config: {
843
+ # single_weight_config: {
844
+ # weight: 1.0, # required
845
+ # session_stickiness_config: {
846
+ # idle_ttl: 1, # required
847
+ # maximum_ttl: 1, # required
848
+ # },
849
+ # },
850
+ # single_header_config: {
851
+ # header: "string", # required
852
+ # value: "string", # required
853
+ # },
854
+ # type: "SingleWeight", # required, accepts SingleWeight, SingleHeader
855
+ # },
856
+ # },
857
+ # })
858
+ #
859
+ # @example Response structure
860
+ #
861
+ # resp.continuous_deployment_policy.id #=> String
862
+ # resp.continuous_deployment_policy.last_modified_time #=> Time
863
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.staging_distribution_dns_names.quantity #=> Integer
864
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.staging_distribution_dns_names.items #=> Array
865
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.staging_distribution_dns_names.items[0] #=> String
866
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.enabled #=> Boolean
867
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_weight_config.weight #=> Float
868
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_weight_config.session_stickiness_config.idle_ttl #=> Integer
869
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_weight_config.session_stickiness_config.maximum_ttl #=> Integer
870
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_header_config.header #=> String
871
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_header_config.value #=> String
872
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.type #=> String, one of "SingleWeight", "SingleHeader"
873
+ # resp.location #=> String
874
+ # resp.etag #=> String
875
+ #
876
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/CreateContinuousDeploymentPolicy AWS API Documentation
877
+ #
878
+ # @overload create_continuous_deployment_policy(params = {})
879
+ # @param [Hash] params ({})
880
+ def create_continuous_deployment_policy(params = {}, options = {})
881
+ req = build_request(:create_continuous_deployment_policy, params)
882
+ req.send_request(options)
883
+ end
884
+
885
+ # Creates a CloudFront distribution.
590
886
  #
591
887
  # @option params [required, Types::DistributionConfig] :distribution_config
592
888
  # The distribution's configuration information.
@@ -1910,7 +2206,7 @@ module Aws::CloudFront
1910
2206
  # resp = client.create_origin_access_control({
1911
2207
  # origin_access_control_config: { # required
1912
2208
  # name: "string", # required
1913
- # description: "string", # required
2209
+ # description: "string",
1914
2210
  # signing_protocol: "sigv4", # required, accepts sigv4
1915
2211
  # signing_behavior: "never", # required, accepts never, always, no-override
1916
2212
  # origin_access_control_origin_type: "s3", # required, accepts s3
@@ -2565,6 +2861,38 @@ module Aws::CloudFront
2565
2861
  req.send_request(options)
2566
2862
  end
2567
2863
 
2864
+ # Deletes a continuous deployment policy.
2865
+ #
2866
+ # You cannot delete a continuous deployment policy that’s attached to a
2867
+ # primary distribution. First update your distribution to remove the
2868
+ # continuous deployment policy, then you can delete the policy.
2869
+ #
2870
+ # @option params [required, String] :id
2871
+ # The identifier of the continuous deployment policy that you are
2872
+ # deleting.
2873
+ #
2874
+ # @option params [String] :if_match
2875
+ # The current version (`ETag` value) of the continuous deployment policy
2876
+ # that you are deleting.
2877
+ #
2878
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2879
+ #
2880
+ # @example Request syntax with placeholder values
2881
+ #
2882
+ # resp = client.delete_continuous_deployment_policy({
2883
+ # id: "string", # required
2884
+ # if_match: "string",
2885
+ # })
2886
+ #
2887
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/DeleteContinuousDeploymentPolicy AWS API Documentation
2888
+ #
2889
+ # @overload delete_continuous_deployment_policy(params = {})
2890
+ # @param [Hash] params ({})
2891
+ def delete_continuous_deployment_policy(params = {}, options = {})
2892
+ req = build_request(:delete_continuous_deployment_policy, params)
2893
+ req.send_request(options)
2894
+ end
2895
+
2568
2896
  # Delete a distribution.
2569
2897
  #
2570
2898
  # @option params [required, String] :id
@@ -3222,6 +3550,89 @@ module Aws::CloudFront
3222
3550
  req.send_request(options)
3223
3551
  end
3224
3552
 
3553
+ # Gets a continuous deployment policy, including metadata (the policy’s
3554
+ # identifier and the date and time when the policy was last modified).
3555
+ #
3556
+ # @option params [required, String] :id
3557
+ # The identifier of the continuous deployment policy that you are
3558
+ # getting.
3559
+ #
3560
+ # @return [Types::GetContinuousDeploymentPolicyResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3561
+ #
3562
+ # * {Types::GetContinuousDeploymentPolicyResult#continuous_deployment_policy #continuous_deployment_policy} => Types::ContinuousDeploymentPolicy
3563
+ # * {Types::GetContinuousDeploymentPolicyResult#etag #etag} => String
3564
+ #
3565
+ # @example Request syntax with placeholder values
3566
+ #
3567
+ # resp = client.get_continuous_deployment_policy({
3568
+ # id: "string", # required
3569
+ # })
3570
+ #
3571
+ # @example Response structure
3572
+ #
3573
+ # resp.continuous_deployment_policy.id #=> String
3574
+ # resp.continuous_deployment_policy.last_modified_time #=> Time
3575
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.staging_distribution_dns_names.quantity #=> Integer
3576
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.staging_distribution_dns_names.items #=> Array
3577
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.staging_distribution_dns_names.items[0] #=> String
3578
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.enabled #=> Boolean
3579
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_weight_config.weight #=> Float
3580
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_weight_config.session_stickiness_config.idle_ttl #=> Integer
3581
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_weight_config.session_stickiness_config.maximum_ttl #=> Integer
3582
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_header_config.header #=> String
3583
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_header_config.value #=> String
3584
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.type #=> String, one of "SingleWeight", "SingleHeader"
3585
+ # resp.etag #=> String
3586
+ #
3587
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetContinuousDeploymentPolicy AWS API Documentation
3588
+ #
3589
+ # @overload get_continuous_deployment_policy(params = {})
3590
+ # @param [Hash] params ({})
3591
+ def get_continuous_deployment_policy(params = {}, options = {})
3592
+ req = build_request(:get_continuous_deployment_policy, params)
3593
+ req.send_request(options)
3594
+ end
3595
+
3596
+ # Gets configuration information about a continuous deployment policy.
3597
+ #
3598
+ # @option params [required, String] :id
3599
+ # The identifier of the continuous deployment policy whose configuration
3600
+ # you are getting.
3601
+ #
3602
+ # @return [Types::GetContinuousDeploymentPolicyConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3603
+ #
3604
+ # * {Types::GetContinuousDeploymentPolicyConfigResult#continuous_deployment_policy_config #continuous_deployment_policy_config} => Types::ContinuousDeploymentPolicyConfig
3605
+ # * {Types::GetContinuousDeploymentPolicyConfigResult#etag #etag} => String
3606
+ #
3607
+ # @example Request syntax with placeholder values
3608
+ #
3609
+ # resp = client.get_continuous_deployment_policy_config({
3610
+ # id: "string", # required
3611
+ # })
3612
+ #
3613
+ # @example Response structure
3614
+ #
3615
+ # resp.continuous_deployment_policy_config.staging_distribution_dns_names.quantity #=> Integer
3616
+ # resp.continuous_deployment_policy_config.staging_distribution_dns_names.items #=> Array
3617
+ # resp.continuous_deployment_policy_config.staging_distribution_dns_names.items[0] #=> String
3618
+ # resp.continuous_deployment_policy_config.enabled #=> Boolean
3619
+ # resp.continuous_deployment_policy_config.traffic_config.single_weight_config.weight #=> Float
3620
+ # resp.continuous_deployment_policy_config.traffic_config.single_weight_config.session_stickiness_config.idle_ttl #=> Integer
3621
+ # resp.continuous_deployment_policy_config.traffic_config.single_weight_config.session_stickiness_config.maximum_ttl #=> Integer
3622
+ # resp.continuous_deployment_policy_config.traffic_config.single_header_config.header #=> String
3623
+ # resp.continuous_deployment_policy_config.traffic_config.single_header_config.value #=> String
3624
+ # resp.continuous_deployment_policy_config.traffic_config.type #=> String, one of "SingleWeight", "SingleHeader"
3625
+ # resp.etag #=> String
3626
+ #
3627
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetContinuousDeploymentPolicyConfig AWS API Documentation
3628
+ #
3629
+ # @overload get_continuous_deployment_policy_config(params = {})
3630
+ # @param [Hash] params ({})
3631
+ def get_continuous_deployment_policy_config(params = {}, options = {})
3632
+ req = build_request(:get_continuous_deployment_policy_config, params)
3633
+ req.send_request(options)
3634
+ end
3635
+
3225
3636
  # Get the information about a distribution.
3226
3637
  #
3227
3638
  # @option params [required, String] :id
@@ -4784,6 +5195,66 @@ module Aws::CloudFront
4784
5195
  req.send_request(options)
4785
5196
  end
4786
5197
 
5198
+ # Gets a list of the continuous deployment policies in your Amazon Web
5199
+ # Services account.
5200
+ #
5201
+ # You can optionally specify the maximum number of items to receive in
5202
+ # the response. If the total number of items in the list exceeds the
5203
+ # maximum that you specify, or the default maximum, the response is
5204
+ # paginated. To get the next page of items, send a subsequent request
5205
+ # that specifies the `NextMarker` value from the current response as the
5206
+ # `Marker` value in the subsequent request.
5207
+ #
5208
+ # @option params [String] :marker
5209
+ # Use this field when paginating results to indicate where to begin in
5210
+ # your list of continuous deployment policies. The response includes
5211
+ # policies in the list that occur after the marker. To get the next page
5212
+ # of the list, set this field’s value to the value of `NextMarker` from
5213
+ # the current page’s response.
5214
+ #
5215
+ # @option params [Integer] :max_items
5216
+ # The maximum number of continuous deployment policies that you want
5217
+ # returned in the response.
5218
+ #
5219
+ # @return [Types::ListContinuousDeploymentPoliciesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5220
+ #
5221
+ # * {Types::ListContinuousDeploymentPoliciesResult#continuous_deployment_policy_list #continuous_deployment_policy_list} => Types::ContinuousDeploymentPolicyList
5222
+ #
5223
+ # @example Request syntax with placeholder values
5224
+ #
5225
+ # resp = client.list_continuous_deployment_policies({
5226
+ # marker: "string",
5227
+ # max_items: 1,
5228
+ # })
5229
+ #
5230
+ # @example Response structure
5231
+ #
5232
+ # resp.continuous_deployment_policy_list.next_marker #=> String
5233
+ # resp.continuous_deployment_policy_list.max_items #=> Integer
5234
+ # resp.continuous_deployment_policy_list.quantity #=> Integer
5235
+ # resp.continuous_deployment_policy_list.items #=> Array
5236
+ # resp.continuous_deployment_policy_list.items[0].continuous_deployment_policy.id #=> String
5237
+ # resp.continuous_deployment_policy_list.items[0].continuous_deployment_policy.last_modified_time #=> Time
5238
+ # resp.continuous_deployment_policy_list.items[0].continuous_deployment_policy.continuous_deployment_policy_config.staging_distribution_dns_names.quantity #=> Integer
5239
+ # resp.continuous_deployment_policy_list.items[0].continuous_deployment_policy.continuous_deployment_policy_config.staging_distribution_dns_names.items #=> Array
5240
+ # resp.continuous_deployment_policy_list.items[0].continuous_deployment_policy.continuous_deployment_policy_config.staging_distribution_dns_names.items[0] #=> String
5241
+ # resp.continuous_deployment_policy_list.items[0].continuous_deployment_policy.continuous_deployment_policy_config.enabled #=> Boolean
5242
+ # resp.continuous_deployment_policy_list.items[0].continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_weight_config.weight #=> Float
5243
+ # resp.continuous_deployment_policy_list.items[0].continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_weight_config.session_stickiness_config.idle_ttl #=> Integer
5244
+ # resp.continuous_deployment_policy_list.items[0].continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_weight_config.session_stickiness_config.maximum_ttl #=> Integer
5245
+ # resp.continuous_deployment_policy_list.items[0].continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_header_config.header #=> String
5246
+ # resp.continuous_deployment_policy_list.items[0].continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_header_config.value #=> String
5247
+ # resp.continuous_deployment_policy_list.items[0].continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.type #=> String, one of "SingleWeight", "SingleHeader"
5248
+ #
5249
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListContinuousDeploymentPolicies AWS API Documentation
5250
+ #
5251
+ # @overload list_continuous_deployment_policies(params = {})
5252
+ # @param [Hash] params ({})
5253
+ def list_continuous_deployment_policies(params = {}, options = {})
5254
+ req = build_request(:list_continuous_deployment_policies, params)
5255
+ req.send_request(options)
5256
+ end
5257
+
4787
5258
  # List CloudFront distributions.
4788
5259
  #
4789
5260
  # @option params [String] :marker
@@ -6690,82 +7161,122 @@ module Aws::CloudFront
6690
7161
  req.send_request(options)
6691
7162
  end
6692
7163
 
6693
- # Updates the configuration for a web distribution.
6694
- #
6695
- # When you update a distribution, there are more required fields than
6696
- # when you create a distribution. When you update your distribution by
6697
- # using this API action, follow the steps here to get the current
6698
- # configuration and then make your updates, to make sure that you
6699
- # include all of the required fields. To view a summary, see [Required
6700
- # Fields for Create Distribution and Update Distribution][1] in the
6701
- # *Amazon CloudFront Developer Guide*.
7164
+ # Updates a continuous deployment policy. You can update a continuous
7165
+ # deployment policy to enable or disable it, to change the percentage of
7166
+ # traffic that it sends to the staging distribution, or to change the
7167
+ # staging distribution that it sends traffic to.
6702
7168
  #
6703
- # The update process includes getting the current distribution
6704
- # configuration, updating the XML document that is returned to make your
6705
- # changes, and then submitting an `UpdateDistribution` request to make
6706
- # the updates.
7169
+ # When you update a continuous deployment policy configuration, all the
7170
+ # fields are updated with the values that are provided in the request.
7171
+ # You cannot update some fields independent of others. To update a
7172
+ # continuous deployment policy configuration:
6707
7173
  #
6708
- # For information about updating a distribution using the CloudFront
6709
- # console instead, see [Creating a Distribution][2] in the *Amazon
6710
- # CloudFront Developer Guide*.
7174
+ # 1. Use `GetContinuousDeploymentPolicyConfig` to get the current
7175
+ # configuration.
6711
7176
  #
6712
- # **To update a web distribution using the CloudFront API**
7177
+ # 2. Locally modify the fields in the continuous deployment policy
7178
+ # configuration that you want to update.
7179
+ #
7180
+ # 3. Use `UpdateContinuousDeploymentPolicy`, providing the entire
7181
+ # continuous deployment policy configuration, including the fields
7182
+ # that you modified and those that you didn’t.
7183
+ #
7184
+ # @option params [required, Types::ContinuousDeploymentPolicyConfig] :continuous_deployment_policy_config
7185
+ # The continuous deployment policy configuration.
6713
7186
  #
6714
- # 1. Submit a [GetDistributionConfig][3] request to get the current
6715
- # configuration and an `Etag` header for the distribution.
7187
+ # @option params [required, String] :id
7188
+ # The identifier of the continuous deployment policy that you are
7189
+ # updating.
6716
7190
  #
6717
- # <note markdown="1"> If you update the distribution again, you must get a new `Etag`
6718
- # header.
7191
+ # @option params [String] :if_match
7192
+ # The current version (`ETag` value) of the continuous deployment policy
7193
+ # that you are updating.
6719
7194
  #
6720
- # </note>
7195
+ # @return [Types::UpdateContinuousDeploymentPolicyResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6721
7196
  #
6722
- # 2. Update the XML document that was returned in the response to your
6723
- # `GetDistributionConfig` request to include your changes.
7197
+ # * {Types::UpdateContinuousDeploymentPolicyResult#continuous_deployment_policy #continuous_deployment_policy} => Types::ContinuousDeploymentPolicy
7198
+ # * {Types::UpdateContinuousDeploymentPolicyResult#etag #etag} => String
6724
7199
  #
6725
- # When you edit the XML file, be aware of the following:
7200
+ # @example Request syntax with placeholder values
6726
7201
  #
6727
- # * You must strip out the ETag parameter that is returned.
7202
+ # resp = client.update_continuous_deployment_policy({
7203
+ # continuous_deployment_policy_config: { # required
7204
+ # staging_distribution_dns_names: { # required
7205
+ # quantity: 1, # required
7206
+ # items: ["string"],
7207
+ # },
7208
+ # enabled: false, # required
7209
+ # traffic_config: {
7210
+ # single_weight_config: {
7211
+ # weight: 1.0, # required
7212
+ # session_stickiness_config: {
7213
+ # idle_ttl: 1, # required
7214
+ # maximum_ttl: 1, # required
7215
+ # },
7216
+ # },
7217
+ # single_header_config: {
7218
+ # header: "string", # required
7219
+ # value: "string", # required
7220
+ # },
7221
+ # type: "SingleWeight", # required, accepts SingleWeight, SingleHeader
7222
+ # },
7223
+ # },
7224
+ # id: "string", # required
7225
+ # if_match: "string",
7226
+ # })
6728
7227
  #
6729
- # * Additional fields are required when you update a distribution.
6730
- # There may be fields included in the XML file for features that
6731
- # you haven't configured for your distribution. This is expected
6732
- # and required to successfully update the distribution.
7228
+ # @example Response structure
6733
7229
  #
6734
- # * You can't change the value of `CallerReference`. If you try to
6735
- # change this value, CloudFront returns an `IllegalUpdate` error.
7230
+ # resp.continuous_deployment_policy.id #=> String
7231
+ # resp.continuous_deployment_policy.last_modified_time #=> Time
7232
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.staging_distribution_dns_names.quantity #=> Integer
7233
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.staging_distribution_dns_names.items #=> Array
7234
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.staging_distribution_dns_names.items[0] #=> String
7235
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.enabled #=> Boolean
7236
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_weight_config.weight #=> Float
7237
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_weight_config.session_stickiness_config.idle_ttl #=> Integer
7238
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_weight_config.session_stickiness_config.maximum_ttl #=> Integer
7239
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_header_config.header #=> String
7240
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.single_header_config.value #=> String
7241
+ # resp.continuous_deployment_policy.continuous_deployment_policy_config.traffic_config.type #=> String, one of "SingleWeight", "SingleHeader"
7242
+ # resp.etag #=> String
6736
7243
  #
6737
- # * The new configuration replaces the existing configuration; the
6738
- # values that you specify in an `UpdateDistribution` request are
6739
- # not merged into your existing configuration. When you add,
6740
- # delete, or replace values in an element that allows multiple
6741
- # values (for example, `CNAME`), you must specify all of the
6742
- # values that you want to appear in the updated distribution. In
6743
- # addition, you must update the corresponding `Quantity` element.
7244
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/UpdateContinuousDeploymentPolicy AWS API Documentation
6744
7245
  #
6745
- # 3. Submit an `UpdateDistribution` request to update the configuration
6746
- # for your distribution:
7246
+ # @overload update_continuous_deployment_policy(params = {})
7247
+ # @param [Hash] params ({})
7248
+ def update_continuous_deployment_policy(params = {}, options = {})
7249
+ req = build_request(:update_continuous_deployment_policy, params)
7250
+ req.send_request(options)
7251
+ end
7252
+
7253
+ # Updates the configuration for a CloudFront distribution.
6747
7254
  #
6748
- # * In the request body, include the XML document that you updated
6749
- # in Step 2. The request body must include an XML document with a
6750
- # `DistributionConfig` element.
7255
+ # The update process includes getting the current distribution
7256
+ # configuration, updating it to make your changes, and then submitting
7257
+ # an `UpdateDistribution` request to make the updates.
6751
7258
  #
6752
- # * Set the value of the HTTP `If-Match` header to the value of the
6753
- # `ETag` header that CloudFront returned when you submitted the
6754
- # `GetDistributionConfig` request in Step 1.
7259
+ # **To update a web distribution using the CloudFront API**
6755
7260
  #
6756
- # 4. Review the response to the `UpdateDistribution` request to confirm
6757
- # that the configuration was successfully updated.
7261
+ # 1. Use `GetDistributionConfig` to get the current configuration,
7262
+ # including the version identifier (`ETag`).
6758
7263
  #
6759
- # 5. Optional: Submit a [GetDistribution][4] request to confirm that
6760
- # your changes have propagated. When propagation is complete, the
6761
- # value of `Status` is `Deployed`.
7264
+ # 2. Update the distribution configuration that was returned in the
7265
+ # response. Note the following important requirements and
7266
+ # restrictions:
6762
7267
  #
7268
+ # * You must rename the `ETag` field to `IfMatch`, leaving the value
7269
+ # unchanged. (Set the value of `IfMatch` to the value of `ETag`,
7270
+ # then remove the `ETag` field.)
6763
7271
  #
7272
+ # * You can’t change the value of `CallerReference`.
6764
7273
  #
6765
- # [1]: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-overview-required-fields.html
6766
- # [2]: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-creating-console.html
6767
- # [3]: https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_GetDistributionConfig.html
6768
- # [4]: https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_GetDistribution.html
7274
+ # 3. Submit an `UpdateDistribution` request, providing the distribution
7275
+ # configuration. The new configuration replaces the existing
7276
+ # configuration. The values that you specify in an
7277
+ # `UpdateDistribution` request are not merged into your existing
7278
+ # configuration. Make sure to include all fields: the ones that you
7279
+ # modified and also the ones that you didn’t.
6769
7280
  #
6770
7281
  # @option params [required, Types::DistributionConfig] :distribution_config
6771
7282
  # The distribution's configuration information.
@@ -7535,7 +8046,7 @@ module Aws::CloudFront
7535
8046
  # resp = client.update_origin_access_control({
7536
8047
  # origin_access_control_config: { # required
7537
8048
  # name: "string", # required
7538
- # description: "string", # required
8049
+ # description: "string",
7539
8050
  # signing_protocol: "sigv4", # required, accepts sigv4
7540
8051
  # signing_behavior: "never", # required, accepts never, always, no-override
7541
8052
  # origin_access_control_origin_type: "s3", # required, accepts s3
@@ -8063,7 +8574,7 @@ module Aws::CloudFront
8063
8574
  params: params,
8064
8575
  config: config)
8065
8576
  context[:gem_name] = 'aws-sdk-cloudfront'
8066
- context[:gem_version] = '1.69.0'
8577
+ context[:gem_version] = '1.70.0'
8067
8578
  Seahorse::Client::Request.new(handlers, context)
8068
8579
  end
8069
8580