aws-sdk-ebs 1.3.0 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/aws-sdk-ebs.rb +5 -3
- data/lib/aws-sdk-ebs/client.rb +323 -10
- data/lib/aws-sdk-ebs/client_api.rb +164 -0
- data/lib/aws-sdk-ebs/errors.rb +118 -0
- data/lib/aws-sdk-ebs/resource.rb +2 -0
- data/lib/aws-sdk-ebs/types.rb +507 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d1e41c88491c736e7466409588b393fd2f84870be0f00b3fb49ab8c60041bd04
|
4
|
+
data.tar.gz: ee5831d7fc2f32b5a48201b4868ffa33202c68693781c3c503939e34f73aa3ee
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 62735531c6e5aeedc7a450cdd3e86b8de5674c67ba74506a285f528829474857c07de0f43b2f66a589bf2389bb8be007f808d58c449246092ab4050bf9e29914
|
7
|
+
data.tar.gz: def1ad84f9a9cb66100ce5a3dc847a47218be07483ca648490113593a50e21802f8e340de3902ee0af710eed1859251ec361d19c0cbd7494c01e1f4f089a7497
|
data/lib/aws-sdk-ebs.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
# WARNING ABOUT GENERATED CODE
|
2
4
|
#
|
3
5
|
# This file is generated. See the contributing guide for more information:
|
@@ -25,7 +27,7 @@ require_relative 'aws-sdk-ebs/customizations'
|
|
25
27
|
# structure.
|
26
28
|
#
|
27
29
|
# ebs = Aws::EBS::Client.new
|
28
|
-
# resp = ebs.
|
30
|
+
# resp = ebs.complete_snapshot(params)
|
29
31
|
#
|
30
32
|
# See {Client} for more information.
|
31
33
|
#
|
@@ -42,9 +44,9 @@ require_relative 'aws-sdk-ebs/customizations'
|
|
42
44
|
#
|
43
45
|
# See {Errors} for more information.
|
44
46
|
#
|
45
|
-
#
|
47
|
+
# @!group service
|
46
48
|
module Aws::EBS
|
47
49
|
|
48
|
-
GEM_VERSION = '1.
|
50
|
+
GEM_VERSION = '1.8.0'
|
49
51
|
|
50
52
|
end
|
data/lib/aws-sdk-ebs/client.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
# WARNING ABOUT GENERATED CODE
|
2
4
|
#
|
3
5
|
# This file is generated. See the contributing guide for more information:
|
@@ -24,6 +26,7 @@ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
|
|
24
26
|
require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
|
25
27
|
require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
|
26
28
|
require 'aws-sdk-core/plugins/transfer_encoding.rb'
|
29
|
+
require 'aws-sdk-core/plugins/http_checksum.rb'
|
27
30
|
require 'aws-sdk-core/plugins/signature_v4.rb'
|
28
31
|
require 'aws-sdk-core/plugins/protocols/rest_json.rb'
|
29
32
|
|
@@ -69,6 +72,7 @@ module Aws::EBS
|
|
69
72
|
add_plugin(Aws::Plugins::ClientMetricsPlugin)
|
70
73
|
add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
|
71
74
|
add_plugin(Aws::Plugins::TransferEncoding)
|
75
|
+
add_plugin(Aws::Plugins::HttpChecksum)
|
72
76
|
add_plugin(Aws::Plugins::SignatureV4)
|
73
77
|
add_plugin(Aws::Plugins::Protocols::RestJson)
|
74
78
|
|
@@ -81,13 +85,28 @@ module Aws::EBS
|
|
81
85
|
# * `Aws::Credentials` - Used for configuring static, non-refreshing
|
82
86
|
# credentials.
|
83
87
|
#
|
88
|
+
# * `Aws::SharedCredentials` - Used for loading static credentials from a
|
89
|
+
# shared file, such as `~/.aws/config`.
|
90
|
+
#
|
91
|
+
# * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
|
92
|
+
#
|
93
|
+
# * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
|
94
|
+
# assume a role after providing credentials via the web.
|
95
|
+
#
|
96
|
+
# * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
|
97
|
+
# access token generated from `aws login`.
|
98
|
+
#
|
99
|
+
# * `Aws::ProcessCredentials` - Used for loading credentials from a
|
100
|
+
# process that outputs to stdout.
|
101
|
+
#
|
84
102
|
# * `Aws::InstanceProfileCredentials` - Used for loading credentials
|
85
103
|
# from an EC2 IMDS on an EC2 instance.
|
86
104
|
#
|
87
|
-
# * `Aws::
|
88
|
-
#
|
105
|
+
# * `Aws::ECSCredentials` - Used for loading credentials from
|
106
|
+
# instances running in ECS.
|
89
107
|
#
|
90
|
-
# * `Aws::
|
108
|
+
# * `Aws::CognitoIdentityCredentials` - Used for loading credentials
|
109
|
+
# from the Cognito Identity service.
|
91
110
|
#
|
92
111
|
# When `:credentials` are not configured directly, the following
|
93
112
|
# locations will be searched for credentials:
|
@@ -97,10 +116,10 @@ module Aws::EBS
|
|
97
116
|
# * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
|
98
117
|
# * `~/.aws/credentials`
|
99
118
|
# * `~/.aws/config`
|
100
|
-
# * EC2 IMDS instance profile - When used by default, the timeouts
|
101
|
-
# very aggressive. Construct and pass an instance of
|
102
|
-
# `Aws::InstanceProfileCredentails`
|
103
|
-
# timeouts.
|
119
|
+
# * EC2/ECS IMDS instance profile - When used by default, the timeouts
|
120
|
+
# are very aggressive. Construct and pass an instance of
|
121
|
+
# `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
|
122
|
+
# enable retries and extended timeouts.
|
104
123
|
#
|
105
124
|
# @option options [required, String] :region
|
106
125
|
# The AWS region to connect to. The configured `:region` is
|
@@ -161,7 +180,7 @@ module Aws::EBS
|
|
161
180
|
# @option options [String] :endpoint
|
162
181
|
# The client endpoint is normally constructed from the `:region`
|
163
182
|
# option. You should only configure an `:endpoint` when connecting
|
164
|
-
# to test endpoints. This should be a valid HTTP(S) URI.
|
183
|
+
# to test or custom endpoints. This should be a valid HTTP(S) URI.
|
165
184
|
#
|
166
185
|
# @option options [Integer] :endpoint_cache_max_entries (1000)
|
167
186
|
# Used for the maximum size limit of the LRU cache storing endpoints data
|
@@ -176,7 +195,7 @@ module Aws::EBS
|
|
176
195
|
# requests fetching endpoints information. Defaults to 60 sec.
|
177
196
|
#
|
178
197
|
# @option options [Boolean] :endpoint_discovery (false)
|
179
|
-
# When set to `true`, endpoint discovery will be enabled for operations when available.
|
198
|
+
# When set to `true`, endpoint discovery will be enabled for operations when available.
|
180
199
|
#
|
181
200
|
# @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
|
182
201
|
# The log formatter.
|
@@ -308,6 +327,62 @@ module Aws::EBS
|
|
308
327
|
|
309
328
|
# @!group API Operations
|
310
329
|
|
330
|
+
# Seals and completes the snapshot after all of the required blocks of
|
331
|
+
# data have been written to it. Completing the snapshot changes the
|
332
|
+
# status to `completed`. You cannot write new blocks to a snapshot after
|
333
|
+
# it has been completed.
|
334
|
+
#
|
335
|
+
# @option params [required, String] :snapshot_id
|
336
|
+
# The ID of the snapshot.
|
337
|
+
#
|
338
|
+
# @option params [required, Integer] :changed_blocks_count
|
339
|
+
# The number of blocks that were written to the snapshot.
|
340
|
+
#
|
341
|
+
# @option params [String] :checksum
|
342
|
+
# An aggregated Base-64 SHA256 checksum based on the checksums of each
|
343
|
+
# written block.
|
344
|
+
#
|
345
|
+
# To generate the aggregated checksum using the linear aggregation
|
346
|
+
# method, arrange the checksums for each written block in ascending
|
347
|
+
# order of their block index, concatenate them to form a single string,
|
348
|
+
# and then generate the checksum on the entire string using the SHA256
|
349
|
+
# algorithm.
|
350
|
+
#
|
351
|
+
# @option params [String] :checksum_algorithm
|
352
|
+
# The algorithm used to generate the checksum. Currently, the only
|
353
|
+
# supported algorithm is `SHA256`.
|
354
|
+
#
|
355
|
+
# @option params [String] :checksum_aggregation_method
|
356
|
+
# The aggregation method used to generate the checksum. Currently, the
|
357
|
+
# only supported aggregation method is `LINEAR`.
|
358
|
+
#
|
359
|
+
# @return [Types::CompleteSnapshotResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
360
|
+
#
|
361
|
+
# * {Types::CompleteSnapshotResponse#status #status} => String
|
362
|
+
#
|
363
|
+
# @example Request syntax with placeholder values
|
364
|
+
#
|
365
|
+
# resp = client.complete_snapshot({
|
366
|
+
# snapshot_id: "SnapshotId", # required
|
367
|
+
# changed_blocks_count: 1, # required
|
368
|
+
# checksum: "Checksum",
|
369
|
+
# checksum_algorithm: "SHA256", # accepts SHA256
|
370
|
+
# checksum_aggregation_method: "LINEAR", # accepts LINEAR
|
371
|
+
# })
|
372
|
+
#
|
373
|
+
# @example Response structure
|
374
|
+
#
|
375
|
+
# resp.status #=> String, one of "completed", "pending", "error"
|
376
|
+
#
|
377
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/CompleteSnapshot AWS API Documentation
|
378
|
+
#
|
379
|
+
# @overload complete_snapshot(params = {})
|
380
|
+
# @param [Hash] params ({})
|
381
|
+
def complete_snapshot(params = {}, options = {})
|
382
|
+
req = build_request(:complete_snapshot, params)
|
383
|
+
req.send_request(options)
|
384
|
+
end
|
385
|
+
|
311
386
|
# Returns the data in a block in an Amazon Elastic Block Store snapshot.
|
312
387
|
#
|
313
388
|
# @option params [required, String] :snapshot_id
|
@@ -480,6 +555,244 @@ module Aws::EBS
|
|
480
555
|
req.send_request(options)
|
481
556
|
end
|
482
557
|
|
558
|
+
# Writes a block of data to a block in the snapshot. If the specified
|
559
|
+
# block contains data, the existing data is overwritten. The target
|
560
|
+
# snapshot must be in the `pending` state.
|
561
|
+
#
|
562
|
+
# Data written to a snapshot must be aligned with 512-byte sectors.
|
563
|
+
#
|
564
|
+
# @option params [required, String] :snapshot_id
|
565
|
+
# The ID of the snapshot.
|
566
|
+
#
|
567
|
+
# @option params [required, Integer] :block_index
|
568
|
+
# The block index of the block in which to write the data. A block index
|
569
|
+
# is the offset position of a block within a snapshot, and it is used to
|
570
|
+
# identify the block. To identify the logical offset of the data in the
|
571
|
+
# logical volume, multiply the block index with the block size (Block
|
572
|
+
# index * 512 bytes).
|
573
|
+
#
|
574
|
+
# @option params [required, String, IO] :block_data
|
575
|
+
# The data to write to the block.
|
576
|
+
#
|
577
|
+
# The block data is not signed as part of the Signature Version 4
|
578
|
+
# signing process. As a result, you must generate and provide a
|
579
|
+
# Base64-encoded SHA256 checksum for the block data using the
|
580
|
+
# **x-amz-Checksum** header. Also, you must specify the checksum
|
581
|
+
# algorithm using the **x-amz-Checksum-Algorithm** header. The checksum
|
582
|
+
# that you provide is part of the Signature Version 4 signing process.
|
583
|
+
# It is validated against a checksum generated by Amazon EBS to ensure
|
584
|
+
# the validity and authenticity of the data. If the checksums do not
|
585
|
+
# correspond, the request fails. For more information, see [ Using
|
586
|
+
# checksums with the EBS direct APIs][1] in the *Amazon Elastic Compute
|
587
|
+
# Cloud User Guide*.
|
588
|
+
#
|
589
|
+
#
|
590
|
+
#
|
591
|
+
# [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html#ebsapis-using-checksums
|
592
|
+
#
|
593
|
+
# @option params [required, Integer] :data_length
|
594
|
+
# The size of the data to write to the block, in bytes. Currently, the
|
595
|
+
# only supported size is `524288`.
|
596
|
+
#
|
597
|
+
# Valid values: `524288`
|
598
|
+
#
|
599
|
+
# @option params [Integer] :progress
|
600
|
+
# The progress of the write process, as a percentage.
|
601
|
+
#
|
602
|
+
# @option params [required, String] :checksum
|
603
|
+
# A Base64-encoded SHA256 checksum of the data. Only SHA256 checksums
|
604
|
+
# are supported.
|
605
|
+
#
|
606
|
+
# @option params [required, String] :checksum_algorithm
|
607
|
+
# The algorithm used to generate the checksum. Currently, the only
|
608
|
+
# supported algorithm is `SHA256`.
|
609
|
+
#
|
610
|
+
# @return [Types::PutSnapshotBlockResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
611
|
+
#
|
612
|
+
# * {Types::PutSnapshotBlockResponse#checksum #checksum} => String
|
613
|
+
# * {Types::PutSnapshotBlockResponse#checksum_algorithm #checksum_algorithm} => String
|
614
|
+
#
|
615
|
+
# @example Request syntax with placeholder values
|
616
|
+
#
|
617
|
+
# resp = client.put_snapshot_block({
|
618
|
+
# snapshot_id: "SnapshotId", # required
|
619
|
+
# block_index: 1, # required
|
620
|
+
# block_data: "data", # required
|
621
|
+
# data_length: 1, # required
|
622
|
+
# progress: 1,
|
623
|
+
# checksum: "Checksum", # required
|
624
|
+
# checksum_algorithm: "SHA256", # required, accepts SHA256
|
625
|
+
# })
|
626
|
+
#
|
627
|
+
# @example Response structure
|
628
|
+
#
|
629
|
+
# resp.checksum #=> String
|
630
|
+
# resp.checksum_algorithm #=> String, one of "SHA256"
|
631
|
+
#
|
632
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/PutSnapshotBlock AWS API Documentation
|
633
|
+
#
|
634
|
+
# @overload put_snapshot_block(params = {})
|
635
|
+
# @param [Hash] params ({})
|
636
|
+
def put_snapshot_block(params = {}, options = {})
|
637
|
+
req = build_request(:put_snapshot_block, params)
|
638
|
+
req.send_request(options)
|
639
|
+
end
|
640
|
+
|
641
|
+
# Creates a new Amazon EBS snapshot. The new snapshot enters the
|
642
|
+
# `pending` state after the request completes.
|
643
|
+
#
|
644
|
+
# After creating the snapshot, use [ PutSnapshotBlock][1] to write
|
645
|
+
# blocks of data to the snapshot.
|
646
|
+
#
|
647
|
+
#
|
648
|
+
#
|
649
|
+
# [1]: https://docs.aws.amazon.com/ebs/latest/APIReference/API_PutSnapshotBlock.html
|
650
|
+
#
|
651
|
+
# @option params [required, Integer] :volume_size
|
652
|
+
# The size of the volume, in GiB. The maximum size is `16384` GiB (16
|
653
|
+
# TiB).
|
654
|
+
#
|
655
|
+
# @option params [String] :parent_snapshot_id
|
656
|
+
# The ID of the parent snapshot. If there is no parent snapshot, or if
|
657
|
+
# you are creating the first snapshot for an on-premises volume, omit
|
658
|
+
# this parameter.
|
659
|
+
#
|
660
|
+
# If your account is enabled for encryption by default, you cannot use
|
661
|
+
# an unencrypted snapshot as a parent snapshot. You must first create an
|
662
|
+
# encrypted copy of the parent snapshot using [CopySnapshot][1].
|
663
|
+
#
|
664
|
+
#
|
665
|
+
#
|
666
|
+
# [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CopySnapshot.html
|
667
|
+
#
|
668
|
+
# @option params [Array<Types::Tag>] :tags
|
669
|
+
# The tags to apply to the snapshot.
|
670
|
+
#
|
671
|
+
# @option params [String] :description
|
672
|
+
# A description for the snapshot.
|
673
|
+
#
|
674
|
+
# @option params [String] :client_token
|
675
|
+
# A unique, case-sensitive identifier that you provide to ensure the
|
676
|
+
# idempotency of the request. Idempotency ensures that an API request
|
677
|
+
# completes only once. With an idempotent request, if the original
|
678
|
+
# request completes successfully. The subsequent retries with the same
|
679
|
+
# client token return the result from the original successful request
|
680
|
+
# and they have no additional effect.
|
681
|
+
#
|
682
|
+
# If you do not specify a client token, one is automatically generated
|
683
|
+
# by the AWS SDK.
|
684
|
+
#
|
685
|
+
# For more information, see [ Idempotency for StartSnapshot API][1] in
|
686
|
+
# the *Amazon Elastic Compute Cloud User Guide*.
|
687
|
+
#
|
688
|
+
# **A suitable default value is auto-generated.** You should normally
|
689
|
+
# not need to pass this option.**
|
690
|
+
#
|
691
|
+
#
|
692
|
+
#
|
693
|
+
# [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-direct-api-idempotency.html
|
694
|
+
#
|
695
|
+
# @option params [Boolean] :encrypted
|
696
|
+
# Indicates whether to encrypt the snapshot. To create an encrypted
|
697
|
+
# snapshot, specify `true`. To create an unencrypted snapshot, omit this
|
698
|
+
# parameter.
|
699
|
+
#
|
700
|
+
# If you specify a value for **ParentSnapshotId**, omit this parameter.
|
701
|
+
#
|
702
|
+
# If you specify `true`, the snapshot is encrypted using the CMK
|
703
|
+
# specified using the **KmsKeyArn** parameter. If no value is specified
|
704
|
+
# for **KmsKeyArn**, the default CMK for your account is used. If no
|
705
|
+
# default CMK has been specified for your account, the AWS managed CMK
|
706
|
+
# is used. To set a default CMK for your account, use [
|
707
|
+
# ModifyEbsDefaultKmsKeyId][1].
|
708
|
+
#
|
709
|
+
# If your account is enabled for encryption by default, you cannot set
|
710
|
+
# this parameter to `false`. In this case, you can omit this parameter.
|
711
|
+
#
|
712
|
+
# For more information, see [ Using encryption][2] in the *Amazon
|
713
|
+
# Elastic Compute Cloud User Guide*.
|
714
|
+
#
|
715
|
+
#
|
716
|
+
#
|
717
|
+
# [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyEbsDefaultKmsKeyId.html
|
718
|
+
# [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html#ebsapis-using-encryption
|
719
|
+
#
|
720
|
+
# @option params [String] :kms_key_arn
|
721
|
+
# The Amazon Resource Name (ARN) of the AWS Key Management Service (AWS
|
722
|
+
# KMS) customer master key (CMK) to be used to encrypt the snapshot. If
|
723
|
+
# you do not specify a CMK, the default AWS managed CMK is used.
|
724
|
+
#
|
725
|
+
# If you specify a **ParentSnapshotId**, omit this parameter; the
|
726
|
+
# snapshot will be encrypted using the same CMK that was used to encrypt
|
727
|
+
# the parent snapshot.
|
728
|
+
#
|
729
|
+
# If **Encrypted** is set to `true`, you must specify a CMK ARN.
|
730
|
+
#
|
731
|
+
# @option params [Integer] :timeout
|
732
|
+
# The amount of time (in minutes) after which the snapshot is
|
733
|
+
# automatically cancelled if:
|
734
|
+
#
|
735
|
+
# * No blocks are written to the snapshot.
|
736
|
+
#
|
737
|
+
# * The snapshot is not completed after writing the last block of data.
|
738
|
+
#
|
739
|
+
# If no value is specified, the timeout defaults to `60` minutes.
|
740
|
+
#
|
741
|
+
# @return [Types::StartSnapshotResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
742
|
+
#
|
743
|
+
# * {Types::StartSnapshotResponse#description #description} => String
|
744
|
+
# * {Types::StartSnapshotResponse#snapshot_id #snapshot_id} => String
|
745
|
+
# * {Types::StartSnapshotResponse#owner_id #owner_id} => String
|
746
|
+
# * {Types::StartSnapshotResponse#status #status} => String
|
747
|
+
# * {Types::StartSnapshotResponse#start_time #start_time} => Time
|
748
|
+
# * {Types::StartSnapshotResponse#volume_size #volume_size} => Integer
|
749
|
+
# * {Types::StartSnapshotResponse#block_size #block_size} => Integer
|
750
|
+
# * {Types::StartSnapshotResponse#tags #tags} => Array<Types::Tag>
|
751
|
+
# * {Types::StartSnapshotResponse#parent_snapshot_id #parent_snapshot_id} => String
|
752
|
+
# * {Types::StartSnapshotResponse#kms_key_arn #kms_key_arn} => String
|
753
|
+
#
|
754
|
+
# @example Request syntax with placeholder values
|
755
|
+
#
|
756
|
+
# resp = client.start_snapshot({
|
757
|
+
# volume_size: 1, # required
|
758
|
+
# parent_snapshot_id: "SnapshotId",
|
759
|
+
# tags: [
|
760
|
+
# {
|
761
|
+
# key: "TagKey",
|
762
|
+
# value: "TagValue",
|
763
|
+
# },
|
764
|
+
# ],
|
765
|
+
# description: "Description",
|
766
|
+
# client_token: "IdempotencyToken",
|
767
|
+
# encrypted: false,
|
768
|
+
# kms_key_arn: "KmsKeyArn",
|
769
|
+
# timeout: 1,
|
770
|
+
# })
|
771
|
+
#
|
772
|
+
# @example Response structure
|
773
|
+
#
|
774
|
+
# resp.description #=> String
|
775
|
+
# resp.snapshot_id #=> String
|
776
|
+
# resp.owner_id #=> String
|
777
|
+
# resp.status #=> String, one of "completed", "pending", "error"
|
778
|
+
# resp.start_time #=> Time
|
779
|
+
# resp.volume_size #=> Integer
|
780
|
+
# resp.block_size #=> Integer
|
781
|
+
# resp.tags #=> Array
|
782
|
+
# resp.tags[0].key #=> String
|
783
|
+
# resp.tags[0].value #=> String
|
784
|
+
# resp.parent_snapshot_id #=> String
|
785
|
+
# resp.kms_key_arn #=> String
|
786
|
+
#
|
787
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/StartSnapshot AWS API Documentation
|
788
|
+
#
|
789
|
+
# @overload start_snapshot(params = {})
|
790
|
+
# @param [Hash] params ({})
|
791
|
+
def start_snapshot(params = {}, options = {})
|
792
|
+
req = build_request(:start_snapshot, params)
|
793
|
+
req.send_request(options)
|
794
|
+
end
|
795
|
+
|
483
796
|
# @!endgroup
|
484
797
|
|
485
798
|
# @param params ({})
|
@@ -493,7 +806,7 @@ module Aws::EBS
|
|
493
806
|
params: params,
|
494
807
|
config: config)
|
495
808
|
context[:gem_name] = 'aws-sdk-ebs'
|
496
|
-
context[:gem_version] = '1.
|
809
|
+
context[:gem_version] = '1.8.0'
|
497
810
|
Seahorse::Client::Request.new(handlers, context)
|
498
811
|
end
|
499
812
|
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
# WARNING ABOUT GENERATED CODE
|
2
4
|
#
|
3
5
|
# This file is generated. See the contributing guide for more information:
|
@@ -11,33 +13,67 @@ module Aws::EBS
|
|
11
13
|
|
12
14
|
include Seahorse::Model
|
13
15
|
|
16
|
+
AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
|
17
|
+
AccessDeniedExceptionReason = Shapes::StringShape.new(name: 'AccessDeniedExceptionReason')
|
14
18
|
Block = Shapes::StructureShape.new(name: 'Block')
|
15
19
|
BlockData = Shapes::BlobShape.new(name: 'BlockData', streaming: true)
|
16
20
|
BlockIndex = Shapes::IntegerShape.new(name: 'BlockIndex')
|
17
21
|
BlockSize = Shapes::IntegerShape.new(name: 'BlockSize')
|
18
22
|
BlockToken = Shapes::StringShape.new(name: 'BlockToken')
|
19
23
|
Blocks = Shapes::ListShape.new(name: 'Blocks')
|
24
|
+
Boolean = Shapes::BooleanShape.new(name: 'Boolean')
|
20
25
|
ChangedBlock = Shapes::StructureShape.new(name: 'ChangedBlock')
|
21
26
|
ChangedBlocks = Shapes::ListShape.new(name: 'ChangedBlocks')
|
27
|
+
ChangedBlocksCount = Shapes::IntegerShape.new(name: 'ChangedBlocksCount')
|
22
28
|
Checksum = Shapes::StringShape.new(name: 'Checksum')
|
29
|
+
ChecksumAggregationMethod = Shapes::StringShape.new(name: 'ChecksumAggregationMethod')
|
23
30
|
ChecksumAlgorithm = Shapes::StringShape.new(name: 'ChecksumAlgorithm')
|
31
|
+
CompleteSnapshotRequest = Shapes::StructureShape.new(name: 'CompleteSnapshotRequest')
|
32
|
+
CompleteSnapshotResponse = Shapes::StructureShape.new(name: 'CompleteSnapshotResponse')
|
33
|
+
ConcurrentLimitExceededException = Shapes::StructureShape.new(name: 'ConcurrentLimitExceededException')
|
34
|
+
ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
|
24
35
|
DataLength = Shapes::IntegerShape.new(name: 'DataLength')
|
36
|
+
Description = Shapes::StringShape.new(name: 'Description')
|
25
37
|
ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
|
26
38
|
GetSnapshotBlockRequest = Shapes::StructureShape.new(name: 'GetSnapshotBlockRequest')
|
27
39
|
GetSnapshotBlockResponse = Shapes::StructureShape.new(name: 'GetSnapshotBlockResponse')
|
40
|
+
IdempotencyToken = Shapes::StringShape.new(name: 'IdempotencyToken')
|
41
|
+
InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
|
42
|
+
KmsKeyArn = Shapes::StringShape.new(name: 'KmsKeyArn')
|
28
43
|
ListChangedBlocksRequest = Shapes::StructureShape.new(name: 'ListChangedBlocksRequest')
|
29
44
|
ListChangedBlocksResponse = Shapes::StructureShape.new(name: 'ListChangedBlocksResponse')
|
30
45
|
ListSnapshotBlocksRequest = Shapes::StructureShape.new(name: 'ListSnapshotBlocksRequest')
|
31
46
|
ListSnapshotBlocksResponse = Shapes::StructureShape.new(name: 'ListSnapshotBlocksResponse')
|
32
47
|
MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
|
48
|
+
OwnerId = Shapes::StringShape.new(name: 'OwnerId')
|
33
49
|
PageToken = Shapes::StringShape.new(name: 'PageToken')
|
50
|
+
Progress = Shapes::IntegerShape.new(name: 'Progress')
|
51
|
+
PutSnapshotBlockRequest = Shapes::StructureShape.new(name: 'PutSnapshotBlockRequest')
|
52
|
+
PutSnapshotBlockResponse = Shapes::StructureShape.new(name: 'PutSnapshotBlockResponse')
|
53
|
+
RequestThrottledException = Shapes::StructureShape.new(name: 'RequestThrottledException')
|
54
|
+
RequestThrottledExceptionReason = Shapes::StringShape.new(name: 'RequestThrottledExceptionReason')
|
34
55
|
ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
|
56
|
+
ResourceNotFoundExceptionReason = Shapes::StringShape.new(name: 'ResourceNotFoundExceptionReason')
|
57
|
+
ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
|
58
|
+
ServiceQuotaExceededExceptionReason = Shapes::StringShape.new(name: 'ServiceQuotaExceededExceptionReason')
|
35
59
|
SnapshotId = Shapes::StringShape.new(name: 'SnapshotId')
|
60
|
+
StartSnapshotRequest = Shapes::StructureShape.new(name: 'StartSnapshotRequest')
|
61
|
+
StartSnapshotResponse = Shapes::StructureShape.new(name: 'StartSnapshotResponse')
|
62
|
+
Status = Shapes::StringShape.new(name: 'Status')
|
63
|
+
Tag = Shapes::StructureShape.new(name: 'Tag')
|
64
|
+
TagKey = Shapes::StringShape.new(name: 'TagKey')
|
65
|
+
TagValue = Shapes::StringShape.new(name: 'TagValue')
|
66
|
+
Tags = Shapes::ListShape.new(name: 'Tags')
|
36
67
|
TimeStamp = Shapes::TimestampShape.new(name: 'TimeStamp')
|
68
|
+
Timeout = Shapes::IntegerShape.new(name: 'Timeout')
|
37
69
|
ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
|
38
70
|
ValidationExceptionReason = Shapes::StringShape.new(name: 'ValidationExceptionReason')
|
39
71
|
VolumeSize = Shapes::IntegerShape.new(name: 'VolumeSize')
|
40
72
|
|
73
|
+
AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
|
74
|
+
AccessDeniedException.add_member(:reason, Shapes::ShapeRef.new(shape: AccessDeniedExceptionReason, required: true, location_name: "Reason"))
|
75
|
+
AccessDeniedException.struct_class = Types::AccessDeniedException
|
76
|
+
|
41
77
|
Block.add_member(:block_index, Shapes::ShapeRef.new(shape: BlockIndex, location_name: "BlockIndex"))
|
42
78
|
Block.add_member(:block_token, Shapes::ShapeRef.new(shape: BlockToken, location_name: "BlockToken"))
|
43
79
|
Block.struct_class = Types::Block
|
@@ -51,6 +87,22 @@ module Aws::EBS
|
|
51
87
|
|
52
88
|
ChangedBlocks.member = Shapes::ShapeRef.new(shape: ChangedBlock)
|
53
89
|
|
90
|
+
CompleteSnapshotRequest.add_member(:snapshot_id, Shapes::ShapeRef.new(shape: SnapshotId, required: true, location: "uri", location_name: "snapshotId"))
|
91
|
+
CompleteSnapshotRequest.add_member(:changed_blocks_count, Shapes::ShapeRef.new(shape: ChangedBlocksCount, required: true, location: "header", location_name: "x-amz-ChangedBlocksCount"))
|
92
|
+
CompleteSnapshotRequest.add_member(:checksum, Shapes::ShapeRef.new(shape: Checksum, location: "header", location_name: "x-amz-Checksum"))
|
93
|
+
CompleteSnapshotRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-Checksum-Algorithm"))
|
94
|
+
CompleteSnapshotRequest.add_member(:checksum_aggregation_method, Shapes::ShapeRef.new(shape: ChecksumAggregationMethod, location: "header", location_name: "x-amz-Checksum-Aggregation-Method"))
|
95
|
+
CompleteSnapshotRequest.struct_class = Types::CompleteSnapshotRequest
|
96
|
+
|
97
|
+
CompleteSnapshotResponse.add_member(:status, Shapes::ShapeRef.new(shape: Status, location_name: "Status"))
|
98
|
+
CompleteSnapshotResponse.struct_class = Types::CompleteSnapshotResponse
|
99
|
+
|
100
|
+
ConcurrentLimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
|
101
|
+
ConcurrentLimitExceededException.struct_class = Types::ConcurrentLimitExceededException
|
102
|
+
|
103
|
+
ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
|
104
|
+
ConflictException.struct_class = Types::ConflictException
|
105
|
+
|
54
106
|
GetSnapshotBlockRequest.add_member(:snapshot_id, Shapes::ShapeRef.new(shape: SnapshotId, required: true, location: "uri", location_name: "snapshotId"))
|
55
107
|
GetSnapshotBlockRequest.add_member(:block_index, Shapes::ShapeRef.new(shape: BlockIndex, required: true, location: "uri", location_name: "blockIndex"))
|
56
108
|
GetSnapshotBlockRequest.add_member(:block_token, Shapes::ShapeRef.new(shape: BlockToken, required: true, location: "querystring", location_name: "blockToken"))
|
@@ -64,6 +116,9 @@ module Aws::EBS
|
|
64
116
|
GetSnapshotBlockResponse[:payload] = :block_data
|
65
117
|
GetSnapshotBlockResponse[:payload_member] = GetSnapshotBlockResponse.member(:block_data)
|
66
118
|
|
119
|
+
InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
|
120
|
+
InternalServerException.struct_class = Types::InternalServerException
|
121
|
+
|
67
122
|
ListChangedBlocksRequest.add_member(:first_snapshot_id, Shapes::ShapeRef.new(shape: SnapshotId, location: "querystring", location_name: "firstSnapshotId"))
|
68
123
|
ListChangedBlocksRequest.add_member(:second_snapshot_id, Shapes::ShapeRef.new(shape: SnapshotId, required: true, location: "uri", location_name: "secondSnapshotId"))
|
69
124
|
ListChangedBlocksRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PageToken, location: "querystring", location_name: "pageToken"))
|
@@ -91,9 +146,61 @@ module Aws::EBS
|
|
91
146
|
ListSnapshotBlocksResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PageToken, location_name: "NextToken"))
|
92
147
|
ListSnapshotBlocksResponse.struct_class = Types::ListSnapshotBlocksResponse
|
93
148
|
|
149
|
+
PutSnapshotBlockRequest.add_member(:snapshot_id, Shapes::ShapeRef.new(shape: SnapshotId, required: true, location: "uri", location_name: "snapshotId"))
|
150
|
+
PutSnapshotBlockRequest.add_member(:block_index, Shapes::ShapeRef.new(shape: BlockIndex, required: true, location: "uri", location_name: "blockIndex"))
|
151
|
+
PutSnapshotBlockRequest.add_member(:block_data, Shapes::ShapeRef.new(shape: BlockData, required: true, location_name: "BlockData"))
|
152
|
+
PutSnapshotBlockRequest.add_member(:data_length, Shapes::ShapeRef.new(shape: DataLength, required: true, location: "header", location_name: "x-amz-Data-Length"))
|
153
|
+
PutSnapshotBlockRequest.add_member(:progress, Shapes::ShapeRef.new(shape: Progress, location: "header", location_name: "x-amz-Progress"))
|
154
|
+
PutSnapshotBlockRequest.add_member(:checksum, Shapes::ShapeRef.new(shape: Checksum, required: true, location: "header", location_name: "x-amz-Checksum"))
|
155
|
+
PutSnapshotBlockRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, required: true, location: "header", location_name: "x-amz-Checksum-Algorithm"))
|
156
|
+
PutSnapshotBlockRequest.struct_class = Types::PutSnapshotBlockRequest
|
157
|
+
PutSnapshotBlockRequest[:payload] = :block_data
|
158
|
+
PutSnapshotBlockRequest[:payload_member] = PutSnapshotBlockRequest.member(:block_data)
|
159
|
+
|
160
|
+
PutSnapshotBlockResponse.add_member(:checksum, Shapes::ShapeRef.new(shape: Checksum, location: "header", location_name: "x-amz-Checksum"))
|
161
|
+
PutSnapshotBlockResponse.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-Checksum-Algorithm"))
|
162
|
+
PutSnapshotBlockResponse.struct_class = Types::PutSnapshotBlockResponse
|
163
|
+
|
164
|
+
RequestThrottledException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
|
165
|
+
RequestThrottledException.add_member(:reason, Shapes::ShapeRef.new(shape: RequestThrottledExceptionReason, location_name: "Reason"))
|
166
|
+
RequestThrottledException.struct_class = Types::RequestThrottledException
|
167
|
+
|
94
168
|
ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
|
169
|
+
ResourceNotFoundException.add_member(:reason, Shapes::ShapeRef.new(shape: ResourceNotFoundExceptionReason, location_name: "Reason"))
|
95
170
|
ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
|
96
171
|
|
172
|
+
ServiceQuotaExceededException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
|
173
|
+
ServiceQuotaExceededException.add_member(:reason, Shapes::ShapeRef.new(shape: ServiceQuotaExceededExceptionReason, location_name: "Reason"))
|
174
|
+
ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
|
175
|
+
|
176
|
+
StartSnapshotRequest.add_member(:volume_size, Shapes::ShapeRef.new(shape: VolumeSize, required: true, location_name: "VolumeSize"))
|
177
|
+
StartSnapshotRequest.add_member(:parent_snapshot_id, Shapes::ShapeRef.new(shape: SnapshotId, location_name: "ParentSnapshotId"))
|
178
|
+
StartSnapshotRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
|
179
|
+
StartSnapshotRequest.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "Description"))
|
180
|
+
StartSnapshotRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: IdempotencyToken, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
|
181
|
+
StartSnapshotRequest.add_member(:encrypted, Shapes::ShapeRef.new(shape: Boolean, location_name: "Encrypted"))
|
182
|
+
StartSnapshotRequest.add_member(:kms_key_arn, Shapes::ShapeRef.new(shape: KmsKeyArn, location_name: "KmsKeyArn"))
|
183
|
+
StartSnapshotRequest.add_member(:timeout, Shapes::ShapeRef.new(shape: Timeout, location_name: "Timeout"))
|
184
|
+
StartSnapshotRequest.struct_class = Types::StartSnapshotRequest
|
185
|
+
|
186
|
+
StartSnapshotResponse.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "Description"))
|
187
|
+
StartSnapshotResponse.add_member(:snapshot_id, Shapes::ShapeRef.new(shape: SnapshotId, location_name: "SnapshotId"))
|
188
|
+
StartSnapshotResponse.add_member(:owner_id, Shapes::ShapeRef.new(shape: OwnerId, location_name: "OwnerId"))
|
189
|
+
StartSnapshotResponse.add_member(:status, Shapes::ShapeRef.new(shape: Status, location_name: "Status"))
|
190
|
+
StartSnapshotResponse.add_member(:start_time, Shapes::ShapeRef.new(shape: TimeStamp, location_name: "StartTime"))
|
191
|
+
StartSnapshotResponse.add_member(:volume_size, Shapes::ShapeRef.new(shape: VolumeSize, location_name: "VolumeSize"))
|
192
|
+
StartSnapshotResponse.add_member(:block_size, Shapes::ShapeRef.new(shape: BlockSize, location_name: "BlockSize"))
|
193
|
+
StartSnapshotResponse.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
|
194
|
+
StartSnapshotResponse.add_member(:parent_snapshot_id, Shapes::ShapeRef.new(shape: SnapshotId, location_name: "ParentSnapshotId"))
|
195
|
+
StartSnapshotResponse.add_member(:kms_key_arn, Shapes::ShapeRef.new(shape: KmsKeyArn, location_name: "KmsKeyArn"))
|
196
|
+
StartSnapshotResponse.struct_class = Types::StartSnapshotResponse
|
197
|
+
|
198
|
+
Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, location_name: "Key"))
|
199
|
+
Tag.add_member(:value, Shapes::ShapeRef.new(shape: TagValue, location_name: "Value"))
|
200
|
+
Tag.struct_class = Types::Tag
|
201
|
+
|
202
|
+
Tags.member = Shapes::ShapeRef.new(shape: Tag)
|
203
|
+
|
97
204
|
ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
|
98
205
|
ValidationException.add_member(:reason, Shapes::ShapeRef.new(shape: ValidationExceptionReason, location_name: "Reason"))
|
99
206
|
ValidationException.struct_class = Types::ValidationException
|
@@ -116,14 +223,32 @@ module Aws::EBS
|
|
116
223
|
"uid" => "ebs-2019-11-02",
|
117
224
|
}
|
118
225
|
|
226
|
+
api.add_operation(:complete_snapshot, Seahorse::Model::Operation.new.tap do |o|
|
227
|
+
o.name = "CompleteSnapshot"
|
228
|
+
o.http_method = "POST"
|
229
|
+
o.http_request_uri = "/snapshots/completion/{snapshotId}"
|
230
|
+
o.input = Shapes::ShapeRef.new(shape: CompleteSnapshotRequest)
|
231
|
+
o.output = Shapes::ShapeRef.new(shape: CompleteSnapshotResponse)
|
232
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
233
|
+
o.errors << Shapes::ShapeRef.new(shape: ValidationException)
|
234
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
235
|
+
o.errors << Shapes::ShapeRef.new(shape: RequestThrottledException)
|
236
|
+
o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
|
237
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
|
238
|
+
end)
|
239
|
+
|
119
240
|
api.add_operation(:get_snapshot_block, Seahorse::Model::Operation.new.tap do |o|
|
120
241
|
o.name = "GetSnapshotBlock"
|
121
242
|
o.http_method = "GET"
|
122
243
|
o.http_request_uri = "/snapshots/{snapshotId}/blocks/{blockIndex}"
|
123
244
|
o.input = Shapes::ShapeRef.new(shape: GetSnapshotBlockRequest)
|
124
245
|
o.output = Shapes::ShapeRef.new(shape: GetSnapshotBlockResponse)
|
246
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
125
247
|
o.errors << Shapes::ShapeRef.new(shape: ValidationException)
|
126
248
|
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
249
|
+
o.errors << Shapes::ShapeRef.new(shape: RequestThrottledException)
|
250
|
+
o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
|
251
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
|
127
252
|
end)
|
128
253
|
|
129
254
|
api.add_operation(:list_changed_blocks, Seahorse::Model::Operation.new.tap do |o|
|
@@ -132,8 +257,12 @@ module Aws::EBS
|
|
132
257
|
o.http_request_uri = "/snapshots/{secondSnapshotId}/changedblocks"
|
133
258
|
o.input = Shapes::ShapeRef.new(shape: ListChangedBlocksRequest)
|
134
259
|
o.output = Shapes::ShapeRef.new(shape: ListChangedBlocksResponse)
|
260
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
135
261
|
o.errors << Shapes::ShapeRef.new(shape: ValidationException)
|
136
262
|
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
263
|
+
o.errors << Shapes::ShapeRef.new(shape: RequestThrottledException)
|
264
|
+
o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
|
265
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
|
137
266
|
o[:pager] = Aws::Pager.new(
|
138
267
|
limit_key: "max_results",
|
139
268
|
tokens: {
|
@@ -148,8 +277,12 @@ module Aws::EBS
|
|
148
277
|
o.http_request_uri = "/snapshots/{snapshotId}/blocks"
|
149
278
|
o.input = Shapes::ShapeRef.new(shape: ListSnapshotBlocksRequest)
|
150
279
|
o.output = Shapes::ShapeRef.new(shape: ListSnapshotBlocksResponse)
|
280
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
151
281
|
o.errors << Shapes::ShapeRef.new(shape: ValidationException)
|
152
282
|
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
283
|
+
o.errors << Shapes::ShapeRef.new(shape: RequestThrottledException)
|
284
|
+
o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
|
285
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
|
153
286
|
o[:pager] = Aws::Pager.new(
|
154
287
|
limit_key: "max_results",
|
155
288
|
tokens: {
|
@@ -157,6 +290,37 @@ module Aws::EBS
|
|
157
290
|
}
|
158
291
|
)
|
159
292
|
end)
|
293
|
+
|
294
|
+
api.add_operation(:put_snapshot_block, Seahorse::Model::Operation.new.tap do |o|
|
295
|
+
o.name = "PutSnapshotBlock"
|
296
|
+
o.http_method = "PUT"
|
297
|
+
o.http_request_uri = "/snapshots/{snapshotId}/blocks/{blockIndex}"
|
298
|
+
o['authtype'] = "v4-unsigned-body"
|
299
|
+
o.input = Shapes::ShapeRef.new(shape: PutSnapshotBlockRequest)
|
300
|
+
o.output = Shapes::ShapeRef.new(shape: PutSnapshotBlockResponse)
|
301
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
302
|
+
o.errors << Shapes::ShapeRef.new(shape: ValidationException)
|
303
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
304
|
+
o.errors << Shapes::ShapeRef.new(shape: RequestThrottledException)
|
305
|
+
o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
|
306
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
|
307
|
+
end)
|
308
|
+
|
309
|
+
api.add_operation(:start_snapshot, Seahorse::Model::Operation.new.tap do |o|
|
310
|
+
o.name = "StartSnapshot"
|
311
|
+
o.http_method = "POST"
|
312
|
+
o.http_request_uri = "/snapshots"
|
313
|
+
o.input = Shapes::ShapeRef.new(shape: StartSnapshotRequest)
|
314
|
+
o.output = Shapes::ShapeRef.new(shape: StartSnapshotResponse)
|
315
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
316
|
+
o.errors << Shapes::ShapeRef.new(shape: ValidationException)
|
317
|
+
o.errors << Shapes::ShapeRef.new(shape: RequestThrottledException)
|
318
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
319
|
+
o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
|
320
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
|
321
|
+
o.errors << Shapes::ShapeRef.new(shape: ConcurrentLimitExceededException)
|
322
|
+
o.errors << Shapes::ShapeRef.new(shape: ConflictException)
|
323
|
+
end)
|
160
324
|
end
|
161
325
|
|
162
326
|
end
|