aws-sdk-transfer 1.47.0 → 1.50.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +15 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-transfer/client.rb +141 -46
- data/lib/aws-sdk-transfer/client_api.rb +5 -0
- data/lib/aws-sdk-transfer/types.rb +83 -60
- data/lib/aws-sdk-transfer/waiters.rb +165 -0
- data/lib/aws-sdk-transfer.rb +2 -1
- metadata +5 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4e4409d8646c52571f98d0f73d469176b53d7a405abb734576d1246d449c4852
|
4
|
+
data.tar.gz: 79ab9afb3e5e42cd699384918c77c6e93f04d65e509c9482cf3364d9b7a26919
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 407fc4c5de4a8347616dde8a71db841ccd4193a6e7b38cc42e2b8df41df3350d7fe1eb03d6d996a3d9589f1e2cd215165c9e8078160fc8ae610ed19e9ace6bd1
|
7
|
+
data.tar.gz: ffc9a729b8a42a08d0e4d74b5e3b47c96a1c008bfcb5188b31df56ce5a3bd7608409432f116bd6c59e0a7ce8438d2035ee28a26fa2114c6158c15cdeadfb9282
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,21 @@
|
|
1
1
|
Unreleased Changes
|
2
2
|
------------------
|
3
3
|
|
4
|
+
1.50.0 (2022-03-04)
|
5
|
+
------------------
|
6
|
+
|
7
|
+
* Feature - Add waiters for server online and offline.
|
8
|
+
|
9
|
+
1.49.0 (2022-02-24)
|
10
|
+
------------------
|
11
|
+
|
12
|
+
* Feature - Support automatic pagination when listing AWS Transfer Family resources.
|
13
|
+
|
14
|
+
1.48.0 (2022-02-23)
|
15
|
+
------------------
|
16
|
+
|
17
|
+
* Feature - The file input selection feature provides the ability to use either the originally uploaded file or the output file from the previous workflow step, enabling customers to make multiple copies of the original file while keeping the source file intact for file archival.
|
18
|
+
|
4
19
|
1.47.0 (2022-02-18)
|
5
20
|
------------------
|
6
21
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.50.0
|
@@ -27,6 +27,7 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
|
|
27
27
|
require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
|
28
28
|
require 'aws-sdk-core/plugins/transfer_encoding.rb'
|
29
29
|
require 'aws-sdk-core/plugins/http_checksum.rb'
|
30
|
+
require 'aws-sdk-core/plugins/checksum_algorithm.rb'
|
30
31
|
require 'aws-sdk-core/plugins/defaults_mode.rb'
|
31
32
|
require 'aws-sdk-core/plugins/recursion_detection.rb'
|
32
33
|
require 'aws-sdk-core/plugins/signature_v4.rb'
|
@@ -75,6 +76,7 @@ module Aws::Transfer
|
|
75
76
|
add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
|
76
77
|
add_plugin(Aws::Plugins::TransferEncoding)
|
77
78
|
add_plugin(Aws::Plugins::HttpChecksum)
|
79
|
+
add_plugin(Aws::Plugins::ChecksumAlgorithm)
|
78
80
|
add_plugin(Aws::Plugins::DefaultsMode)
|
79
81
|
add_plugin(Aws::Plugins::RecursionDetection)
|
80
82
|
add_plugin(Aws::Plugins::SignatureV4)
|
@@ -406,17 +408,6 @@ module Aws::Transfer
|
|
406
408
|
#
|
407
409
|
# `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
|
408
410
|
#
|
409
|
-
# <note markdown="1"> If the target of a logical directory entry does not exist in Amazon S3
|
410
|
-
# or EFS, the entry is ignored. As a workaround, you can use the Amazon
|
411
|
-
# S3 API or EFS API to create 0 byte objects as place holders for your
|
412
|
-
# directory. If using the CLI, use the `s3api` or `efsapi` call instead
|
413
|
-
# of `s3` or `efs` so you can use the put-object operation. For example,
|
414
|
-
# you use the following: `aws s3api put-object --bucket bucketname --key
|
415
|
-
# path/to/folder/`. Make sure that the end of the key name ends in a `/`
|
416
|
-
# for it to be considered a folder.
|
417
|
-
#
|
418
|
-
# </note>
|
419
|
-
#
|
420
411
|
# @option params [String] :policy
|
421
412
|
# A session policy for your user so that you can use the same IAM role
|
422
413
|
# across multiple users. This policy scopes down user access to portions
|
@@ -832,17 +823,6 @@ module Aws::Transfer
|
|
832
823
|
#
|
833
824
|
# `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
|
834
825
|
#
|
835
|
-
# <note markdown="1"> If the target of a logical directory entry does not exist in Amazon S3
|
836
|
-
# or EFS, the entry is ignored. As a workaround, you can use the Amazon
|
837
|
-
# S3 API or EFS API to create 0 byte objects as place holders for your
|
838
|
-
# directory. If using the CLI, use the `s3api` or `efsapi` call instead
|
839
|
-
# of `s3` or `efs` so you can use the put-object operation. For example,
|
840
|
-
# you use the following: `aws s3api put-object --bucket bucketname --key
|
841
|
-
# path/to/folder/`. Make sure that the end of the key name ends in a `/`
|
842
|
-
# for it to be considered a folder.
|
843
|
-
#
|
844
|
-
# </note>
|
845
|
-
#
|
846
826
|
# @option params [String] :policy
|
847
827
|
# A session policy for your user so that you can use the same IAM role
|
848
828
|
# across multiple users. This policy scopes down user access to portions
|
@@ -1029,14 +1009,17 @@ module Aws::Transfer
|
|
1029
1009
|
# },
|
1030
1010
|
# },
|
1031
1011
|
# overwrite_existing: "TRUE", # accepts TRUE, FALSE
|
1012
|
+
# source_file_location: "SourceFileLocation",
|
1032
1013
|
# },
|
1033
1014
|
# custom_step_details: {
|
1034
1015
|
# name: "WorkflowStepName",
|
1035
1016
|
# target: "CustomStepTarget",
|
1036
1017
|
# timeout_seconds: 1,
|
1018
|
+
# source_file_location: "SourceFileLocation",
|
1037
1019
|
# },
|
1038
1020
|
# delete_step_details: {
|
1039
1021
|
# name: "WorkflowStepName",
|
1022
|
+
# source_file_location: "SourceFileLocation",
|
1040
1023
|
# },
|
1041
1024
|
# tag_step_details: {
|
1042
1025
|
# name: "WorkflowStepName",
|
@@ -1046,6 +1029,7 @@ module Aws::Transfer
|
|
1046
1029
|
# value: "S3TagValue", # required
|
1047
1030
|
# },
|
1048
1031
|
# ],
|
1032
|
+
# source_file_location: "SourceFileLocation",
|
1049
1033
|
# },
|
1050
1034
|
# },
|
1051
1035
|
# ],
|
@@ -1065,14 +1049,17 @@ module Aws::Transfer
|
|
1065
1049
|
# },
|
1066
1050
|
# },
|
1067
1051
|
# overwrite_existing: "TRUE", # accepts TRUE, FALSE
|
1052
|
+
# source_file_location: "SourceFileLocation",
|
1068
1053
|
# },
|
1069
1054
|
# custom_step_details: {
|
1070
1055
|
# name: "WorkflowStepName",
|
1071
1056
|
# target: "CustomStepTarget",
|
1072
1057
|
# timeout_seconds: 1,
|
1058
|
+
# source_file_location: "SourceFileLocation",
|
1073
1059
|
# },
|
1074
1060
|
# delete_step_details: {
|
1075
1061
|
# name: "WorkflowStepName",
|
1062
|
+
# source_file_location: "SourceFileLocation",
|
1076
1063
|
# },
|
1077
1064
|
# tag_step_details: {
|
1078
1065
|
# name: "WorkflowStepName",
|
@@ -1082,6 +1069,7 @@ module Aws::Transfer
|
|
1082
1069
|
# value: "S3TagValue", # required
|
1083
1070
|
# },
|
1084
1071
|
# ],
|
1072
|
+
# source_file_location: "SourceFileLocation",
|
1085
1073
|
# },
|
1086
1074
|
# },
|
1087
1075
|
# ],
|
@@ -1495,6 +1483,12 @@ module Aws::Transfer
|
|
1495
1483
|
# resp.server.workflow_details.on_upload[0].workflow_id #=> String
|
1496
1484
|
# resp.server.workflow_details.on_upload[0].execution_role #=> String
|
1497
1485
|
#
|
1486
|
+
#
|
1487
|
+
# The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
|
1488
|
+
#
|
1489
|
+
# * server_offline
|
1490
|
+
# * server_online
|
1491
|
+
#
|
1498
1492
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeServer AWS API Documentation
|
1499
1493
|
#
|
1500
1494
|
# @overload describe_server(params = {})
|
@@ -1591,14 +1585,18 @@ module Aws::Transfer
|
|
1591
1585
|
# resp.workflow.steps[0].copy_step_details.destination_file_location.efs_file_location.file_system_id #=> String
|
1592
1586
|
# resp.workflow.steps[0].copy_step_details.destination_file_location.efs_file_location.path #=> String
|
1593
1587
|
# resp.workflow.steps[0].copy_step_details.overwrite_existing #=> String, one of "TRUE", "FALSE"
|
1588
|
+
# resp.workflow.steps[0].copy_step_details.source_file_location #=> String
|
1594
1589
|
# resp.workflow.steps[0].custom_step_details.name #=> String
|
1595
1590
|
# resp.workflow.steps[0].custom_step_details.target #=> String
|
1596
1591
|
# resp.workflow.steps[0].custom_step_details.timeout_seconds #=> Integer
|
1592
|
+
# resp.workflow.steps[0].custom_step_details.source_file_location #=> String
|
1597
1593
|
# resp.workflow.steps[0].delete_step_details.name #=> String
|
1594
|
+
# resp.workflow.steps[0].delete_step_details.source_file_location #=> String
|
1598
1595
|
# resp.workflow.steps[0].tag_step_details.name #=> String
|
1599
1596
|
# resp.workflow.steps[0].tag_step_details.tags #=> Array
|
1600
1597
|
# resp.workflow.steps[0].tag_step_details.tags[0].key #=> String
|
1601
1598
|
# resp.workflow.steps[0].tag_step_details.tags[0].value #=> String
|
1599
|
+
# resp.workflow.steps[0].tag_step_details.source_file_location #=> String
|
1602
1600
|
# resp.workflow.on_exception_steps #=> Array
|
1603
1601
|
# resp.workflow.on_exception_steps[0].type #=> String, one of "COPY", "CUSTOM", "TAG", "DELETE"
|
1604
1602
|
# resp.workflow.on_exception_steps[0].copy_step_details.name #=> String
|
@@ -1607,14 +1605,18 @@ module Aws::Transfer
|
|
1607
1605
|
# resp.workflow.on_exception_steps[0].copy_step_details.destination_file_location.efs_file_location.file_system_id #=> String
|
1608
1606
|
# resp.workflow.on_exception_steps[0].copy_step_details.destination_file_location.efs_file_location.path #=> String
|
1609
1607
|
# resp.workflow.on_exception_steps[0].copy_step_details.overwrite_existing #=> String, one of "TRUE", "FALSE"
|
1608
|
+
# resp.workflow.on_exception_steps[0].copy_step_details.source_file_location #=> String
|
1610
1609
|
# resp.workflow.on_exception_steps[0].custom_step_details.name #=> String
|
1611
1610
|
# resp.workflow.on_exception_steps[0].custom_step_details.target #=> String
|
1612
1611
|
# resp.workflow.on_exception_steps[0].custom_step_details.timeout_seconds #=> Integer
|
1612
|
+
# resp.workflow.on_exception_steps[0].custom_step_details.source_file_location #=> String
|
1613
1613
|
# resp.workflow.on_exception_steps[0].delete_step_details.name #=> String
|
1614
|
+
# resp.workflow.on_exception_steps[0].delete_step_details.source_file_location #=> String
|
1614
1615
|
# resp.workflow.on_exception_steps[0].tag_step_details.name #=> String
|
1615
1616
|
# resp.workflow.on_exception_steps[0].tag_step_details.tags #=> Array
|
1616
1617
|
# resp.workflow.on_exception_steps[0].tag_step_details.tags[0].key #=> String
|
1617
1618
|
# resp.workflow.on_exception_steps[0].tag_step_details.tags[0].value #=> String
|
1619
|
+
# resp.workflow.on_exception_steps[0].tag_step_details.source_file_location #=> String
|
1618
1620
|
# resp.workflow.workflow_id #=> String
|
1619
1621
|
# resp.workflow.tags #=> Array
|
1620
1622
|
# resp.workflow.tags[0].key #=> String
|
@@ -2344,17 +2346,6 @@ module Aws::Transfer
|
|
2344
2346
|
#
|
2345
2347
|
# `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
|
2346
2348
|
#
|
2347
|
-
# <note markdown="1"> If the target of a logical directory entry does not exist in Amazon S3
|
2348
|
-
# or EFS, the entry is ignored. As a workaround, you can use the Amazon
|
2349
|
-
# S3 API or EFS API to create 0 byte objects as place holders for your
|
2350
|
-
# directory. If using the CLI, use the `s3api` or `efsapi` call instead
|
2351
|
-
# of `s3` or `efs` so you can use the put-object operation. For example,
|
2352
|
-
# you use the following: `aws s3api put-object --bucket bucketname --key
|
2353
|
-
# path/to/folder/`. Make sure that the end of the key name ends in a `/`
|
2354
|
-
# for it to be considered a folder.
|
2355
|
-
#
|
2356
|
-
# </note>
|
2357
|
-
#
|
2358
2349
|
# @option params [String] :policy
|
2359
2350
|
# A session policy for your user so that you can use the same IAM role
|
2360
2351
|
# across multiple users. This policy scopes down user access to portions
|
@@ -2728,17 +2719,6 @@ module Aws::Transfer
|
|
2728
2719
|
#
|
2729
2720
|
# `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
|
2730
2721
|
#
|
2731
|
-
# <note markdown="1"> If the target of a logical directory entry does not exist in Amazon S3
|
2732
|
-
# or EFS, the entry is ignored. As a workaround, you can use the Amazon
|
2733
|
-
# S3 API or EFS API to create 0 byte objects as place holders for your
|
2734
|
-
# directory. If using the CLI, use the `s3api` or `efsapi` call instead
|
2735
|
-
# of `s3` or `efs` so you can use the put-object operation. For example,
|
2736
|
-
# you use the following: `aws s3api put-object --bucket bucketname --key
|
2737
|
-
# path/to/folder/`. Make sure that the end of the key name ends in a `/`
|
2738
|
-
# for it to be considered a folder.
|
2739
|
-
#
|
2740
|
-
# </note>
|
2741
|
-
#
|
2742
2722
|
# @option params [String] :policy
|
2743
2723
|
# A session policy for your user so that you can use the same IAM role
|
2744
2724
|
# across multiple users. This policy scopes down user access to portions
|
@@ -2850,14 +2830,129 @@ module Aws::Transfer
|
|
2850
2830
|
params: params,
|
2851
2831
|
config: config)
|
2852
2832
|
context[:gem_name] = 'aws-sdk-transfer'
|
2853
|
-
context[:gem_version] = '1.
|
2833
|
+
context[:gem_version] = '1.50.0'
|
2854
2834
|
Seahorse::Client::Request.new(handlers, context)
|
2855
2835
|
end
|
2856
2836
|
|
2837
|
+
# Polls an API operation until a resource enters a desired state.
|
2838
|
+
#
|
2839
|
+
# ## Basic Usage
|
2840
|
+
#
|
2841
|
+
# A waiter will call an API operation until:
|
2842
|
+
#
|
2843
|
+
# * It is successful
|
2844
|
+
# * It enters a terminal state
|
2845
|
+
# * It makes the maximum number of attempts
|
2846
|
+
#
|
2847
|
+
# In between attempts, the waiter will sleep.
|
2848
|
+
#
|
2849
|
+
# # polls in a loop, sleeping between attempts
|
2850
|
+
# client.wait_until(waiter_name, params)
|
2851
|
+
#
|
2852
|
+
# ## Configuration
|
2853
|
+
#
|
2854
|
+
# You can configure the maximum number of polling attempts, and the
|
2855
|
+
# delay (in seconds) between each polling attempt. You can pass
|
2856
|
+
# configuration as the final arguments hash.
|
2857
|
+
#
|
2858
|
+
# # poll for ~25 seconds
|
2859
|
+
# client.wait_until(waiter_name, params, {
|
2860
|
+
# max_attempts: 5,
|
2861
|
+
# delay: 5,
|
2862
|
+
# })
|
2863
|
+
#
|
2864
|
+
# ## Callbacks
|
2865
|
+
#
|
2866
|
+
# You can be notified before each polling attempt and before each
|
2867
|
+
# delay. If you throw `:success` or `:failure` from these callbacks,
|
2868
|
+
# it will terminate the waiter.
|
2869
|
+
#
|
2870
|
+
# started_at = Time.now
|
2871
|
+
# client.wait_until(waiter_name, params, {
|
2872
|
+
#
|
2873
|
+
# # disable max attempts
|
2874
|
+
# max_attempts: nil,
|
2875
|
+
#
|
2876
|
+
# # poll for 1 hour, instead of a number of attempts
|
2877
|
+
# before_wait: -> (attempts, response) do
|
2878
|
+
# throw :failure if Time.now - started_at > 3600
|
2879
|
+
# end
|
2880
|
+
# })
|
2881
|
+
#
|
2882
|
+
# ## Handling Errors
|
2883
|
+
#
|
2884
|
+
# When a waiter is unsuccessful, it will raise an error.
|
2885
|
+
# All of the failure errors extend from
|
2886
|
+
# {Aws::Waiters::Errors::WaiterFailed}.
|
2887
|
+
#
|
2888
|
+
# begin
|
2889
|
+
# client.wait_until(...)
|
2890
|
+
# rescue Aws::Waiters::Errors::WaiterFailed
|
2891
|
+
# # resource did not enter the desired state in time
|
2892
|
+
# end
|
2893
|
+
#
|
2894
|
+
# ## Valid Waiters
|
2895
|
+
#
|
2896
|
+
# The following table lists the valid waiter names, the operations they call,
|
2897
|
+
# and the default `:delay` and `:max_attempts` values.
|
2898
|
+
#
|
2899
|
+
# | waiter_name | params | :delay | :max_attempts |
|
2900
|
+
# | -------------- | ------------------------ | -------- | ------------- |
|
2901
|
+
# | server_offline | {Client#describe_server} | 30 | 120 |
|
2902
|
+
# | server_online | {Client#describe_server} | 30 | 120 |
|
2903
|
+
#
|
2904
|
+
# @raise [Errors::FailureStateError] Raised when the waiter terminates
|
2905
|
+
# because the waiter has entered a state that it will not transition
|
2906
|
+
# out of, preventing success.
|
2907
|
+
#
|
2908
|
+
# @raise [Errors::TooManyAttemptsError] Raised when the configured
|
2909
|
+
# maximum number of attempts have been made, and the waiter is not
|
2910
|
+
# yet successful.
|
2911
|
+
#
|
2912
|
+
# @raise [Errors::UnexpectedError] Raised when an error is encounted
|
2913
|
+
# while polling for a resource that is not expected.
|
2914
|
+
#
|
2915
|
+
# @raise [Errors::NoSuchWaiterError] Raised when you request to wait
|
2916
|
+
# for an unknown state.
|
2917
|
+
#
|
2918
|
+
# @return [Boolean] Returns `true` if the waiter was successful.
|
2919
|
+
# @param [Symbol] waiter_name
|
2920
|
+
# @param [Hash] params ({})
|
2921
|
+
# @param [Hash] options ({})
|
2922
|
+
# @option options [Integer] :max_attempts
|
2923
|
+
# @option options [Integer] :delay
|
2924
|
+
# @option options [Proc] :before_attempt
|
2925
|
+
# @option options [Proc] :before_wait
|
2926
|
+
def wait_until(waiter_name, params = {}, options = {})
|
2927
|
+
w = waiter(waiter_name, options)
|
2928
|
+
yield(w.waiter) if block_given? # deprecated
|
2929
|
+
w.wait(params)
|
2930
|
+
end
|
2931
|
+
|
2857
2932
|
# @api private
|
2858
2933
|
# @deprecated
|
2859
2934
|
def waiter_names
|
2860
|
-
|
2935
|
+
waiters.keys
|
2936
|
+
end
|
2937
|
+
|
2938
|
+
private
|
2939
|
+
|
2940
|
+
# @param [Symbol] waiter_name
|
2941
|
+
# @param [Hash] options ({})
|
2942
|
+
def waiter(waiter_name, options = {})
|
2943
|
+
waiter_class = waiters[waiter_name]
|
2944
|
+
if waiter_class
|
2945
|
+
waiter_class.new(options.merge(client: self))
|
2946
|
+
else
|
2947
|
+
raise Aws::Waiters::Errors::NoSuchWaiterError.new(waiter_name, waiters.keys)
|
2948
|
+
end
|
2949
|
+
end
|
2950
|
+
|
2951
|
+
def waiters
|
2952
|
+
{
|
2953
|
+
server_offline: Waiters::ServerOffline,
|
2954
|
+
server_online: Waiters::ServerOnline
|
2955
|
+
}
|
2861
2956
|
end
|
2862
2957
|
|
2863
2958
|
class << self
|
@@ -165,6 +165,7 @@ module Aws::Transfer
|
|
165
165
|
ServiceMetadata = Shapes::StructureShape.new(name: 'ServiceMetadata')
|
166
166
|
ServiceUnavailableException = Shapes::StructureShape.new(name: 'ServiceUnavailableException')
|
167
167
|
SessionId = Shapes::StringShape.new(name: 'SessionId')
|
168
|
+
SourceFileLocation = Shapes::StringShape.new(name: 'SourceFileLocation')
|
168
169
|
SourceIp = Shapes::StringShape.new(name: 'SourceIp')
|
169
170
|
SshPublicKey = Shapes::StructureShape.new(name: 'SshPublicKey')
|
170
171
|
SshPublicKeyBody = Shapes::StringShape.new(name: 'SshPublicKeyBody')
|
@@ -223,6 +224,7 @@ module Aws::Transfer
|
|
223
224
|
CopyStepDetails.add_member(:name, Shapes::ShapeRef.new(shape: WorkflowStepName, location_name: "Name"))
|
224
225
|
CopyStepDetails.add_member(:destination_file_location, Shapes::ShapeRef.new(shape: InputFileLocation, location_name: "DestinationFileLocation"))
|
225
226
|
CopyStepDetails.add_member(:overwrite_existing, Shapes::ShapeRef.new(shape: OverwriteExisting, location_name: "OverwriteExisting"))
|
227
|
+
CopyStepDetails.add_member(:source_file_location, Shapes::ShapeRef.new(shape: SourceFileLocation, location_name: "SourceFileLocation"))
|
226
228
|
CopyStepDetails.struct_class = Types::CopyStepDetails
|
227
229
|
|
228
230
|
CreateAccessRequest.add_member(:home_directory, Shapes::ShapeRef.new(shape: HomeDirectory, location_name: "HomeDirectory"))
|
@@ -287,6 +289,7 @@ module Aws::Transfer
|
|
287
289
|
CustomStepDetails.add_member(:name, Shapes::ShapeRef.new(shape: WorkflowStepName, location_name: "Name"))
|
288
290
|
CustomStepDetails.add_member(:target, Shapes::ShapeRef.new(shape: CustomStepTarget, location_name: "Target"))
|
289
291
|
CustomStepDetails.add_member(:timeout_seconds, Shapes::ShapeRef.new(shape: CustomStepTimeoutSeconds, location_name: "TimeoutSeconds"))
|
292
|
+
CustomStepDetails.add_member(:source_file_location, Shapes::ShapeRef.new(shape: SourceFileLocation, location_name: "SourceFileLocation"))
|
290
293
|
CustomStepDetails.struct_class = Types::CustomStepDetails
|
291
294
|
|
292
295
|
DeleteAccessRequest.add_member(:server_id, Shapes::ShapeRef.new(shape: ServerId, required: true, location_name: "ServerId"))
|
@@ -302,6 +305,7 @@ module Aws::Transfer
|
|
302
305
|
DeleteSshPublicKeyRequest.struct_class = Types::DeleteSshPublicKeyRequest
|
303
306
|
|
304
307
|
DeleteStepDetails.add_member(:name, Shapes::ShapeRef.new(shape: WorkflowStepName, location_name: "Name"))
|
308
|
+
DeleteStepDetails.add_member(:source_file_location, Shapes::ShapeRef.new(shape: SourceFileLocation, location_name: "SourceFileLocation"))
|
305
309
|
DeleteStepDetails.struct_class = Types::DeleteStepDetails
|
306
310
|
|
307
311
|
DeleteUserRequest.add_member(:server_id, Shapes::ShapeRef.new(shape: ServerId, required: true, location_name: "ServerId"))
|
@@ -687,6 +691,7 @@ module Aws::Transfer
|
|
687
691
|
|
688
692
|
TagStepDetails.add_member(:name, Shapes::ShapeRef.new(shape: WorkflowStepName, location_name: "Name"))
|
689
693
|
TagStepDetails.add_member(:tags, Shapes::ShapeRef.new(shape: S3Tags, location_name: "Tags"))
|
694
|
+
TagStepDetails.add_member(:source_file_location, Shapes::ShapeRef.new(shape: SourceFileLocation, location_name: "SourceFileLocation"))
|
690
695
|
TagStepDetails.struct_class = Types::TagStepDetails
|
691
696
|
|
692
697
|
Tags.member = Shapes::ShapeRef.new(shape: Tag)
|
@@ -56,6 +56,7 @@ module Aws::Transfer
|
|
56
56
|
# },
|
57
57
|
# },
|
58
58
|
# overwrite_existing: "TRUE", # accepts TRUE, FALSE
|
59
|
+
# source_file_location: "SourceFileLocation",
|
59
60
|
# }
|
60
61
|
#
|
61
62
|
# @!attribute [rw] name
|
@@ -64,7 +65,8 @@ module Aws::Transfer
|
|
64
65
|
#
|
65
66
|
# @!attribute [rw] destination_file_location
|
66
67
|
# Specifies the location for the file being copied. Only applicable
|
67
|
-
# for
|
68
|
+
# for Copy type workflow steps. Use `$\{Transfer:username\}` in this
|
69
|
+
# field to parametrize the destination prefix by username.
|
68
70
|
# @return [Types::InputFileLocation]
|
69
71
|
#
|
70
72
|
# @!attribute [rw] overwrite_existing
|
@@ -72,12 +74,26 @@ module Aws::Transfer
|
|
72
74
|
# of the same name. The default is `FALSE`.
|
73
75
|
# @return [String]
|
74
76
|
#
|
77
|
+
# @!attribute [rw] source_file_location
|
78
|
+
# Specifies which file to use as input to the workflow step: either
|
79
|
+
# the output from the previous step, or the originally uploaded file
|
80
|
+
# for the workflow.
|
81
|
+
#
|
82
|
+
# * Enter `$\{previous.file\}` to use the previous file as the input.
|
83
|
+
# In this case, this workflow step uses the output file from the
|
84
|
+
# previous workflow step as input. This is the default value.
|
85
|
+
#
|
86
|
+
# * Enter `$\{original.file\}` to use the originally-uploaded file
|
87
|
+
# location as input for this step.
|
88
|
+
# @return [String]
|
89
|
+
#
|
75
90
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CopyStepDetails AWS API Documentation
|
76
91
|
#
|
77
92
|
class CopyStepDetails < Struct.new(
|
78
93
|
:name,
|
79
94
|
:destination_file_location,
|
80
|
-
:overwrite_existing
|
95
|
+
:overwrite_existing,
|
96
|
+
:source_file_location)
|
81
97
|
SENSITIVE = []
|
82
98
|
include Aws::Structure
|
83
99
|
end
|
@@ -146,17 +162,6 @@ module Aws::Transfer
|
|
146
162
|
# The following is an `Entry` and `Target` pair example for `chroot`.
|
147
163
|
#
|
148
164
|
# `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
|
149
|
-
#
|
150
|
-
# <note markdown="1"> If the target of a logical directory entry does not exist in Amazon
|
151
|
-
# S3 or EFS, the entry is ignored. As a workaround, you can use the
|
152
|
-
# Amazon S3 API or EFS API to create 0 byte objects as place holders
|
153
|
-
# for your directory. If using the CLI, use the `s3api` or `efsapi`
|
154
|
-
# call instead of `s3` or `efs` so you can use the put-object
|
155
|
-
# operation. For example, you use the following: `aws s3api put-object
|
156
|
-
# --bucket bucketname --key path/to/folder/`. Make sure that the end
|
157
|
-
# of the key name ends in a `/` for it to be considered a folder.
|
158
|
-
#
|
159
|
-
# </note>
|
160
165
|
# @return [Array<Types::HomeDirectoryMapEntry>]
|
161
166
|
#
|
162
167
|
# @!attribute [rw] policy
|
@@ -627,17 +632,6 @@ module Aws::Transfer
|
|
627
632
|
# The following is an `Entry` and `Target` pair example for `chroot`.
|
628
633
|
#
|
629
634
|
# `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
|
630
|
-
#
|
631
|
-
# <note markdown="1"> If the target of a logical directory entry does not exist in Amazon
|
632
|
-
# S3 or EFS, the entry is ignored. As a workaround, you can use the
|
633
|
-
# Amazon S3 API or EFS API to create 0 byte objects as place holders
|
634
|
-
# for your directory. If using the CLI, use the `s3api` or `efsapi`
|
635
|
-
# call instead of `s3` or `efs` so you can use the put-object
|
636
|
-
# operation. For example, you use the following: `aws s3api put-object
|
637
|
-
# --bucket bucketname --key path/to/folder/`. Make sure that the end
|
638
|
-
# of the key name ends in a `/` for it to be considered a folder.
|
639
|
-
#
|
640
|
-
# </note>
|
641
635
|
# @return [Array<Types::HomeDirectoryMapEntry>]
|
642
636
|
#
|
643
637
|
# @!attribute [rw] policy
|
@@ -772,14 +766,17 @@ module Aws::Transfer
|
|
772
766
|
# },
|
773
767
|
# },
|
774
768
|
# overwrite_existing: "TRUE", # accepts TRUE, FALSE
|
769
|
+
# source_file_location: "SourceFileLocation",
|
775
770
|
# },
|
776
771
|
# custom_step_details: {
|
777
772
|
# name: "WorkflowStepName",
|
778
773
|
# target: "CustomStepTarget",
|
779
774
|
# timeout_seconds: 1,
|
775
|
+
# source_file_location: "SourceFileLocation",
|
780
776
|
# },
|
781
777
|
# delete_step_details: {
|
782
778
|
# name: "WorkflowStepName",
|
779
|
+
# source_file_location: "SourceFileLocation",
|
783
780
|
# },
|
784
781
|
# tag_step_details: {
|
785
782
|
# name: "WorkflowStepName",
|
@@ -789,6 +786,7 @@ module Aws::Transfer
|
|
789
786
|
# value: "S3TagValue", # required
|
790
787
|
# },
|
791
788
|
# ],
|
789
|
+
# source_file_location: "SourceFileLocation",
|
792
790
|
# },
|
793
791
|
# },
|
794
792
|
# ],
|
@@ -808,14 +806,17 @@ module Aws::Transfer
|
|
808
806
|
# },
|
809
807
|
# },
|
810
808
|
# overwrite_existing: "TRUE", # accepts TRUE, FALSE
|
809
|
+
# source_file_location: "SourceFileLocation",
|
811
810
|
# },
|
812
811
|
# custom_step_details: {
|
813
812
|
# name: "WorkflowStepName",
|
814
813
|
# target: "CustomStepTarget",
|
815
814
|
# timeout_seconds: 1,
|
815
|
+
# source_file_location: "SourceFileLocation",
|
816
816
|
# },
|
817
817
|
# delete_step_details: {
|
818
818
|
# name: "WorkflowStepName",
|
819
|
+
# source_file_location: "SourceFileLocation",
|
819
820
|
# },
|
820
821
|
# tag_step_details: {
|
821
822
|
# name: "WorkflowStepName",
|
@@ -825,6 +826,7 @@ module Aws::Transfer
|
|
825
826
|
# value: "S3TagValue", # required
|
826
827
|
# },
|
827
828
|
# ],
|
829
|
+
# source_file_location: "SourceFileLocation",
|
828
830
|
# },
|
829
831
|
# },
|
830
832
|
# ],
|
@@ -912,6 +914,7 @@ module Aws::Transfer
|
|
912
914
|
# name: "WorkflowStepName",
|
913
915
|
# target: "CustomStepTarget",
|
914
916
|
# timeout_seconds: 1,
|
917
|
+
# source_file_location: "SourceFileLocation",
|
915
918
|
# }
|
916
919
|
#
|
917
920
|
# @!attribute [rw] name
|
@@ -926,12 +929,26 @@ module Aws::Transfer
|
|
926
929
|
# Timeout, in seconds, for the step.
|
927
930
|
# @return [Integer]
|
928
931
|
#
|
932
|
+
# @!attribute [rw] source_file_location
|
933
|
+
# Specifies which file to use as input to the workflow step: either
|
934
|
+
# the output from the previous step, or the originally uploaded file
|
935
|
+
# for the workflow.
|
936
|
+
#
|
937
|
+
# * Enter `$\{previous.file\}` to use the previous file as the input.
|
938
|
+
# In this case, this workflow step uses the output file from the
|
939
|
+
# previous workflow step as input. This is the default value.
|
940
|
+
#
|
941
|
+
# * Enter `$\{original.file\}` to use the originally-uploaded file
|
942
|
+
# location as input for this step.
|
943
|
+
# @return [String]
|
944
|
+
#
|
929
945
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CustomStepDetails AWS API Documentation
|
930
946
|
#
|
931
947
|
class CustomStepDetails < Struct.new(
|
932
948
|
:name,
|
933
949
|
:target,
|
934
|
-
:timeout_seconds
|
950
|
+
:timeout_seconds,
|
951
|
+
:source_file_location)
|
935
952
|
SENSITIVE = []
|
936
953
|
include Aws::Structure
|
937
954
|
end
|
@@ -1037,16 +1054,31 @@ module Aws::Transfer
|
|
1037
1054
|
#
|
1038
1055
|
# {
|
1039
1056
|
# name: "WorkflowStepName",
|
1057
|
+
# source_file_location: "SourceFileLocation",
|
1040
1058
|
# }
|
1041
1059
|
#
|
1042
1060
|
# @!attribute [rw] name
|
1043
1061
|
# The name of the step, used as an identifier.
|
1044
1062
|
# @return [String]
|
1045
1063
|
#
|
1064
|
+
# @!attribute [rw] source_file_location
|
1065
|
+
# Specifies which file to use as input to the workflow step: either
|
1066
|
+
# the output from the previous step, or the originally uploaded file
|
1067
|
+
# for the workflow.
|
1068
|
+
#
|
1069
|
+
# * Enter `$\{previous.file\}` to use the previous file as the input.
|
1070
|
+
# In this case, this workflow step uses the output file from the
|
1071
|
+
# previous workflow step as input. This is the default value.
|
1072
|
+
#
|
1073
|
+
# * Enter `$\{original.file\}` to use the originally-uploaded file
|
1074
|
+
# location as input for this step.
|
1075
|
+
# @return [String]
|
1076
|
+
#
|
1046
1077
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteStepDetails AWS API Documentation
|
1047
1078
|
#
|
1048
1079
|
class DeleteStepDetails < Struct.new(
|
1049
|
-
:name
|
1080
|
+
:name,
|
1081
|
+
:source_file_location)
|
1050
1082
|
SENSITIVE = []
|
1051
1083
|
include Aws::Structure
|
1052
1084
|
end
|
@@ -2099,17 +2131,6 @@ module Aws::Transfer
|
|
2099
2131
|
#
|
2100
2132
|
# `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
|
2101
2133
|
#
|
2102
|
-
# <note markdown="1"> If the target of a logical directory entry does not exist in Amazon S3
|
2103
|
-
# or EFS, the entry is ignored. As a workaround, you can use the Amazon
|
2104
|
-
# S3 API or EFS API to create 0 byte objects as place holders for your
|
2105
|
-
# directory. If using the CLI, use the `s3api` or `efsapi` call instead
|
2106
|
-
# of `s3` or `efs` so you can use the put-object operation. For example,
|
2107
|
-
# you use the following: `aws s3api put-object --bucket bucketname --key
|
2108
|
-
# path/to/folder/`. Make sure that the end of the key name ends in a `/`
|
2109
|
-
# for it to be considered a folder.
|
2110
|
-
#
|
2111
|
-
# </note>
|
2112
|
-
#
|
2113
2134
|
# @note When making an API call, you may pass HomeDirectoryMapEntry
|
2114
2135
|
# data as a hash:
|
2115
2136
|
#
|
@@ -3514,6 +3535,7 @@ module Aws::Transfer
|
|
3514
3535
|
# value: "S3TagValue", # required
|
3515
3536
|
# },
|
3516
3537
|
# ],
|
3538
|
+
# source_file_location: "SourceFileLocation",
|
3517
3539
|
# }
|
3518
3540
|
#
|
3519
3541
|
# @!attribute [rw] name
|
@@ -3524,11 +3546,25 @@ module Aws::Transfer
|
|
3524
3546
|
# Array that contains from 1 to 10 key/value pairs.
|
3525
3547
|
# @return [Array<Types::S3Tag>]
|
3526
3548
|
#
|
3549
|
+
# @!attribute [rw] source_file_location
|
3550
|
+
# Specifies which file to use as input to the workflow step: either
|
3551
|
+
# the output from the previous step, or the originally uploaded file
|
3552
|
+
# for the workflow.
|
3553
|
+
#
|
3554
|
+
# * Enter `$\{previous.file\}` to use the previous file as the input.
|
3555
|
+
# In this case, this workflow step uses the output file from the
|
3556
|
+
# previous workflow step as input. This is the default value.
|
3557
|
+
#
|
3558
|
+
# * Enter `$\{original.file\}` to use the originally-uploaded file
|
3559
|
+
# location as input for this step.
|
3560
|
+
# @return [String]
|
3561
|
+
#
|
3527
3562
|
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/TagStepDetails AWS API Documentation
|
3528
3563
|
#
|
3529
3564
|
class TagStepDetails < Struct.new(
|
3530
3565
|
:name,
|
3531
|
-
:tags
|
3566
|
+
:tags,
|
3567
|
+
:source_file_location)
|
3532
3568
|
SENSITIVE = []
|
3533
3569
|
include Aws::Structure
|
3534
3570
|
end
|
@@ -3595,6 +3631,11 @@ module Aws::Transfer
|
|
3595
3631
|
#
|
3596
3632
|
# @!attribute [rw] message
|
3597
3633
|
# A message that indicates whether the test was successful or not.
|
3634
|
+
#
|
3635
|
+
# <note markdown="1"> If an empty string is returned, the most likely cause is that the
|
3636
|
+
# authentication failed due to an incorrect username or password.
|
3637
|
+
#
|
3638
|
+
# </note>
|
3598
3639
|
# @return [String]
|
3599
3640
|
#
|
3600
3641
|
# @!attribute [rw] url
|
@@ -3720,17 +3761,6 @@ module Aws::Transfer
|
|
3720
3761
|
# The following is an `Entry` and `Target` pair example for `chroot`.
|
3721
3762
|
#
|
3722
3763
|
# `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
|
3723
|
-
#
|
3724
|
-
# <note markdown="1"> If the target of a logical directory entry does not exist in Amazon
|
3725
|
-
# S3 or EFS, the entry is ignored. As a workaround, you can use the
|
3726
|
-
# Amazon S3 API or EFS API to create 0 byte objects as place holders
|
3727
|
-
# for your directory. If using the CLI, use the `s3api` or `efsapi`
|
3728
|
-
# call instead of `s3` or `efs` so you can use the put-object
|
3729
|
-
# operation. For example, you use the following: `aws s3api put-object
|
3730
|
-
# --bucket bucketname --key path/to/folder/`. Make sure that the end
|
3731
|
-
# of the key name ends in a `/` for it to be considered a folder.
|
3732
|
-
#
|
3733
|
-
# </note>
|
3734
3764
|
# @return [Array<Types::HomeDirectoryMapEntry>]
|
3735
3765
|
#
|
3736
3766
|
# @!attribute [rw] policy
|
@@ -4149,17 +4179,6 @@ module Aws::Transfer
|
|
4149
4179
|
# The following is an `Entry` and `Target` pair example for `chroot`.
|
4150
4180
|
#
|
4151
4181
|
# `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
|
4152
|
-
#
|
4153
|
-
# <note markdown="1"> If the target of a logical directory entry does not exist in Amazon
|
4154
|
-
# S3 or EFS, the entry is ignored. As a workaround, you can use the
|
4155
|
-
# Amazon S3 API or EFS API to create 0 byte objects as place holders
|
4156
|
-
# for your directory. If using the CLI, use the `s3api` or `efsapi`
|
4157
|
-
# call instead of `s3` or `efs` so you can use the put-object
|
4158
|
-
# operation. For example, you use the following: `aws s3api put-object
|
4159
|
-
# --bucket bucketname --key path/to/folder/`. Make sure that the end
|
4160
|
-
# of the key name ends in a `/` for it to be considered a folder.
|
4161
|
-
#
|
4162
|
-
# </note>
|
4163
4182
|
# @return [Array<Types::HomeDirectoryMapEntry>]
|
4164
4183
|
#
|
4165
4184
|
# @!attribute [rw] policy
|
@@ -4368,14 +4387,17 @@ module Aws::Transfer
|
|
4368
4387
|
# },
|
4369
4388
|
# },
|
4370
4389
|
# overwrite_existing: "TRUE", # accepts TRUE, FALSE
|
4390
|
+
# source_file_location: "SourceFileLocation",
|
4371
4391
|
# },
|
4372
4392
|
# custom_step_details: {
|
4373
4393
|
# name: "WorkflowStepName",
|
4374
4394
|
# target: "CustomStepTarget",
|
4375
4395
|
# timeout_seconds: 1,
|
4396
|
+
# source_file_location: "SourceFileLocation",
|
4376
4397
|
# },
|
4377
4398
|
# delete_step_details: {
|
4378
4399
|
# name: "WorkflowStepName",
|
4400
|
+
# source_file_location: "SourceFileLocation",
|
4379
4401
|
# },
|
4380
4402
|
# tag_step_details: {
|
4381
4403
|
# name: "WorkflowStepName",
|
@@ -4385,6 +4407,7 @@ module Aws::Transfer
|
|
4385
4407
|
# value: "S3TagValue", # required
|
4386
4408
|
# },
|
4387
4409
|
# ],
|
4410
|
+
# source_file_location: "SourceFileLocation",
|
4388
4411
|
# },
|
4389
4412
|
# }
|
4390
4413
|
#
|
@@ -0,0 +1,165 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# WARNING ABOUT GENERATED CODE
|
4
|
+
#
|
5
|
+
# This file is generated. See the contributing guide for more information:
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
|
+
#
|
8
|
+
# WARNING ABOUT GENERATED CODE
|
9
|
+
|
10
|
+
require 'aws-sdk-core/waiters'
|
11
|
+
|
12
|
+
module Aws::Transfer
|
13
|
+
# Waiters are utility methods that poll for a particular state to occur
|
14
|
+
# on a client. Waiters can fail after a number of attempts at a polling
|
15
|
+
# interval defined for the service client.
|
16
|
+
#
|
17
|
+
# For a list of operations that can be waited for and the
|
18
|
+
# client methods called for each operation, see the table below or the
|
19
|
+
# {Client#wait_until} field documentation for the {Client}.
|
20
|
+
#
|
21
|
+
# # Invoking a Waiter
|
22
|
+
# To invoke a waiter, call #wait_until on a {Client}. The first parameter
|
23
|
+
# is the waiter name, which is specific to the service client and indicates
|
24
|
+
# which operation is being waited for. The second parameter is a hash of
|
25
|
+
# parameters that are passed to the client method called by the waiter,
|
26
|
+
# which varies according to the waiter name.
|
27
|
+
#
|
28
|
+
# # Wait Failures
|
29
|
+
# To catch errors in a waiter, use WaiterFailed,
|
30
|
+
# as shown in the following example.
|
31
|
+
#
|
32
|
+
# rescue rescue Aws::Waiters::Errors::WaiterFailed => error
|
33
|
+
# puts "failed waiting for instance running: #{error.message}
|
34
|
+
# end
|
35
|
+
#
|
36
|
+
# # Configuring a Waiter
|
37
|
+
# Each waiter has a default polling interval and a maximum number of
|
38
|
+
# attempts it will make before returning control to your program.
|
39
|
+
# To set these values, use the `max_attempts` and `delay` parameters
|
40
|
+
# in your `#wait_until` call.
|
41
|
+
# The following example waits for up to 25 seconds, polling every five seconds.
|
42
|
+
#
|
43
|
+
# client.wait_until(...) do |w|
|
44
|
+
# w.max_attempts = 5
|
45
|
+
# w.delay = 5
|
46
|
+
# end
|
47
|
+
#
|
48
|
+
# To disable wait failures, set the value of either of these parameters
|
49
|
+
# to `nil`.
|
50
|
+
#
|
51
|
+
# # Extending a Waiter
|
52
|
+
# To modify the behavior of waiters, you can register callbacks that are
|
53
|
+
# triggered before each polling attempt and before waiting.
|
54
|
+
#
|
55
|
+
# The following example implements an exponential backoff in a waiter
|
56
|
+
# by doubling the amount of time to wait on every attempt.
|
57
|
+
#
|
58
|
+
# client.wait_until(...) do |w|
|
59
|
+
# w.interval = 0 # disable normal sleep
|
60
|
+
# w.before_wait do |n, resp|
|
61
|
+
# sleep(n ** 2)
|
62
|
+
# end
|
63
|
+
# end
|
64
|
+
#
|
65
|
+
# # Available Waiters
|
66
|
+
#
|
67
|
+
# The following table lists the valid waiter names, the operations they call,
|
68
|
+
# and the default `:delay` and `:max_attempts` values.
|
69
|
+
#
|
70
|
+
# | waiter_name | params | :delay | :max_attempts |
|
71
|
+
# | -------------- | ------------------------ | -------- | ------------- |
|
72
|
+
# | server_offline | {Client#describe_server} | 30 | 120 |
|
73
|
+
# | server_online | {Client#describe_server} | 30 | 120 |
|
74
|
+
#
|
75
|
+
module Waiters
|
76
|
+
|
77
|
+
class ServerOffline
|
78
|
+
|
79
|
+
# @param [Hash] options
|
80
|
+
# @option options [required, Client] :client
|
81
|
+
# @option options [Integer] :max_attempts (120)
|
82
|
+
# @option options [Integer] :delay (30)
|
83
|
+
# @option options [Proc] :before_attempt
|
84
|
+
# @option options [Proc] :before_wait
|
85
|
+
def initialize(options)
|
86
|
+
@client = options.fetch(:client)
|
87
|
+
@waiter = Aws::Waiters::Waiter.new({
|
88
|
+
max_attempts: 120,
|
89
|
+
delay: 30,
|
90
|
+
poller: Aws::Waiters::Poller.new(
|
91
|
+
operation_name: :describe_server,
|
92
|
+
acceptors: [
|
93
|
+
{
|
94
|
+
"argument" => "server.state",
|
95
|
+
"expected" => "OFFLINE",
|
96
|
+
"matcher" => "path",
|
97
|
+
"state" => "success"
|
98
|
+
},
|
99
|
+
{
|
100
|
+
"argument" => "server.state",
|
101
|
+
"expected" => "STOP_FAILED",
|
102
|
+
"matcher" => "path",
|
103
|
+
"state" => "failure"
|
104
|
+
}
|
105
|
+
]
|
106
|
+
)
|
107
|
+
}.merge(options))
|
108
|
+
end
|
109
|
+
|
110
|
+
# @option (see Client#describe_server)
|
111
|
+
# @return (see Client#describe_server)
|
112
|
+
def wait(params = {})
|
113
|
+
@waiter.wait(client: @client, params: params)
|
114
|
+
end
|
115
|
+
|
116
|
+
# @api private
|
117
|
+
attr_reader :waiter
|
118
|
+
|
119
|
+
end
|
120
|
+
|
121
|
+
class ServerOnline
|
122
|
+
|
123
|
+
# @param [Hash] options
|
124
|
+
# @option options [required, Client] :client
|
125
|
+
# @option options [Integer] :max_attempts (120)
|
126
|
+
# @option options [Integer] :delay (30)
|
127
|
+
# @option options [Proc] :before_attempt
|
128
|
+
# @option options [Proc] :before_wait
|
129
|
+
def initialize(options)
|
130
|
+
@client = options.fetch(:client)
|
131
|
+
@waiter = Aws::Waiters::Waiter.new({
|
132
|
+
max_attempts: 120,
|
133
|
+
delay: 30,
|
134
|
+
poller: Aws::Waiters::Poller.new(
|
135
|
+
operation_name: :describe_server,
|
136
|
+
acceptors: [
|
137
|
+
{
|
138
|
+
"argument" => "server.state",
|
139
|
+
"expected" => "ONLINE",
|
140
|
+
"matcher" => "path",
|
141
|
+
"state" => "success"
|
142
|
+
},
|
143
|
+
{
|
144
|
+
"argument" => "server.state",
|
145
|
+
"expected" => "START_FAILED",
|
146
|
+
"matcher" => "path",
|
147
|
+
"state" => "failure"
|
148
|
+
}
|
149
|
+
]
|
150
|
+
)
|
151
|
+
}.merge(options))
|
152
|
+
end
|
153
|
+
|
154
|
+
# @option (see Client#describe_server)
|
155
|
+
# @return (see Client#describe_server)
|
156
|
+
def wait(params = {})
|
157
|
+
@waiter.wait(client: @client, params: params)
|
158
|
+
end
|
159
|
+
|
160
|
+
# @api private
|
161
|
+
attr_reader :waiter
|
162
|
+
|
163
|
+
end
|
164
|
+
end
|
165
|
+
end
|
data/lib/aws-sdk-transfer.rb
CHANGED
@@ -15,6 +15,7 @@ require_relative 'aws-sdk-transfer/types'
|
|
15
15
|
require_relative 'aws-sdk-transfer/client_api'
|
16
16
|
require_relative 'aws-sdk-transfer/client'
|
17
17
|
require_relative 'aws-sdk-transfer/errors'
|
18
|
+
require_relative 'aws-sdk-transfer/waiters'
|
18
19
|
require_relative 'aws-sdk-transfer/resource'
|
19
20
|
require_relative 'aws-sdk-transfer/customizations'
|
20
21
|
|
@@ -48,6 +49,6 @@ require_relative 'aws-sdk-transfer/customizations'
|
|
48
49
|
# @!group service
|
49
50
|
module Aws::Transfer
|
50
51
|
|
51
|
-
GEM_VERSION = '1.
|
52
|
+
GEM_VERSION = '1.50.0'
|
52
53
|
|
53
54
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws-sdk-transfer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.50.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Amazon Web Services
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-03-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-core
|
@@ -19,7 +19,7 @@ dependencies:
|
|
19
19
|
version: '3'
|
20
20
|
- - ">="
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: 3.
|
22
|
+
version: 3.127.0
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -29,7 +29,7 @@ dependencies:
|
|
29
29
|
version: '3'
|
30
30
|
- - ">="
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: 3.
|
32
|
+
version: 3.127.0
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: aws-sigv4
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
@@ -62,6 +62,7 @@ files:
|
|
62
62
|
- lib/aws-sdk-transfer/errors.rb
|
63
63
|
- lib/aws-sdk-transfer/resource.rb
|
64
64
|
- lib/aws-sdk-transfer/types.rb
|
65
|
+
- lib/aws-sdk-transfer/waiters.rb
|
65
66
|
homepage: https://github.com/aws/aws-sdk-ruby
|
66
67
|
licenses:
|
67
68
|
- Apache-2.0
|