aws-sdk-datasync 1.15.0 → 1.20.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 6bb26099537600651a976330b8ad83ac60614921
4
- data.tar.gz: fb36b8f8e4654ea2194cc00f16978e1968b79fa0
2
+ SHA256:
3
+ metadata.gz: 6e775ca1e95daea3417a911b8de03ae58d38537763c3425515f2f1cbab4da1c1
4
+ data.tar.gz: fdef73fae3e4fc3443418b5e91a99ef8e375142ed4ccfbfaffbbffce4885d4e5
5
5
  SHA512:
6
- metadata.gz: 2e41245a87d38b10990bc3cca3ad0f3a960086dcf9b85ebef59dd77a44ae560eb3fda7a8a79428ed5a786c7cfd33f0d60cc08377e35bd65e8baa9f8898ad3912
7
- data.tar.gz: 5e1d6d61df4aa02bcbf9eb43fc082e7e577bab3143df5d7d8bd003f08de007fbd04ff281972ef8386c7c0261dcdbd0028b96ea54cd9422bffc0f9b68af8a6d45
6
+ metadata.gz: 69f3e7f13cc3ed6e2cd1894a15e75d3eb50a7cdcd2253883fe0205456ab3b8c1edfd482096b52a22e399961af7787daeb07e7a293f5c5576421f3de9049801ab
7
+ data.tar.gz: 26977f57c34c10eae6e702215e867d29c82ca00b6ba630c364a514f60bdd6f19c69a06b405090283c163c10e80c42f7d104f473cdf27ae0b0fcd94d27d406857
@@ -24,17 +24,20 @@ require_relative 'aws-sdk-datasync/customizations'
24
24
  # methods each accept a hash of request parameters and return a response
25
25
  # structure.
26
26
  #
27
+ # data_sync = Aws::DataSync::Client.new
28
+ # resp = data_sync.cancel_task_execution(params)
29
+ #
27
30
  # See {Client} for more information.
28
31
  #
29
32
  # # Errors
30
33
  #
31
- # Errors returned from AWS DataSync all
32
- # extend {Errors::ServiceError}.
34
+ # Errors returned from AWS DataSync are defined in the
35
+ # {Errors} module and all extend {Errors::ServiceError}.
33
36
  #
34
37
  # begin
35
38
  # # do stuff
36
39
  # rescue Aws::DataSync::Errors::ServiceError
37
- # # rescues all service API errors
40
+ # # rescues all AWS DataSync API errors
38
41
  # end
39
42
  #
40
43
  # See {Errors} for more information.
@@ -42,6 +45,6 @@ require_relative 'aws-sdk-datasync/customizations'
42
45
  # @service
43
46
  module Aws::DataSync
44
47
 
45
- GEM_VERSION = '1.15.0'
48
+ GEM_VERSION = '1.20.0'
46
49
 
47
50
  end
@@ -30,6 +30,18 @@ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
30
30
  Aws::Plugins::GlobalConfiguration.add_identifier(:datasync)
31
31
 
32
32
  module Aws::DataSync
33
+ # An API client for DataSync. To construct a client, you need to configure a `:region` and `:credentials`.
34
+ #
35
+ # client = Aws::DataSync::Client.new(
36
+ # region: region_name,
37
+ # credentials: credentials,
38
+ # # ...
39
+ # )
40
+ #
41
+ # For details on configuring region and credentials see
42
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
43
+ #
44
+ # See {#initialize} for a full list of supported configuration options.
33
45
  class Client < Seahorse::Client::Base
34
46
 
35
47
  include Aws::ClientStubs
@@ -93,7 +105,7 @@ module Aws::DataSync
93
105
  # @option options [required, String] :region
94
106
  # The AWS region to connect to. The configured `:region` is
95
107
  # used to determine the service `:endpoint`. When not passed,
96
- # a default `:region` is search for in the following locations:
108
+ # a default `:region` is searched for in the following locations:
97
109
  #
98
110
  # * `Aws.config[:region]`
99
111
  # * `ENV['AWS_REGION']`
@@ -108,6 +120,12 @@ module Aws::DataSync
108
120
  # When set to `true`, a thread polling for endpoints will be running in
109
121
  # the background every 60 secs (default). Defaults to `false`.
110
122
  #
123
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
124
+ # Used only in `adaptive` retry mode. When true, the request will sleep
125
+ # until there is sufficent client side capacity to retry the request.
126
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
127
+ # not retry instead of sleeping.
128
+ #
111
129
  # @option options [Boolean] :client_side_monitoring (false)
112
130
  # When `true`, client-side metrics will be collected for all API requests from
113
131
  # this client.
@@ -132,6 +150,10 @@ module Aws::DataSync
132
150
  # When `true`, an attempt is made to coerce request parameters into
133
151
  # the required types.
134
152
  #
153
+ # @option options [Boolean] :correct_clock_skew (true)
154
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
155
+ # a clock skew correction and retry requests with skewed client clocks.
156
+ #
135
157
  # @option options [Boolean] :disable_host_prefix_injection (false)
136
158
  # Set to true to disable SDK automatically adding host prefix
137
159
  # to default service endpoint when available.
@@ -139,7 +161,7 @@ module Aws::DataSync
139
161
  # @option options [String] :endpoint
140
162
  # The client endpoint is normally constructed from the `:region`
141
163
  # option. You should only configure an `:endpoint` when connecting
142
- # to test endpoints. This should be avalid HTTP(S) URI.
164
+ # to test endpoints. This should be a valid HTTP(S) URI.
143
165
  #
144
166
  # @option options [Integer] :endpoint_cache_max_entries (1000)
145
167
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -154,7 +176,7 @@ module Aws::DataSync
154
176
  # requests fetching endpoints information. Defaults to 60 sec.
155
177
  #
156
178
  # @option options [Boolean] :endpoint_discovery (false)
157
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
179
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
158
180
  #
159
181
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
160
182
  # The log formatter.
@@ -166,15 +188,29 @@ module Aws::DataSync
166
188
  # The Logger instance to send log messages to. If this option
167
189
  # is not set, logging will be disabled.
168
190
  #
191
+ # @option options [Integer] :max_attempts (3)
192
+ # An integer representing the maximum number attempts that will be made for
193
+ # a single request, including the initial attempt. For example,
194
+ # setting this value to 5 will result in a request being retried up to
195
+ # 4 times. Used in `standard` and `adaptive` retry modes.
196
+ #
169
197
  # @option options [String] :profile ("default")
170
198
  # Used when loading credentials from the shared credentials file
171
199
  # at HOME/.aws/credentials. When not specified, 'default' is used.
172
200
  #
201
+ # @option options [Proc] :retry_backoff
202
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
203
+ # This option is only used in the `legacy` retry mode.
204
+ #
173
205
  # @option options [Float] :retry_base_delay (0.3)
174
- # The base delay in seconds used by the default backoff function.
206
+ # The base delay in seconds used by the default backoff function. This option
207
+ # is only used in the `legacy` retry mode.
175
208
  #
176
209
  # @option options [Symbol] :retry_jitter (:none)
177
- # A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number.
210
+ # A delay randomiser function used by the default backoff function.
211
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
212
+ # otherwise a Proc that takes and returns a number. This option is only used
213
+ # in the `legacy` retry mode.
178
214
  #
179
215
  # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
180
216
  #
@@ -182,11 +218,30 @@ module Aws::DataSync
182
218
  # The maximum number of times to retry failed requests. Only
183
219
  # ~ 500 level server errors and certain ~ 400 level client errors
184
220
  # are retried. Generally, these are throttling errors, data
185
- # checksum errors, networking errors, timeout errors and auth
186
- # errors from expired credentials.
221
+ # checksum errors, networking errors, timeout errors, auth errors,
222
+ # endpoint discovery, and errors from expired credentials.
223
+ # This option is only used in the `legacy` retry mode.
187
224
  #
188
225
  # @option options [Integer] :retry_max_delay (0)
189
- # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function.
226
+ # The maximum number of seconds to delay between retries (0 for no limit)
227
+ # used by the default backoff function. This option is only used in the
228
+ # `legacy` retry mode.
229
+ #
230
+ # @option options [String] :retry_mode ("legacy")
231
+ # Specifies which retry algorithm to use. Values are:
232
+ #
233
+ # * `legacy` - The pre-existing retry behavior. This is default value if
234
+ # no retry mode is provided.
235
+ #
236
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
237
+ # This includes support for retry quotas, which limit the number of
238
+ # unsuccessful retries a client can make.
239
+ #
240
+ # * `adaptive` - An experimental retry mode that includes all the
241
+ # functionality of `standard` mode along with automatic client side
242
+ # throttling. This is a provisional mode that may change behavior
243
+ # in the future.
244
+ #
190
245
  #
191
246
  # @option options [String] :secret_access_key
192
247
  #
@@ -219,16 +274,15 @@ module Aws::DataSync
219
274
  # requests through. Formatted like 'http://proxy.com:123'.
220
275
  #
221
276
  # @option options [Float] :http_open_timeout (15) The number of
222
- # seconds to wait when opening a HTTP session before rasing a
277
+ # seconds to wait when opening a HTTP session before raising a
223
278
  # `Timeout::Error`.
224
279
  #
225
280
  # @option options [Integer] :http_read_timeout (60) The default
226
281
  # number of seconds to wait for response data. This value can
227
- # safely be set
228
- # per-request on the session yeidled by {#session_for}.
282
+ # safely be set per-request on the session.
229
283
  #
230
284
  # @option options [Float] :http_idle_timeout (5) The number of
231
- # seconds a connection is allowed to sit idble before it is
285
+ # seconds a connection is allowed to sit idle before it is
232
286
  # considered stale. Stale connections are closed and removed
233
287
  # from the pool before making a request.
234
288
  #
@@ -237,7 +291,7 @@ module Aws::DataSync
237
291
  # request body. This option has no effect unless the request has
238
292
  # "Expect" header set to "100-continue". Defaults to `nil` which
239
293
  # disables this behaviour. This value can safely be set per
240
- # request on the session yeidled by {#session_for}.
294
+ # request on the session.
241
295
  #
242
296
  # @option options [Boolean] :http_wire_trace (false) When `true`,
243
297
  # HTTP debug output will be sent to the `:logger`.
@@ -413,6 +467,11 @@ module Aws::DataSync
413
467
  # data to the EFS destination. By default, AWS DataSync uses the root
414
468
  # directory.
415
469
  #
470
+ # <note markdown="1"> `Subdirectory` must be specified with forward slashes. For example
471
+ # `/path/to/folder`.
472
+ #
473
+ # </note>
474
+ #
416
475
  # @option params [required, String] :efs_filesystem_arn
417
476
  # The Amazon Resource Name (ARN) for the Amazon EFS file system.
418
477
  #
@@ -452,7 +511,7 @@ module Aws::DataSync
452
511
  # @example Request syntax with placeholder values
453
512
  #
454
513
  # resp = client.create_location_efs({
455
- # subdirectory: "Subdirectory",
514
+ # subdirectory: "EfsSubdirectory",
456
515
  # efs_filesystem_arn: "EfsFilesystemArn", # required
457
516
  # ec2_config: { # required
458
517
  # subnet_arn: "Ec2SubnetArn", # required
@@ -479,6 +538,73 @@ module Aws::DataSync
479
538
  req.send_request(options)
480
539
  end
481
540
 
541
+ # Creates an endpoint for an Amazon FSx for Windows file system.
542
+ #
543
+ # @option params [String] :subdirectory
544
+ # A subdirectory in the location’s path. This subdirectory in the Amazon
545
+ # FSx for Windows file system is used to read data from the Amazon FSx
546
+ # for Windows source location or write data to the FSx for Windows
547
+ # destination.
548
+ #
549
+ # @option params [required, String] :fsx_filesystem_arn
550
+ # The Amazon Resource Name (ARN) for the FSx for Windows file system.
551
+ #
552
+ # @option params [required, Array<String>] :security_group_arns
553
+ # The Amazon Resource Names (ARNs) of the security groups that are to
554
+ # use to configure the FSx for Windows file system.
555
+ #
556
+ # @option params [Array<Types::TagListEntry>] :tags
557
+ # The key-value pair that represents a tag that you want to add to the
558
+ # resource. The value can be an empty string. This value helps you
559
+ # manage, filter, and search for your resources. We recommend that you
560
+ # create a name tag for your location.
561
+ #
562
+ # @option params [required, String] :user
563
+ # The user who has the permissions to access files and folders in the
564
+ # FSx for Windows file system.
565
+ #
566
+ # @option params [String] :domain
567
+ # The name of the Windows domain that the FSx for Windows server belongs
568
+ # to.
569
+ #
570
+ # @option params [required, String] :password
571
+ # The password of the user who has the permissions to access files and
572
+ # folders in the FSx for Windows file system.
573
+ #
574
+ # @return [Types::CreateLocationFsxWindowsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
575
+ #
576
+ # * {Types::CreateLocationFsxWindowsResponse#location_arn #location_arn} => String
577
+ #
578
+ # @example Request syntax with placeholder values
579
+ #
580
+ # resp = client.create_location_fsx_windows({
581
+ # subdirectory: "FsxWindowsSubdirectory",
582
+ # fsx_filesystem_arn: "FsxFilesystemArn", # required
583
+ # security_group_arns: ["Ec2SecurityGroupArn"], # required
584
+ # tags: [
585
+ # {
586
+ # key: "TagKey", # required
587
+ # value: "TagValue",
588
+ # },
589
+ # ],
590
+ # user: "SmbUser", # required
591
+ # domain: "SmbDomain",
592
+ # password: "SmbPassword", # required
593
+ # })
594
+ #
595
+ # @example Response structure
596
+ #
597
+ # resp.location_arn #=> String
598
+ #
599
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationFsxWindows AWS API Documentation
600
+ #
601
+ # @overload create_location_fsx_windows(params = {})
602
+ # @param [Hash] params ({})
603
+ def create_location_fsx_windows(params = {}, options = {})
604
+ req = build_request(:create_location_fsx_windows, params)
605
+ req.send_request(options)
606
+ end
607
+
482
608
  # Defines a file system on a Network File System (NFS) server that can
483
609
  # be read from or written to
484
610
  #
@@ -536,7 +662,7 @@ module Aws::DataSync
536
662
  # @example Request syntax with placeholder values
537
663
  #
538
664
  # resp = client.create_location_nfs({
539
- # subdirectory: "NonEmptySubdirectory", # required
665
+ # subdirectory: "NfsSubdirectory", # required
540
666
  # server_hostname: "ServerHostname", # required
541
667
  # on_prem_config: { # required
542
668
  # agent_arns: ["AgentArn"], # required
@@ -617,7 +743,7 @@ module Aws::DataSync
617
743
  # @example Request syntax with placeholder values
618
744
  #
619
745
  # resp = client.create_location_s3({
620
- # subdirectory: "Subdirectory",
746
+ # subdirectory: "S3Subdirectory",
621
747
  # s3_bucket_arn: "S3BucketArn", # required
622
748
  # s3_storage_class: "STANDARD", # accepts STANDARD, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
623
749
  # s3_config: { # required
@@ -645,7 +771,7 @@ module Aws::DataSync
645
771
  end
646
772
 
647
773
  # Defines a file system on an Server Message Block (SMB) server that can
648
- # be read from or written to
774
+ # be read from or written to.
649
775
  #
650
776
  # @option params [required, String] :subdirectory
651
777
  # The subdirectory in the SMB file system that is used to read data from
@@ -654,6 +780,11 @@ module Aws::DataSync
654
780
  # subdirectory of that path. The path should be such that it can be
655
781
  # mounted by other SMB clients in your network.
656
782
  #
783
+ # <note markdown="1"> `Subdirectory` must be specified with forward slashes. For example
784
+ # `/path/to/folder`.
785
+ #
786
+ # </note>
787
+ #
657
788
  # To transfer all the data in the folder you specified, DataSync needs
658
789
  # to have permissions to mount the SMB share, as well as to access all
659
790
  # the data in that share. To ensure this, either ensure that the
@@ -704,7 +835,7 @@ module Aws::DataSync
704
835
  # @example Request syntax with placeholder values
705
836
  #
706
837
  # resp = client.create_location_smb({
707
- # subdirectory: "NonEmptySubdirectory", # required
838
+ # subdirectory: "SmbSubdirectory", # required
708
839
  # server_hostname: "ServerHostname", # required
709
840
  # user: "SmbUser", # required
710
841
  # domain: "SmbDomain",
@@ -790,6 +921,11 @@ module Aws::DataSync
790
921
  # the patterns to exclude. The patterns are delimited by "\|" (that
791
922
  # is, a pipe), for example, `"/folder1|/folder2"`
792
923
  #
924
+ # @option params [Types::TaskSchedule] :schedule
925
+ # Specifies a schedule used to periodically transfer files from a source
926
+ # to a destination location. The schedule should be specified in UTC
927
+ # time. For more information, see task-scheduling.
928
+ #
793
929
  # @option params [Array<Types::TagListEntry>] :tags
794
930
  # The key-value pair that represents the tag that you want to add to the
795
931
  # resource. The value can be an empty string.
@@ -814,9 +950,10 @@ module Aws::DataSync
814
950
  # gid: "NONE", # accepts NONE, INT_VALUE, NAME, BOTH
815
951
  # preserve_deleted_files: "PRESERVE", # accepts PRESERVE, REMOVE
816
952
  # preserve_devices: "NONE", # accepts NONE, PRESERVE
817
- # posix_permissions: "NONE", # accepts NONE, BEST_EFFORT, PRESERVE
953
+ # posix_permissions: "NONE", # accepts NONE, PRESERVE
818
954
  # bytes_per_second: 1,
819
955
  # task_queueing: "ENABLED", # accepts ENABLED, DISABLED
956
+ # log_level: "OFF", # accepts OFF, BASIC, TRANSFER
820
957
  # },
821
958
  # excludes: [
822
959
  # {
@@ -824,6 +961,9 @@ module Aws::DataSync
824
961
  # value: "FilterValue",
825
962
  # },
826
963
  # ],
964
+ # schedule: {
965
+ # schedule_expression: "ScheduleExpressionCron", # required
966
+ # },
827
967
  # tags: [
828
968
  # {
829
969
  # key: "TagKey", # required
@@ -948,7 +1088,7 @@ module Aws::DataSync
948
1088
  # resp.status #=> String, one of "ONLINE", "OFFLINE"
949
1089
  # resp.last_connection_time #=> Time
950
1090
  # resp.creation_time #=> Time
951
- # resp.endpoint_type #=> String, one of "PUBLIC", "PRIVATE_LINK"
1091
+ # resp.endpoint_type #=> String, one of "PUBLIC", "PRIVATE_LINK", "FIPS"
952
1092
  # resp.private_link_config.vpc_endpoint_id #=> String
953
1093
  # resp.private_link_config.private_link_endpoint #=> String
954
1094
  # resp.private_link_config.subnet_arns #=> Array
@@ -1002,6 +1142,47 @@ module Aws::DataSync
1002
1142
  req.send_request(options)
1003
1143
  end
1004
1144
 
1145
+ # Returns metadata, such as the path information about an Amazon FSx for
1146
+ # Windows location.
1147
+ #
1148
+ # @option params [required, String] :location_arn
1149
+ # The Amazon Resource Name (ARN) of the FSx for Windows location to
1150
+ # describe.
1151
+ #
1152
+ # @return [Types::DescribeLocationFsxWindowsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1153
+ #
1154
+ # * {Types::DescribeLocationFsxWindowsResponse#location_arn #location_arn} => String
1155
+ # * {Types::DescribeLocationFsxWindowsResponse#location_uri #location_uri} => String
1156
+ # * {Types::DescribeLocationFsxWindowsResponse#security_group_arns #security_group_arns} => Array&lt;String&gt;
1157
+ # * {Types::DescribeLocationFsxWindowsResponse#creation_time #creation_time} => Time
1158
+ # * {Types::DescribeLocationFsxWindowsResponse#user #user} => String
1159
+ # * {Types::DescribeLocationFsxWindowsResponse#domain #domain} => String
1160
+ #
1161
+ # @example Request syntax with placeholder values
1162
+ #
1163
+ # resp = client.describe_location_fsx_windows({
1164
+ # location_arn: "LocationArn", # required
1165
+ # })
1166
+ #
1167
+ # @example Response structure
1168
+ #
1169
+ # resp.location_arn #=> String
1170
+ # resp.location_uri #=> String
1171
+ # resp.security_group_arns #=> Array
1172
+ # resp.security_group_arns[0] #=> String
1173
+ # resp.creation_time #=> Time
1174
+ # resp.user #=> String
1175
+ # resp.domain #=> String
1176
+ #
1177
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeLocationFsxWindows AWS API Documentation
1178
+ #
1179
+ # @overload describe_location_fsx_windows(params = {})
1180
+ # @param [Hash] params ({})
1181
+ def describe_location_fsx_windows(params = {}, options = {})
1182
+ req = build_request(:describe_location_fsx_windows, params)
1183
+ req.send_request(options)
1184
+ end
1185
+
1005
1186
  # Returns metadata, such as the path information, about a NFS location.
1006
1187
  #
1007
1188
  # @option params [required, String] :location_arn
@@ -1137,6 +1318,7 @@ module Aws::DataSync
1137
1318
  # * {Types::DescribeTaskResponse#destination_network_interface_arns #destination_network_interface_arns} => Array&lt;String&gt;
1138
1319
  # * {Types::DescribeTaskResponse#options #options} => Types::Options
1139
1320
  # * {Types::DescribeTaskResponse#excludes #excludes} => Array&lt;Types::FilterRule&gt;
1321
+ # * {Types::DescribeTaskResponse#schedule #schedule} => Types::TaskSchedule
1140
1322
  # * {Types::DescribeTaskResponse#error_code #error_code} => String
1141
1323
  # * {Types::DescribeTaskResponse#error_detail #error_detail} => String
1142
1324
  # * {Types::DescribeTaskResponse#creation_time #creation_time} => Time
@@ -1168,12 +1350,14 @@ module Aws::DataSync
1168
1350
  # resp.options.gid #=> String, one of "NONE", "INT_VALUE", "NAME", "BOTH"
1169
1351
  # resp.options.preserve_deleted_files #=> String, one of "PRESERVE", "REMOVE"
1170
1352
  # resp.options.preserve_devices #=> String, one of "NONE", "PRESERVE"
1171
- # resp.options.posix_permissions #=> String, one of "NONE", "BEST_EFFORT", "PRESERVE"
1353
+ # resp.options.posix_permissions #=> String, one of "NONE", "PRESERVE"
1172
1354
  # resp.options.bytes_per_second #=> Integer
1173
1355
  # resp.options.task_queueing #=> String, one of "ENABLED", "DISABLED"
1356
+ # resp.options.log_level #=> String, one of "OFF", "BASIC", "TRANSFER"
1174
1357
  # resp.excludes #=> Array
1175
1358
  # resp.excludes[0].filter_type #=> String, one of "SIMPLE_PATTERN"
1176
1359
  # resp.excludes[0].value #=> String
1360
+ # resp.schedule.schedule_expression #=> String
1177
1361
  # resp.error_code #=> String
1178
1362
  # resp.error_detail #=> String
1179
1363
  # resp.creation_time #=> Time
@@ -1225,9 +1409,10 @@ module Aws::DataSync
1225
1409
  # resp.options.gid #=> String, one of "NONE", "INT_VALUE", "NAME", "BOTH"
1226
1410
  # resp.options.preserve_deleted_files #=> String, one of "PRESERVE", "REMOVE"
1227
1411
  # resp.options.preserve_devices #=> String, one of "NONE", "PRESERVE"
1228
- # resp.options.posix_permissions #=> String, one of "NONE", "BEST_EFFORT", "PRESERVE"
1412
+ # resp.options.posix_permissions #=> String, one of "NONE", "PRESERVE"
1229
1413
  # resp.options.bytes_per_second #=> Integer
1230
1414
  # resp.options.task_queueing #=> String, one of "ENABLED", "DISABLED"
1415
+ # resp.options.log_level #=> String, one of "OFF", "BASIC", "TRANSFER"
1231
1416
  # resp.excludes #=> Array
1232
1417
  # resp.excludes[0].filter_type #=> String, one of "SIMPLE_PATTERN"
1233
1418
  # resp.excludes[0].value #=> String
@@ -1242,6 +1427,7 @@ module Aws::DataSync
1242
1427
  # resp.bytes_transferred #=> Integer
1243
1428
  # resp.result.prepare_duration #=> Integer
1244
1429
  # resp.result.prepare_status #=> String, one of "PENDING", "SUCCESS", "ERROR"
1430
+ # resp.result.total_duration #=> Integer
1245
1431
  # resp.result.transfer_duration #=> Integer
1246
1432
  # resp.result.transfer_status #=> String, one of "PENDING", "SUCCESS", "ERROR"
1247
1433
  # resp.result.verify_duration #=> Integer
@@ -1283,6 +1469,8 @@ module Aws::DataSync
1283
1469
  # * {Types::ListAgentsResponse#agents #agents} => Array&lt;Types::AgentListEntry&gt;
1284
1470
  # * {Types::ListAgentsResponse#next_token #next_token} => String
1285
1471
  #
1472
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1473
+ #
1286
1474
  # @example Request syntax with placeholder values
1287
1475
  #
1288
1476
  # resp = client.list_agents({
@@ -1326,6 +1514,8 @@ module Aws::DataSync
1326
1514
  # * {Types::ListLocationsResponse#locations #locations} => Array&lt;Types::LocationListEntry&gt;
1327
1515
  # * {Types::ListLocationsResponse#next_token #next_token} => String
1328
1516
  #
1517
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1518
+ #
1329
1519
  # @example Request syntax with placeholder values
1330
1520
  #
1331
1521
  # resp = client.list_locations({
@@ -1366,6 +1556,8 @@ module Aws::DataSync
1366
1556
  # * {Types::ListTagsForResourceResponse#tags #tags} => Array&lt;Types::TagListEntry&gt;
1367
1557
  # * {Types::ListTagsForResourceResponse#next_token #next_token} => String
1368
1558
  #
1559
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1560
+ #
1369
1561
  # @example Request syntax with placeholder values
1370
1562
  #
1371
1563
  # resp = client.list_tags_for_resource({
@@ -1408,6 +1600,8 @@ module Aws::DataSync
1408
1600
  # * {Types::ListTaskExecutionsResponse#task_executions #task_executions} => Array&lt;Types::TaskExecutionListEntry&gt;
1409
1601
  # * {Types::ListTaskExecutionsResponse#next_token #next_token} => String
1410
1602
  #
1603
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1604
+ #
1411
1605
  # @example Request syntax with placeholder values
1412
1606
  #
1413
1607
  # resp = client.list_task_executions({
@@ -1446,6 +1640,8 @@ module Aws::DataSync
1446
1640
  # * {Types::ListTasksResponse#tasks #tasks} => Array&lt;Types::TaskListEntry&gt;
1447
1641
  # * {Types::ListTasksResponse#next_token #next_token} => String
1448
1642
  #
1643
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1644
+ #
1449
1645
  # @example Request syntax with placeholder values
1450
1646
  #
1451
1647
  # resp = client.list_tasks({
@@ -1518,9 +1714,10 @@ module Aws::DataSync
1518
1714
  # gid: "NONE", # accepts NONE, INT_VALUE, NAME, BOTH
1519
1715
  # preserve_deleted_files: "PRESERVE", # accepts PRESERVE, REMOVE
1520
1716
  # preserve_devices: "NONE", # accepts NONE, PRESERVE
1521
- # posix_permissions: "NONE", # accepts NONE, BEST_EFFORT, PRESERVE
1717
+ # posix_permissions: "NONE", # accepts NONE, PRESERVE
1522
1718
  # bytes_per_second: 1,
1523
1719
  # task_queueing: "ENABLED", # accepts ENABLED, DISABLED
1720
+ # log_level: "OFF", # accepts OFF, BASIC, TRANSFER
1524
1721
  # },
1525
1722
  # includes: [
1526
1723
  # {
@@ -1650,6 +1847,13 @@ module Aws::DataSync
1650
1847
  # the patterns to exclude. The patterns are delimited by "\|" (that
1651
1848
  # is, a pipe), for example: `"/folder1|/folder2"`
1652
1849
  #
1850
+ # @option params [Types::TaskSchedule] :schedule
1851
+ # Specifies a schedule used to periodically transfer files from a source
1852
+ # to a destination location. You can configure your task to execute
1853
+ # hourly, daily, weekly or on specific days of the week. You control
1854
+ # when in the day or hour you want the task to execute. The time you
1855
+ # specify is UTC time. For more information, see task-scheduling.
1856
+ #
1653
1857
  # @option params [String] :name
1654
1858
  # The name of the task to update.
1655
1859
  #
@@ -1672,9 +1876,10 @@ module Aws::DataSync
1672
1876
  # gid: "NONE", # accepts NONE, INT_VALUE, NAME, BOTH
1673
1877
  # preserve_deleted_files: "PRESERVE", # accepts PRESERVE, REMOVE
1674
1878
  # preserve_devices: "NONE", # accepts NONE, PRESERVE
1675
- # posix_permissions: "NONE", # accepts NONE, BEST_EFFORT, PRESERVE
1879
+ # posix_permissions: "NONE", # accepts NONE, PRESERVE
1676
1880
  # bytes_per_second: 1,
1677
1881
  # task_queueing: "ENABLED", # accepts ENABLED, DISABLED
1882
+ # log_level: "OFF", # accepts OFF, BASIC, TRANSFER
1678
1883
  # },
1679
1884
  # excludes: [
1680
1885
  # {
@@ -1682,6 +1887,9 @@ module Aws::DataSync
1682
1887
  # value: "FilterValue",
1683
1888
  # },
1684
1889
  # ],
1890
+ # schedule: {
1891
+ # schedule_expression: "ScheduleExpressionCron", # required
1892
+ # },
1685
1893
  # name: "TagValue",
1686
1894
  # cloud_watch_log_group_arn: "LogGroupArn",
1687
1895
  # })
@@ -1708,7 +1916,7 @@ module Aws::DataSync
1708
1916
  params: params,
1709
1917
  config: config)
1710
1918
  context[:gem_name] = 'aws-sdk-datasync'
1711
- context[:gem_version] = '1.15.0'
1919
+ context[:gem_version] = '1.20.0'
1712
1920
  Seahorse::Client::Request.new(handlers, context)
1713
1921
  end
1714
1922
 
@@ -25,6 +25,8 @@ module Aws::DataSync
25
25
  CreateAgentResponse = Shapes::StructureShape.new(name: 'CreateAgentResponse')
26
26
  CreateLocationEfsRequest = Shapes::StructureShape.new(name: 'CreateLocationEfsRequest')
27
27
  CreateLocationEfsResponse = Shapes::StructureShape.new(name: 'CreateLocationEfsResponse')
28
+ CreateLocationFsxWindowsRequest = Shapes::StructureShape.new(name: 'CreateLocationFsxWindowsRequest')
29
+ CreateLocationFsxWindowsResponse = Shapes::StructureShape.new(name: 'CreateLocationFsxWindowsResponse')
28
30
  CreateLocationNfsRequest = Shapes::StructureShape.new(name: 'CreateLocationNfsRequest')
29
31
  CreateLocationNfsResponse = Shapes::StructureShape.new(name: 'CreateLocationNfsResponse')
30
32
  CreateLocationS3Request = Shapes::StructureShape.new(name: 'CreateLocationS3Request')
@@ -43,6 +45,8 @@ module Aws::DataSync
43
45
  DescribeAgentResponse = Shapes::StructureShape.new(name: 'DescribeAgentResponse')
44
46
  DescribeLocationEfsRequest = Shapes::StructureShape.new(name: 'DescribeLocationEfsRequest')
45
47
  DescribeLocationEfsResponse = Shapes::StructureShape.new(name: 'DescribeLocationEfsResponse')
48
+ DescribeLocationFsxWindowsRequest = Shapes::StructureShape.new(name: 'DescribeLocationFsxWindowsRequest')
49
+ DescribeLocationFsxWindowsResponse = Shapes::StructureShape.new(name: 'DescribeLocationFsxWindowsResponse')
46
50
  DescribeLocationNfsRequest = Shapes::StructureShape.new(name: 'DescribeLocationNfsRequest')
47
51
  DescribeLocationNfsResponse = Shapes::StructureShape.new(name: 'DescribeLocationNfsResponse')
48
52
  DescribeLocationS3Request = Shapes::StructureShape.new(name: 'DescribeLocationS3Request')
@@ -60,12 +64,15 @@ module Aws::DataSync
60
64
  Ec2SecurityGroupArnList = Shapes::ListShape.new(name: 'Ec2SecurityGroupArnList')
61
65
  Ec2SubnetArn = Shapes::StringShape.new(name: 'Ec2SubnetArn')
62
66
  EfsFilesystemArn = Shapes::StringShape.new(name: 'EfsFilesystemArn')
67
+ EfsSubdirectory = Shapes::StringShape.new(name: 'EfsSubdirectory')
63
68
  Endpoint = Shapes::StringShape.new(name: 'Endpoint')
64
69
  EndpointType = Shapes::StringShape.new(name: 'EndpointType')
65
70
  FilterList = Shapes::ListShape.new(name: 'FilterList')
66
71
  FilterRule = Shapes::StructureShape.new(name: 'FilterRule')
67
72
  FilterType = Shapes::StringShape.new(name: 'FilterType')
68
73
  FilterValue = Shapes::StringShape.new(name: 'FilterValue')
74
+ FsxFilesystemArn = Shapes::StringShape.new(name: 'FsxFilesystemArn')
75
+ FsxWindowsSubdirectory = Shapes::StringShape.new(name: 'FsxWindowsSubdirectory')
69
76
  Gid = Shapes::StringShape.new(name: 'Gid')
70
77
  IamRoleArn = Shapes::StringShape.new(name: 'IamRoleArn')
71
78
  InternalException = Shapes::StructureShape.new(name: 'InternalException')
@@ -85,13 +92,14 @@ module Aws::DataSync
85
92
  LocationListEntry = Shapes::StructureShape.new(name: 'LocationListEntry')
86
93
  LocationUri = Shapes::StringShape.new(name: 'LocationUri')
87
94
  LogGroupArn = Shapes::StringShape.new(name: 'LogGroupArn')
95
+ LogLevel = Shapes::StringShape.new(name: 'LogLevel')
88
96
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
89
97
  Mtime = Shapes::StringShape.new(name: 'Mtime')
90
98
  NetworkInterfaceArn = Shapes::StringShape.new(name: 'NetworkInterfaceArn')
91
99
  NextToken = Shapes::StringShape.new(name: 'NextToken')
92
100
  NfsMountOptions = Shapes::StructureShape.new(name: 'NfsMountOptions')
101
+ NfsSubdirectory = Shapes::StringShape.new(name: 'NfsSubdirectory')
93
102
  NfsVersion = Shapes::StringShape.new(name: 'NfsVersion')
94
- NonEmptySubdirectory = Shapes::StringShape.new(name: 'NonEmptySubdirectory')
95
103
  OnPremConfig = Shapes::StructureShape.new(name: 'OnPremConfig')
96
104
  Options = Shapes::StructureShape.new(name: 'Options')
97
105
  OverwriteMode = Shapes::StringShape.new(name: 'OverwriteMode')
@@ -105,16 +113,18 @@ module Aws::DataSync
105
113
  S3BucketArn = Shapes::StringShape.new(name: 'S3BucketArn')
106
114
  S3Config = Shapes::StructureShape.new(name: 'S3Config')
107
115
  S3StorageClass = Shapes::StringShape.new(name: 'S3StorageClass')
116
+ S3Subdirectory = Shapes::StringShape.new(name: 'S3Subdirectory')
117
+ ScheduleExpressionCron = Shapes::StringShape.new(name: 'ScheduleExpressionCron')
108
118
  ServerHostname = Shapes::StringShape.new(name: 'ServerHostname')
109
119
  SmbDomain = Shapes::StringShape.new(name: 'SmbDomain')
110
120
  SmbMountOptions = Shapes::StructureShape.new(name: 'SmbMountOptions')
111
121
  SmbPassword = Shapes::StringShape.new(name: 'SmbPassword')
122
+ SmbSubdirectory = Shapes::StringShape.new(name: 'SmbSubdirectory')
112
123
  SmbUser = Shapes::StringShape.new(name: 'SmbUser')
113
124
  SmbVersion = Shapes::StringShape.new(name: 'SmbVersion')
114
125
  SourceNetworkInterfaceArns = Shapes::ListShape.new(name: 'SourceNetworkInterfaceArns')
115
126
  StartTaskExecutionRequest = Shapes::StructureShape.new(name: 'StartTaskExecutionRequest')
116
127
  StartTaskExecutionResponse = Shapes::StructureShape.new(name: 'StartTaskExecutionResponse')
117
- Subdirectory = Shapes::StringShape.new(name: 'Subdirectory')
118
128
  TagKey = Shapes::StringShape.new(name: 'TagKey')
119
129
  TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
120
130
  TagList = Shapes::ListShape.new(name: 'TagList')
@@ -132,6 +142,7 @@ module Aws::DataSync
132
142
  TaskList = Shapes::ListShape.new(name: 'TaskList')
133
143
  TaskListEntry = Shapes::StructureShape.new(name: 'TaskListEntry')
134
144
  TaskQueueing = Shapes::StringShape.new(name: 'TaskQueueing')
145
+ TaskSchedule = Shapes::StructureShape.new(name: 'TaskSchedule')
135
146
  TaskStatus = Shapes::StringShape.new(name: 'TaskStatus')
136
147
  Time = Shapes::TimestampShape.new(name: 'Time')
137
148
  Uid = Shapes::StringShape.new(name: 'Uid')
@@ -171,7 +182,7 @@ module Aws::DataSync
171
182
  CreateAgentResponse.add_member(:agent_arn, Shapes::ShapeRef.new(shape: AgentArn, location_name: "AgentArn"))
172
183
  CreateAgentResponse.struct_class = Types::CreateAgentResponse
173
184
 
174
- CreateLocationEfsRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: Subdirectory, location_name: "Subdirectory"))
185
+ CreateLocationEfsRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: EfsSubdirectory, location_name: "Subdirectory"))
175
186
  CreateLocationEfsRequest.add_member(:efs_filesystem_arn, Shapes::ShapeRef.new(shape: EfsFilesystemArn, required: true, location_name: "EfsFilesystemArn"))
176
187
  CreateLocationEfsRequest.add_member(:ec2_config, Shapes::ShapeRef.new(shape: Ec2Config, required: true, location_name: "Ec2Config"))
177
188
  CreateLocationEfsRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
@@ -180,7 +191,19 @@ module Aws::DataSync
180
191
  CreateLocationEfsResponse.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, location_name: "LocationArn"))
181
192
  CreateLocationEfsResponse.struct_class = Types::CreateLocationEfsResponse
182
193
 
183
- CreateLocationNfsRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: NonEmptySubdirectory, required: true, location_name: "Subdirectory"))
194
+ CreateLocationFsxWindowsRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: FsxWindowsSubdirectory, location_name: "Subdirectory"))
195
+ CreateLocationFsxWindowsRequest.add_member(:fsx_filesystem_arn, Shapes::ShapeRef.new(shape: FsxFilesystemArn, required: true, location_name: "FsxFilesystemArn"))
196
+ CreateLocationFsxWindowsRequest.add_member(:security_group_arns, Shapes::ShapeRef.new(shape: Ec2SecurityGroupArnList, required: true, location_name: "SecurityGroupArns"))
197
+ CreateLocationFsxWindowsRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
198
+ CreateLocationFsxWindowsRequest.add_member(:user, Shapes::ShapeRef.new(shape: SmbUser, required: true, location_name: "User"))
199
+ CreateLocationFsxWindowsRequest.add_member(:domain, Shapes::ShapeRef.new(shape: SmbDomain, location_name: "Domain"))
200
+ CreateLocationFsxWindowsRequest.add_member(:password, Shapes::ShapeRef.new(shape: SmbPassword, required: true, location_name: "Password"))
201
+ CreateLocationFsxWindowsRequest.struct_class = Types::CreateLocationFsxWindowsRequest
202
+
203
+ CreateLocationFsxWindowsResponse.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, location_name: "LocationArn"))
204
+ CreateLocationFsxWindowsResponse.struct_class = Types::CreateLocationFsxWindowsResponse
205
+
206
+ CreateLocationNfsRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: NfsSubdirectory, required: true, location_name: "Subdirectory"))
184
207
  CreateLocationNfsRequest.add_member(:server_hostname, Shapes::ShapeRef.new(shape: ServerHostname, required: true, location_name: "ServerHostname"))
185
208
  CreateLocationNfsRequest.add_member(:on_prem_config, Shapes::ShapeRef.new(shape: OnPremConfig, required: true, location_name: "OnPremConfig"))
186
209
  CreateLocationNfsRequest.add_member(:mount_options, Shapes::ShapeRef.new(shape: NfsMountOptions, location_name: "MountOptions"))
@@ -190,7 +213,7 @@ module Aws::DataSync
190
213
  CreateLocationNfsResponse.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, location_name: "LocationArn"))
191
214
  CreateLocationNfsResponse.struct_class = Types::CreateLocationNfsResponse
192
215
 
193
- CreateLocationS3Request.add_member(:subdirectory, Shapes::ShapeRef.new(shape: Subdirectory, location_name: "Subdirectory"))
216
+ CreateLocationS3Request.add_member(:subdirectory, Shapes::ShapeRef.new(shape: S3Subdirectory, location_name: "Subdirectory"))
194
217
  CreateLocationS3Request.add_member(:s3_bucket_arn, Shapes::ShapeRef.new(shape: S3BucketArn, required: true, location_name: "S3BucketArn"))
195
218
  CreateLocationS3Request.add_member(:s3_storage_class, Shapes::ShapeRef.new(shape: S3StorageClass, location_name: "S3StorageClass"))
196
219
  CreateLocationS3Request.add_member(:s3_config, Shapes::ShapeRef.new(shape: S3Config, required: true, location_name: "S3Config"))
@@ -200,7 +223,7 @@ module Aws::DataSync
200
223
  CreateLocationS3Response.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, location_name: "LocationArn"))
201
224
  CreateLocationS3Response.struct_class = Types::CreateLocationS3Response
202
225
 
203
- CreateLocationSmbRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: NonEmptySubdirectory, required: true, location_name: "Subdirectory"))
226
+ CreateLocationSmbRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: SmbSubdirectory, required: true, location_name: "Subdirectory"))
204
227
  CreateLocationSmbRequest.add_member(:server_hostname, Shapes::ShapeRef.new(shape: ServerHostname, required: true, location_name: "ServerHostname"))
205
228
  CreateLocationSmbRequest.add_member(:user, Shapes::ShapeRef.new(shape: SmbUser, required: true, location_name: "User"))
206
229
  CreateLocationSmbRequest.add_member(:domain, Shapes::ShapeRef.new(shape: SmbDomain, location_name: "Domain"))
@@ -219,6 +242,7 @@ module Aws::DataSync
219
242
  CreateTaskRequest.add_member(:name, Shapes::ShapeRef.new(shape: TagValue, location_name: "Name"))
220
243
  CreateTaskRequest.add_member(:options, Shapes::ShapeRef.new(shape: Options, location_name: "Options"))
221
244
  CreateTaskRequest.add_member(:excludes, Shapes::ShapeRef.new(shape: FilterList, location_name: "Excludes"))
245
+ CreateTaskRequest.add_member(:schedule, Shapes::ShapeRef.new(shape: TaskSchedule, location_name: "Schedule"))
222
246
  CreateTaskRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
223
247
  CreateTaskRequest.struct_class = Types::CreateTaskRequest
224
248
 
@@ -261,6 +285,17 @@ module Aws::DataSync
261
285
  DescribeLocationEfsResponse.add_member(:creation_time, Shapes::ShapeRef.new(shape: Time, location_name: "CreationTime"))
262
286
  DescribeLocationEfsResponse.struct_class = Types::DescribeLocationEfsResponse
263
287
 
288
+ DescribeLocationFsxWindowsRequest.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, required: true, location_name: "LocationArn"))
289
+ DescribeLocationFsxWindowsRequest.struct_class = Types::DescribeLocationFsxWindowsRequest
290
+
291
+ DescribeLocationFsxWindowsResponse.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, location_name: "LocationArn"))
292
+ DescribeLocationFsxWindowsResponse.add_member(:location_uri, Shapes::ShapeRef.new(shape: LocationUri, location_name: "LocationUri"))
293
+ DescribeLocationFsxWindowsResponse.add_member(:security_group_arns, Shapes::ShapeRef.new(shape: Ec2SecurityGroupArnList, location_name: "SecurityGroupArns"))
294
+ DescribeLocationFsxWindowsResponse.add_member(:creation_time, Shapes::ShapeRef.new(shape: Time, location_name: "CreationTime"))
295
+ DescribeLocationFsxWindowsResponse.add_member(:user, Shapes::ShapeRef.new(shape: SmbUser, location_name: "User"))
296
+ DescribeLocationFsxWindowsResponse.add_member(:domain, Shapes::ShapeRef.new(shape: SmbDomain, location_name: "Domain"))
297
+ DescribeLocationFsxWindowsResponse.struct_class = Types::DescribeLocationFsxWindowsResponse
298
+
264
299
  DescribeLocationNfsRequest.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, required: true, location_name: "LocationArn"))
265
300
  DescribeLocationNfsRequest.struct_class = Types::DescribeLocationNfsRequest
266
301
 
@@ -324,6 +359,7 @@ module Aws::DataSync
324
359
  DescribeTaskResponse.add_member(:destination_network_interface_arns, Shapes::ShapeRef.new(shape: DestinationNetworkInterfaceArns, location_name: "DestinationNetworkInterfaceArns"))
325
360
  DescribeTaskResponse.add_member(:options, Shapes::ShapeRef.new(shape: Options, location_name: "Options"))
326
361
  DescribeTaskResponse.add_member(:excludes, Shapes::ShapeRef.new(shape: FilterList, location_name: "Excludes"))
362
+ DescribeTaskResponse.add_member(:schedule, Shapes::ShapeRef.new(shape: TaskSchedule, location_name: "Schedule"))
327
363
  DescribeTaskResponse.add_member(:error_code, Shapes::ShapeRef.new(shape: string, location_name: "ErrorCode"))
328
364
  DescribeTaskResponse.add_member(:error_detail, Shapes::ShapeRef.new(shape: string, location_name: "ErrorDetail"))
329
365
  DescribeTaskResponse.add_member(:creation_time, Shapes::ShapeRef.new(shape: Time, location_name: "CreationTime"))
@@ -416,6 +452,7 @@ module Aws::DataSync
416
452
  Options.add_member(:posix_permissions, Shapes::ShapeRef.new(shape: PosixPermissions, location_name: "PosixPermissions"))
417
453
  Options.add_member(:bytes_per_second, Shapes::ShapeRef.new(shape: BytesPerSecond, location_name: "BytesPerSecond"))
418
454
  Options.add_member(:task_queueing, Shapes::ShapeRef.new(shape: TaskQueueing, location_name: "TaskQueueing"))
455
+ Options.add_member(:log_level, Shapes::ShapeRef.new(shape: LogLevel, location_name: "LogLevel"))
419
456
  Options.struct_class = Types::Options
420
457
 
421
458
  PLSecurityGroupArnList.member = Shapes::ShapeRef.new(shape: Ec2SecurityGroupArn)
@@ -466,6 +503,7 @@ module Aws::DataSync
466
503
 
467
504
  TaskExecutionResultDetail.add_member(:prepare_duration, Shapes::ShapeRef.new(shape: Duration, location_name: "PrepareDuration"))
468
505
  TaskExecutionResultDetail.add_member(:prepare_status, Shapes::ShapeRef.new(shape: PhaseStatus, location_name: "PrepareStatus"))
506
+ TaskExecutionResultDetail.add_member(:total_duration, Shapes::ShapeRef.new(shape: Duration, location_name: "TotalDuration"))
469
507
  TaskExecutionResultDetail.add_member(:transfer_duration, Shapes::ShapeRef.new(shape: Duration, location_name: "TransferDuration"))
470
508
  TaskExecutionResultDetail.add_member(:transfer_status, Shapes::ShapeRef.new(shape: PhaseStatus, location_name: "TransferStatus"))
471
509
  TaskExecutionResultDetail.add_member(:verify_duration, Shapes::ShapeRef.new(shape: Duration, location_name: "VerifyDuration"))
@@ -481,6 +519,9 @@ module Aws::DataSync
481
519
  TaskListEntry.add_member(:name, Shapes::ShapeRef.new(shape: TagValue, location_name: "Name"))
482
520
  TaskListEntry.struct_class = Types::TaskListEntry
483
521
 
522
+ TaskSchedule.add_member(:schedule_expression, Shapes::ShapeRef.new(shape: ScheduleExpressionCron, required: true, location_name: "ScheduleExpression"))
523
+ TaskSchedule.struct_class = Types::TaskSchedule
524
+
484
525
  UntagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: TaggableResourceArn, required: true, location_name: "ResourceArn"))
485
526
  UntagResourceRequest.add_member(:keys, Shapes::ShapeRef.new(shape: TagKeyList, required: true, location_name: "Keys"))
486
527
  UntagResourceRequest.struct_class = Types::UntagResourceRequest
@@ -496,6 +537,7 @@ module Aws::DataSync
496
537
  UpdateTaskRequest.add_member(:task_arn, Shapes::ShapeRef.new(shape: TaskArn, required: true, location_name: "TaskArn"))
497
538
  UpdateTaskRequest.add_member(:options, Shapes::ShapeRef.new(shape: Options, location_name: "Options"))
498
539
  UpdateTaskRequest.add_member(:excludes, Shapes::ShapeRef.new(shape: FilterList, location_name: "Excludes"))
540
+ UpdateTaskRequest.add_member(:schedule, Shapes::ShapeRef.new(shape: TaskSchedule, location_name: "Schedule"))
499
541
  UpdateTaskRequest.add_member(:name, Shapes::ShapeRef.new(shape: TagValue, location_name: "Name"))
500
542
  UpdateTaskRequest.add_member(:cloud_watch_log_group_arn, Shapes::ShapeRef.new(shape: LogGroupArn, location_name: "CloudWatchLogGroupArn"))
501
543
  UpdateTaskRequest.struct_class = Types::UpdateTaskRequest
@@ -552,6 +594,16 @@ module Aws::DataSync
552
594
  o.errors << Shapes::ShapeRef.new(shape: InternalException)
553
595
  end)
554
596
 
597
+ api.add_operation(:create_location_fsx_windows, Seahorse::Model::Operation.new.tap do |o|
598
+ o.name = "CreateLocationFsxWindows"
599
+ o.http_method = "POST"
600
+ o.http_request_uri = "/"
601
+ o.input = Shapes::ShapeRef.new(shape: CreateLocationFsxWindowsRequest)
602
+ o.output = Shapes::ShapeRef.new(shape: CreateLocationFsxWindowsResponse)
603
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
604
+ o.errors << Shapes::ShapeRef.new(shape: InternalException)
605
+ end)
606
+
555
607
  api.add_operation(:create_location_nfs, Seahorse::Model::Operation.new.tap do |o|
556
608
  o.name = "CreateLocationNfs"
557
609
  o.http_method = "POST"
@@ -642,6 +694,16 @@ module Aws::DataSync
642
694
  o.errors << Shapes::ShapeRef.new(shape: InternalException)
643
695
  end)
644
696
 
697
+ api.add_operation(:describe_location_fsx_windows, Seahorse::Model::Operation.new.tap do |o|
698
+ o.name = "DescribeLocationFsxWindows"
699
+ o.http_method = "POST"
700
+ o.http_request_uri = "/"
701
+ o.input = Shapes::ShapeRef.new(shape: DescribeLocationFsxWindowsRequest)
702
+ o.output = Shapes::ShapeRef.new(shape: DescribeLocationFsxWindowsResponse)
703
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
704
+ o.errors << Shapes::ShapeRef.new(shape: InternalException)
705
+ end)
706
+
645
707
  api.add_operation(:describe_location_nfs, Seahorse::Model::Operation.new.tap do |o|
646
708
  o.name = "DescribeLocationNfs"
647
709
  o.http_method = "POST"
@@ -6,6 +6,30 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::DataSync
9
+
10
+ # When DataSync returns an error response, the Ruby SDK constructs and raises an error.
11
+ # These errors all extend Aws::DataSync::Errors::ServiceError < {Aws::Errors::ServiceError}
12
+ #
13
+ # You can rescue all DataSync errors using ServiceError:
14
+ #
15
+ # begin
16
+ # # do stuff
17
+ # rescue Aws::DataSync::Errors::ServiceError
18
+ # # rescues all DataSync API errors
19
+ # end
20
+ #
21
+ #
22
+ # ## Request Context
23
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
24
+ # information about the request that generated the error.
25
+ # See {Seahorse::Client::RequestContext} for more information.
26
+ #
27
+ # ## Error Classes
28
+ # * {InternalException}
29
+ # * {InvalidRequestException}
30
+ #
31
+ # Additionally, error classes are dynamically generated for service errors based on the error code
32
+ # if they are not defined above.
9
33
  module Errors
10
34
 
11
35
  extend Aws::Errors::DynamicErrors
@@ -28,7 +52,6 @@ module Aws::DataSync
28
52
  def error_code
29
53
  @data[:error_code]
30
54
  end
31
-
32
55
  end
33
56
 
34
57
  class InvalidRequestException < ServiceError
@@ -49,7 +72,6 @@ module Aws::DataSync
49
72
  def error_code
50
73
  @data[:error_code]
51
74
  end
52
-
53
75
  end
54
76
 
55
77
  end
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::DataSync
9
+
9
10
  class Resource
10
11
 
11
12
  # @param options ({})
@@ -173,7 +173,7 @@ module Aws::DataSync
173
173
  # data as a hash:
174
174
  #
175
175
  # {
176
- # subdirectory: "Subdirectory",
176
+ # subdirectory: "EfsSubdirectory",
177
177
  # efs_filesystem_arn: "EfsFilesystemArn", # required
178
178
  # ec2_config: { # required
179
179
  # subnet_arn: "Ec2SubnetArn", # required
@@ -192,6 +192,11 @@ module Aws::DataSync
192
192
  # file system is used to read data from the EFS source location or
193
193
  # write data to the EFS destination. By default, AWS DataSync uses the
194
194
  # root directory.
195
+ #
196
+ # <note markdown="1"> `Subdirectory` must be specified with forward slashes. For example
197
+ # `/path/to/folder`.
198
+ #
199
+ # </note>
195
200
  # @return [String]
196
201
  #
197
202
  # @!attribute [rw] efs_filesystem_arn
@@ -254,13 +259,94 @@ module Aws::DataSync
254
259
  include Aws::Structure
255
260
  end
256
261
 
262
+ # @note When making an API call, you may pass CreateLocationFsxWindowsRequest
263
+ # data as a hash:
264
+ #
265
+ # {
266
+ # subdirectory: "FsxWindowsSubdirectory",
267
+ # fsx_filesystem_arn: "FsxFilesystemArn", # required
268
+ # security_group_arns: ["Ec2SecurityGroupArn"], # required
269
+ # tags: [
270
+ # {
271
+ # key: "TagKey", # required
272
+ # value: "TagValue",
273
+ # },
274
+ # ],
275
+ # user: "SmbUser", # required
276
+ # domain: "SmbDomain",
277
+ # password: "SmbPassword", # required
278
+ # }
279
+ #
280
+ # @!attribute [rw] subdirectory
281
+ # A subdirectory in the location’s path. This subdirectory in the
282
+ # Amazon FSx for Windows file system is used to read data from the
283
+ # Amazon FSx for Windows source location or write data to the FSx for
284
+ # Windows destination.
285
+ # @return [String]
286
+ #
287
+ # @!attribute [rw] fsx_filesystem_arn
288
+ # The Amazon Resource Name (ARN) for the FSx for Windows file system.
289
+ # @return [String]
290
+ #
291
+ # @!attribute [rw] security_group_arns
292
+ # The Amazon Resource Names (ARNs) of the security groups that are to
293
+ # use to configure the FSx for Windows file system.
294
+ # @return [Array<String>]
295
+ #
296
+ # @!attribute [rw] tags
297
+ # The key-value pair that represents a tag that you want to add to the
298
+ # resource. The value can be an empty string. This value helps you
299
+ # manage, filter, and search for your resources. We recommend that you
300
+ # create a name tag for your location.
301
+ # @return [Array<Types::TagListEntry>]
302
+ #
303
+ # @!attribute [rw] user
304
+ # The user who has the permissions to access files and folders in the
305
+ # FSx for Windows file system.
306
+ # @return [String]
307
+ #
308
+ # @!attribute [rw] domain
309
+ # The name of the Windows domain that the FSx for Windows server
310
+ # belongs to.
311
+ # @return [String]
312
+ #
313
+ # @!attribute [rw] password
314
+ # The password of the user who has the permissions to access files and
315
+ # folders in the FSx for Windows file system.
316
+ # @return [String]
317
+ #
318
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationFsxWindowsRequest AWS API Documentation
319
+ #
320
+ class CreateLocationFsxWindowsRequest < Struct.new(
321
+ :subdirectory,
322
+ :fsx_filesystem_arn,
323
+ :security_group_arns,
324
+ :tags,
325
+ :user,
326
+ :domain,
327
+ :password)
328
+ include Aws::Structure
329
+ end
330
+
331
+ # @!attribute [rw] location_arn
332
+ # The Amazon Resource Name (ARN) of the FSx for Windows file system
333
+ # location that is created.
334
+ # @return [String]
335
+ #
336
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationFsxWindowsResponse AWS API Documentation
337
+ #
338
+ class CreateLocationFsxWindowsResponse < Struct.new(
339
+ :location_arn)
340
+ include Aws::Structure
341
+ end
342
+
257
343
  # CreateLocationNfsRequest
258
344
  #
259
345
  # @note When making an API call, you may pass CreateLocationNfsRequest
260
346
  # data as a hash:
261
347
  #
262
348
  # {
263
- # subdirectory: "NonEmptySubdirectory", # required
349
+ # subdirectory: "NfsSubdirectory", # required
264
350
  # server_hostname: "ServerHostname", # required
265
351
  # on_prem_config: { # required
266
352
  # agent_arns: ["AgentArn"], # required
@@ -360,7 +446,7 @@ module Aws::DataSync
360
446
  # data as a hash:
361
447
  #
362
448
  # {
363
- # subdirectory: "Subdirectory",
449
+ # subdirectory: "S3Subdirectory",
364
450
  # s3_bucket_arn: "S3BucketArn", # required
365
451
  # s3_storage_class: "STANDARD", # accepts STANDARD, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
366
452
  # s3_config: { # required
@@ -442,7 +528,7 @@ module Aws::DataSync
442
528
  # data as a hash:
443
529
  #
444
530
  # {
445
- # subdirectory: "NonEmptySubdirectory", # required
531
+ # subdirectory: "SmbSubdirectory", # required
446
532
  # server_hostname: "ServerHostname", # required
447
533
  # user: "SmbUser", # required
448
534
  # domain: "SmbDomain",
@@ -466,6 +552,11 @@ module Aws::DataSync
466
552
  # a subdirectory of that path. The path should be such that it can be
467
553
  # mounted by other SMB clients in your network.
468
554
  #
555
+ # <note markdown="1"> `Subdirectory` must be specified with forward slashes. For example
556
+ # `/path/to/folder`.
557
+ #
558
+ # </note>
559
+ #
469
560
  # To transfer all the data in the folder you specified, DataSync needs
470
561
  # to have permissions to mount the SMB share, as well as to access all
471
562
  # the data in that share. To ensure this, either ensure that the
@@ -565,9 +656,10 @@ module Aws::DataSync
565
656
  # gid: "NONE", # accepts NONE, INT_VALUE, NAME, BOTH
566
657
  # preserve_deleted_files: "PRESERVE", # accepts PRESERVE, REMOVE
567
658
  # preserve_devices: "NONE", # accepts NONE, PRESERVE
568
- # posix_permissions: "NONE", # accepts NONE, BEST_EFFORT, PRESERVE
659
+ # posix_permissions: "NONE", # accepts NONE, PRESERVE
569
660
  # bytes_per_second: 1,
570
661
  # task_queueing: "ENABLED", # accepts ENABLED, DISABLED
662
+ # log_level: "OFF", # accepts OFF, BASIC, TRANSFER
571
663
  # },
572
664
  # excludes: [
573
665
  # {
@@ -575,6 +667,9 @@ module Aws::DataSync
575
667
  # value: "FilterValue",
576
668
  # },
577
669
  # ],
670
+ # schedule: {
671
+ # schedule_expression: "ScheduleExpressionCron", # required
672
+ # },
578
673
  # tags: [
579
674
  # {
580
675
  # key: "TagKey", # required
@@ -627,6 +722,12 @@ module Aws::DataSync
627
722
  # (that is, a pipe), for example, `"/folder1|/folder2"`
628
723
  # @return [Array<Types::FilterRule>]
629
724
  #
725
+ # @!attribute [rw] schedule
726
+ # Specifies a schedule used to periodically transfer files from a
727
+ # source to a destination location. The schedule should be specified
728
+ # in UTC time. For more information, see task-scheduling.
729
+ # @return [Types::TaskSchedule]
730
+ #
630
731
  # @!attribute [rw] tags
631
732
  # The key-value pair that represents the tag that you want to add to
632
733
  # the resource. The value can be an empty string.
@@ -641,6 +742,7 @@ module Aws::DataSync
641
742
  :name,
642
743
  :options,
643
744
  :excludes,
745
+ :schedule,
644
746
  :tags)
645
747
  include Aws::Structure
646
748
  end
@@ -857,6 +959,65 @@ module Aws::DataSync
857
959
  include Aws::Structure
858
960
  end
859
961
 
962
+ # @note When making an API call, you may pass DescribeLocationFsxWindowsRequest
963
+ # data as a hash:
964
+ #
965
+ # {
966
+ # location_arn: "LocationArn", # required
967
+ # }
968
+ #
969
+ # @!attribute [rw] location_arn
970
+ # The Amazon Resource Name (ARN) of the FSx for Windows location to
971
+ # describe.
972
+ # @return [String]
973
+ #
974
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeLocationFsxWindowsRequest AWS API Documentation
975
+ #
976
+ class DescribeLocationFsxWindowsRequest < Struct.new(
977
+ :location_arn)
978
+ include Aws::Structure
979
+ end
980
+
981
+ # @!attribute [rw] location_arn
982
+ # The Amazon resource Name (ARN) of the FSx for Windows location that
983
+ # was described.
984
+ # @return [String]
985
+ #
986
+ # @!attribute [rw] location_uri
987
+ # The URL of the FSx for Windows location that was described.
988
+ # @return [String]
989
+ #
990
+ # @!attribute [rw] security_group_arns
991
+ # The Amazon Resource Names (ARNs) of the security groups that are
992
+ # configured for the for the FSx for Windows file system.
993
+ # @return [Array<String>]
994
+ #
995
+ # @!attribute [rw] creation_time
996
+ # The time that the FSx for Windows location was created.
997
+ # @return [Time]
998
+ #
999
+ # @!attribute [rw] user
1000
+ # The user who has the permissions to access files and folders in the
1001
+ # FSx for Windows file system.
1002
+ # @return [String]
1003
+ #
1004
+ # @!attribute [rw] domain
1005
+ # The name of the Windows domain that the FSx for Windows server
1006
+ # belongs to.
1007
+ # @return [String]
1008
+ #
1009
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeLocationFsxWindowsResponse AWS API Documentation
1010
+ #
1011
+ class DescribeLocationFsxWindowsResponse < Struct.new(
1012
+ :location_arn,
1013
+ :location_uri,
1014
+ :security_group_arns,
1015
+ :creation_time,
1016
+ :user,
1017
+ :domain)
1018
+ include Aws::Structure
1019
+ end
1020
+
860
1021
  # DescribeLocationNfsRequest
861
1022
  #
862
1023
  # @note When making an API call, you may pass DescribeLocationNfsRequest
@@ -1264,6 +1425,11 @@ module Aws::DataSync
1264
1425
  # (that is, a pipe), for example: `"/folder1|/folder2"`
1265
1426
  # @return [Array<Types::FilterRule>]
1266
1427
  #
1428
+ # @!attribute [rw] schedule
1429
+ # The schedule used to periodically transfer files from a source to a
1430
+ # destination location.
1431
+ # @return [Types::TaskSchedule]
1432
+ #
1267
1433
  # @!attribute [rw] error_code
1268
1434
  # Errors that AWS DataSync encountered during execution of the task.
1269
1435
  # You can use this error code to help troubleshoot issues.
@@ -1293,6 +1459,7 @@ module Aws::DataSync
1293
1459
  :destination_network_interface_arns,
1294
1460
  :options,
1295
1461
  :excludes,
1462
+ :schedule,
1296
1463
  :error_code,
1297
1464
  :error_detail,
1298
1465
  :creation_time)
@@ -1762,9 +1929,10 @@ module Aws::DataSync
1762
1929
  # gid: "NONE", # accepts NONE, INT_VALUE, NAME, BOTH
1763
1930
  # preserve_deleted_files: "PRESERVE", # accepts PRESERVE, REMOVE
1764
1931
  # preserve_devices: "NONE", # accepts NONE, PRESERVE
1765
- # posix_permissions: "NONE", # accepts NONE, BEST_EFFORT, PRESERVE
1932
+ # posix_permissions: "NONE", # accepts NONE, PRESERVE
1766
1933
  # bytes_per_second: 1,
1767
1934
  # task_queueing: "ENABLED", # accepts ENABLED, DISABLED
1935
+ # log_level: "OFF", # accepts OFF, BASIC, TRANSFER
1768
1936
  # }
1769
1937
  #
1770
1938
  # @!attribute [rw] verify_mode
@@ -1918,11 +2086,20 @@ module Aws::DataSync
1918
2086
  #
1919
2087
  # @!attribute [rw] task_queueing
1920
2088
  # A value that determines whether tasks should be queued before
1921
- # executing the tasks. If set to `Enabled`, the tasks will queued. The
1922
- # default is `Enabled`.
2089
+ # executing the tasks. If set to `ENABLED`, the tasks will be queued.
2090
+ # The default is `ENABLED`.
1923
2091
  #
1924
2092
  # If you use the same agent to run multiple tasks you can enable the
1925
- # tasks to run in series. For more information see task-queue.
2093
+ # tasks to run in series. For more information see
2094
+ # queue-task-execution.
2095
+ # @return [String]
2096
+ #
2097
+ # @!attribute [rw] log_level
2098
+ # A value that determines the type of logs DataSync will deliver to
2099
+ # your AWS CloudWatch Logs file. If set to `OFF`, no logs will be
2100
+ # delivered. `BASIC` will deliver a few logs per transfer operation
2101
+ # and `TRANSFER` will deliver a verbose log that contains logs for
2102
+ # every file that is transferred.
1926
2103
  # @return [String]
1927
2104
  #
1928
2105
  # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/Options AWS API Documentation
@@ -1938,7 +2115,8 @@ module Aws::DataSync
1938
2115
  :preserve_devices,
1939
2116
  :posix_permissions,
1940
2117
  :bytes_per_second,
1941
- :task_queueing)
2118
+ :task_queueing,
2119
+ :log_level)
1942
2120
  include Aws::Structure
1943
2121
  end
1944
2122
 
@@ -2048,9 +2226,10 @@ module Aws::DataSync
2048
2226
  # gid: "NONE", # accepts NONE, INT_VALUE, NAME, BOTH
2049
2227
  # preserve_deleted_files: "PRESERVE", # accepts PRESERVE, REMOVE
2050
2228
  # preserve_devices: "NONE", # accepts NONE, PRESERVE
2051
- # posix_permissions: "NONE", # accepts NONE, BEST_EFFORT, PRESERVE
2229
+ # posix_permissions: "NONE", # accepts NONE, PRESERVE
2052
2230
  # bytes_per_second: 1,
2053
2231
  # task_queueing: "ENABLED", # accepts ENABLED, DISABLED
2232
+ # log_level: "OFF", # accepts OFF, BASIC, TRANSFER
2054
2233
  # },
2055
2234
  # includes: [
2056
2235
  # {
@@ -2204,6 +2383,11 @@ module Aws::DataSync
2204
2383
  # The status of the PREPARING phase.
2205
2384
  # @return [String]
2206
2385
  #
2386
+ # @!attribute [rw] total_duration
2387
+ # The total time in milliseconds that AWS DataSync took to transfer
2388
+ # the file from the source to the destination location.
2389
+ # @return [Integer]
2390
+ #
2207
2391
  # @!attribute [rw] transfer_duration
2208
2392
  # The total time in milliseconds that AWS DataSync spent in the
2209
2393
  # TRANSFERRING phase.
@@ -2238,6 +2422,7 @@ module Aws::DataSync
2238
2422
  class TaskExecutionResultDetail < Struct.new(
2239
2423
  :prepare_duration,
2240
2424
  :prepare_status,
2425
+ :total_duration,
2241
2426
  :transfer_duration,
2242
2427
  :transfer_status,
2243
2428
  :verify_duration,
@@ -2273,6 +2458,33 @@ module Aws::DataSync
2273
2458
  include Aws::Structure
2274
2459
  end
2275
2460
 
2461
+ # Specifies the schedule you want your task to use for repeated
2462
+ # executions. For more information, see [Schedule Expressions for
2463
+ # Rules][1].
2464
+ #
2465
+ #
2466
+ #
2467
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ScheduledEvents.html
2468
+ #
2469
+ # @note When making an API call, you may pass TaskSchedule
2470
+ # data as a hash:
2471
+ #
2472
+ # {
2473
+ # schedule_expression: "ScheduleExpressionCron", # required
2474
+ # }
2475
+ #
2476
+ # @!attribute [rw] schedule_expression
2477
+ # A cron expression that specifies when AWS DataSync initiates a
2478
+ # scheduled transfer from a source to a destination location.
2479
+ # @return [String]
2480
+ #
2481
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/TaskSchedule AWS API Documentation
2482
+ #
2483
+ class TaskSchedule < Struct.new(
2484
+ :schedule_expression)
2485
+ include Aws::Structure
2486
+ end
2487
+
2276
2488
  # UntagResourceRequest
2277
2489
  #
2278
2490
  # @note When making an API call, you may pass UntagResourceRequest
@@ -2350,9 +2562,10 @@ module Aws::DataSync
2350
2562
  # gid: "NONE", # accepts NONE, INT_VALUE, NAME, BOTH
2351
2563
  # preserve_deleted_files: "PRESERVE", # accepts PRESERVE, REMOVE
2352
2564
  # preserve_devices: "NONE", # accepts NONE, PRESERVE
2353
- # posix_permissions: "NONE", # accepts NONE, BEST_EFFORT, PRESERVE
2565
+ # posix_permissions: "NONE", # accepts NONE, PRESERVE
2354
2566
  # bytes_per_second: 1,
2355
2567
  # task_queueing: "ENABLED", # accepts ENABLED, DISABLED
2568
+ # log_level: "OFF", # accepts OFF, BASIC, TRANSFER
2356
2569
  # },
2357
2570
  # excludes: [
2358
2571
  # {
@@ -2360,6 +2573,9 @@ module Aws::DataSync
2360
2573
  # value: "FilterValue",
2361
2574
  # },
2362
2575
  # ],
2576
+ # schedule: {
2577
+ # schedule_expression: "ScheduleExpressionCron", # required
2578
+ # },
2363
2579
  # name: "TagValue",
2364
2580
  # cloud_watch_log_group_arn: "LogGroupArn",
2365
2581
  # }
@@ -2389,6 +2605,15 @@ module Aws::DataSync
2389
2605
  # (that is, a pipe), for example: `"/folder1|/folder2"`
2390
2606
  # @return [Array<Types::FilterRule>]
2391
2607
  #
2608
+ # @!attribute [rw] schedule
2609
+ # Specifies a schedule used to periodically transfer files from a
2610
+ # source to a destination location. You can configure your task to
2611
+ # execute hourly, daily, weekly or on specific days of the week. You
2612
+ # control when in the day or hour you want the task to execute. The
2613
+ # time you specify is UTC time. For more information, see
2614
+ # task-scheduling.
2615
+ # @return [Types::TaskSchedule]
2616
+ #
2392
2617
  # @!attribute [rw] name
2393
2618
  # The name of the task to update.
2394
2619
  # @return [String]
@@ -2404,6 +2629,7 @@ module Aws::DataSync
2404
2629
  :task_arn,
2405
2630
  :options,
2406
2631
  :excludes,
2632
+ :schedule,
2407
2633
  :name,
2408
2634
  :cloud_watch_log_group_arn)
2409
2635
  include Aws::Structure
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-datasync
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.15.0
4
+ version: 1.20.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: 2019-10-23 00:00:00.000000000 Z
11
+ date: 2020-05-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -81,7 +81,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
81
81
  version: '0'
82
82
  requirements: []
83
83
  rubyforge_project:
84
- rubygems_version: 2.5.2.3
84
+ rubygems_version: 2.7.6.2
85
85
  signing_key:
86
86
  specification_version: 4
87
87
  summary: AWS SDK for Ruby - DataSync