aws-sdk-elasticsearchservice 1.60.0 → 1.64.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 36868bb4041429fc5188b87d3e1c7fcf51a055e6824c21f8ae2e4f3e6c3e0799
4
- data.tar.gz: b8234e6abc1bf6b11732df0459e8d6606d93637297669918de915b206ac0c4ae
3
+ metadata.gz: b61d5cda9ccf2153f35961cf9d0a798c73bd0a18bc47a18ca328c9d78b50ee28
4
+ data.tar.gz: d44aeca05368f9cf661641b91f22e5b5b42e78a51129c4c8349355e10245ece6
5
5
  SHA512:
6
- metadata.gz: b10c163476637e0e651a0cb1b86a7b340c91c7e24686dc02b0c2bd10cffb91b3ea453d3abd7354f03f6898ea72156cf85c110bea90912247736ec1129c24e4d2
7
- data.tar.gz: 512bd573beebb92bffb4640b5fc0d3164565b2e3f1d9d4f79f41530626396ae3143a138dcea43713780d6944eb79ffd4f47a015d50783acc9cfd5f6f8285f335
6
+ metadata.gz: 66b3a41911537bd761601536ea3de39cd3c2fd93b700699f6dce9760d82a9a11876bb7fec068b88493e6e8ab37b1a8015197e4764f00c8beaa879f8b2c091043
7
+ data.tar.gz: ea813c3758523111bbfc6f44d2385e3f26b387c1e1aa9ab9b826a153c11d4ba2fd8ded4bfe1b24de50e87f0ac9baa107a65289a33d2673732869276ee0c87328
data/CHANGELOG.md CHANGED
@@ -1,6 +1,26 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.64.0 (2022-02-03)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.63.0 (2022-02-02)
10
+ ------------------
11
+
12
+ * Feature - Allows customers to get progress updates for blue/green deployments
13
+
14
+ 1.62.0 (2022-01-06)
15
+ ------------------
16
+
17
+ * Feature - Amazon OpenSearch Service adds support for Fine Grained Access Control for existing domains running Elasticsearch version 6.7 and above
18
+
19
+ 1.61.0 (2021-12-21)
20
+ ------------------
21
+
22
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
23
+
4
24
  1.60.0 (2021-11-30)
5
25
  ------------------
6
26
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.60.0
1
+ 1.64.0
@@ -27,6 +27,8 @@ 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/defaults_mode.rb'
31
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
30
32
  require 'aws-sdk-core/plugins/signature_v4.rb'
31
33
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
32
34
 
@@ -73,6 +75,8 @@ module Aws::ElasticsearchService
73
75
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
74
76
  add_plugin(Aws::Plugins::TransferEncoding)
75
77
  add_plugin(Aws::Plugins::HttpChecksum)
78
+ add_plugin(Aws::Plugins::DefaultsMode)
79
+ add_plugin(Aws::Plugins::RecursionDetection)
76
80
  add_plugin(Aws::Plugins::SignatureV4)
77
81
  add_plugin(Aws::Plugins::Protocols::RestJson)
78
82
 
@@ -175,6 +179,10 @@ module Aws::ElasticsearchService
175
179
  # Used only in `standard` and adaptive retry modes. Specifies whether to apply
176
180
  # a clock skew correction and retry requests with skewed client clocks.
177
181
  #
182
+ # @option options [String] :defaults_mode ("legacy")
183
+ # See {Aws::DefaultsModeConfiguration} for a list of the
184
+ # accepted modes and the configuration defaults that are included.
185
+ #
178
186
  # @option options [Boolean] :disable_host_prefix_injection (false)
179
187
  # Set to true to disable SDK automatically adding host prefix
180
188
  # to default service endpoint when available.
@@ -297,7 +305,7 @@ module Aws::ElasticsearchService
297
305
  # seconds to wait when opening a HTTP session before raising a
298
306
  # `Timeout::Error`.
299
307
  #
300
- # @option options [Integer] :http_read_timeout (60) The default
308
+ # @option options [Float] :http_read_timeout (60) The default
301
309
  # number of seconds to wait for response data. This value can
302
310
  # safely be set per-request on the session.
303
311
  #
@@ -313,6 +321,9 @@ module Aws::ElasticsearchService
313
321
  # disables this behaviour. This value can safely be set per
314
322
  # request on the session.
315
323
  #
324
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
325
+ # in seconds.
326
+ #
316
327
  # @option options [Boolean] :http_wire_trace (false) When `true`,
317
328
  # HTTP debug output will be sent to the `:logger`.
318
329
  #
@@ -665,6 +676,7 @@ module Aws::ElasticsearchService
665
676
  # roles_key: "String",
666
677
  # session_timeout_minutes: 1,
667
678
  # },
679
+ # anonymous_auth_enabled: false,
668
680
  # },
669
681
  # auto_tune_options: {
670
682
  # desired_state: "ENABLED", # accepts ENABLED, DISABLED
@@ -757,8 +769,12 @@ module Aws::ElasticsearchService
757
769
  # resp.domain_status.advanced_security_options.saml_options.subject_key #=> String
758
770
  # resp.domain_status.advanced_security_options.saml_options.roles_key #=> String
759
771
  # resp.domain_status.advanced_security_options.saml_options.session_timeout_minutes #=> Integer
772
+ # resp.domain_status.advanced_security_options.anonymous_auth_disable_date #=> Time
773
+ # resp.domain_status.advanced_security_options.anonymous_auth_enabled #=> Boolean
760
774
  # resp.domain_status.auto_tune_options.state #=> String, one of "ENABLED", "DISABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "DISABLED_AND_ROLLBACK_SCHEDULED", "DISABLED_AND_ROLLBACK_IN_PROGRESS", "DISABLED_AND_ROLLBACK_COMPLETE", "DISABLED_AND_ROLLBACK_ERROR", "ERROR"
761
775
  # resp.domain_status.auto_tune_options.error_message #=> String
776
+ # resp.domain_status.change_progress_details.change_id #=> String
777
+ # resp.domain_status.change_progress_details.message #=> String
762
778
  #
763
779
  # @overload create_elasticsearch_domain(params = {})
764
780
  # @param [Hash] params ({})
@@ -962,8 +978,12 @@ module Aws::ElasticsearchService
962
978
  # resp.domain_status.advanced_security_options.saml_options.subject_key #=> String
963
979
  # resp.domain_status.advanced_security_options.saml_options.roles_key #=> String
964
980
  # resp.domain_status.advanced_security_options.saml_options.session_timeout_minutes #=> Integer
981
+ # resp.domain_status.advanced_security_options.anonymous_auth_disable_date #=> Time
982
+ # resp.domain_status.advanced_security_options.anonymous_auth_enabled #=> Boolean
965
983
  # resp.domain_status.auto_tune_options.state #=> String, one of "ENABLED", "DISABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "DISABLED_AND_ROLLBACK_SCHEDULED", "DISABLED_AND_ROLLBACK_IN_PROGRESS", "DISABLED_AND_ROLLBACK_COMPLETE", "DISABLED_AND_ROLLBACK_ERROR", "ERROR"
966
984
  # resp.domain_status.auto_tune_options.error_message #=> String
985
+ # resp.domain_status.change_progress_details.change_id #=> String
986
+ # resp.domain_status.change_progress_details.message #=> String
967
987
  #
968
988
  # @overload delete_elasticsearch_domain(params = {})
969
989
  # @param [Hash] params ({})
@@ -1146,6 +1166,51 @@ module Aws::ElasticsearchService
1146
1166
  req.send_request(options)
1147
1167
  end
1148
1168
 
1169
+ # Returns information about the current blue/green deployment happening
1170
+ # on a domain, including a change ID, status, and progress stages.
1171
+ #
1172
+ # @option params [required, String] :domain_name
1173
+ # The domain you want to get the progress information about.
1174
+ #
1175
+ # @option params [String] :change_id
1176
+ # The specific change ID for which you want to get progress information.
1177
+ # This is an optional parameter. If omitted, the service returns
1178
+ # information about the most recent configuration change.
1179
+ #
1180
+ # @return [Types::DescribeDomainChangeProgressResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1181
+ #
1182
+ # * {Types::DescribeDomainChangeProgressResponse#change_progress_status #change_progress_status} => Types::ChangeProgressStatusDetails
1183
+ #
1184
+ # @example Request syntax with placeholder values
1185
+ #
1186
+ # resp = client.describe_domain_change_progress({
1187
+ # domain_name: "DomainName", # required
1188
+ # change_id: "GUID",
1189
+ # })
1190
+ #
1191
+ # @example Response structure
1192
+ #
1193
+ # resp.change_progress_status.change_id #=> String
1194
+ # resp.change_progress_status.start_time #=> Time
1195
+ # resp.change_progress_status.status #=> String, one of "PENDING", "PROCESSING", "COMPLETED", "FAILED"
1196
+ # resp.change_progress_status.pending_properties #=> Array
1197
+ # resp.change_progress_status.pending_properties[0] #=> String
1198
+ # resp.change_progress_status.completed_properties #=> Array
1199
+ # resp.change_progress_status.completed_properties[0] #=> String
1200
+ # resp.change_progress_status.total_number_of_stages #=> Integer
1201
+ # resp.change_progress_status.change_progress_stages #=> Array
1202
+ # resp.change_progress_status.change_progress_stages[0].name #=> String
1203
+ # resp.change_progress_status.change_progress_stages[0].status #=> String
1204
+ # resp.change_progress_status.change_progress_stages[0].description #=> String
1205
+ # resp.change_progress_status.change_progress_stages[0].last_updated #=> Time
1206
+ #
1207
+ # @overload describe_domain_change_progress(params = {})
1208
+ # @param [Hash] params ({})
1209
+ def describe_domain_change_progress(params = {}, options = {})
1210
+ req = build_request(:describe_domain_change_progress, params)
1211
+ req.send_request(options)
1212
+ end
1213
+
1149
1214
  # Returns domain configuration information about the specified
1150
1215
  # Elasticsearch domain, including the domain ID, domain endpoint, and
1151
1216
  # domain ARN.
@@ -1233,8 +1298,12 @@ module Aws::ElasticsearchService
1233
1298
  # resp.domain_status.advanced_security_options.saml_options.subject_key #=> String
1234
1299
  # resp.domain_status.advanced_security_options.saml_options.roles_key #=> String
1235
1300
  # resp.domain_status.advanced_security_options.saml_options.session_timeout_minutes #=> Integer
1301
+ # resp.domain_status.advanced_security_options.anonymous_auth_disable_date #=> Time
1302
+ # resp.domain_status.advanced_security_options.anonymous_auth_enabled #=> Boolean
1236
1303
  # resp.domain_status.auto_tune_options.state #=> String, one of "ENABLED", "DISABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "DISABLED_AND_ROLLBACK_SCHEDULED", "DISABLED_AND_ROLLBACK_IN_PROGRESS", "DISABLED_AND_ROLLBACK_COMPLETE", "DISABLED_AND_ROLLBACK_ERROR", "ERROR"
1237
1304
  # resp.domain_status.auto_tune_options.error_message #=> String
1305
+ # resp.domain_status.change_progress_details.change_id #=> String
1306
+ # resp.domain_status.change_progress_details.message #=> String
1238
1307
  #
1239
1308
  # @overload describe_elasticsearch_domain(params = {})
1240
1309
  # @param [Hash] params ({})
@@ -1372,6 +1441,8 @@ module Aws::ElasticsearchService
1372
1441
  # resp.domain_config.advanced_security_options.options.saml_options.subject_key #=> String
1373
1442
  # resp.domain_config.advanced_security_options.options.saml_options.roles_key #=> String
1374
1443
  # resp.domain_config.advanced_security_options.options.saml_options.session_timeout_minutes #=> Integer
1444
+ # resp.domain_config.advanced_security_options.options.anonymous_auth_disable_date #=> Time
1445
+ # resp.domain_config.advanced_security_options.options.anonymous_auth_enabled #=> Boolean
1375
1446
  # resp.domain_config.advanced_security_options.status.creation_date #=> Time
1376
1447
  # resp.domain_config.advanced_security_options.status.update_date #=> Time
1377
1448
  # resp.domain_config.advanced_security_options.status.update_version #=> Integer
@@ -1390,6 +1461,8 @@ module Aws::ElasticsearchService
1390
1461
  # resp.domain_config.auto_tune_options.status.state #=> String, one of "ENABLED", "DISABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "DISABLED_AND_ROLLBACK_SCHEDULED", "DISABLED_AND_ROLLBACK_IN_PROGRESS", "DISABLED_AND_ROLLBACK_COMPLETE", "DISABLED_AND_ROLLBACK_ERROR", "ERROR"
1391
1462
  # resp.domain_config.auto_tune_options.status.error_message #=> String
1392
1463
  # resp.domain_config.auto_tune_options.status.pending_deletion #=> Boolean
1464
+ # resp.domain_config.change_progress_details.change_id #=> String
1465
+ # resp.domain_config.change_progress_details.message #=> String
1393
1466
  #
1394
1467
  # @overload describe_elasticsearch_domain_config(params = {})
1395
1468
  # @param [Hash] params ({})
@@ -1486,8 +1559,12 @@ module Aws::ElasticsearchService
1486
1559
  # resp.domain_status_list[0].advanced_security_options.saml_options.subject_key #=> String
1487
1560
  # resp.domain_status_list[0].advanced_security_options.saml_options.roles_key #=> String
1488
1561
  # resp.domain_status_list[0].advanced_security_options.saml_options.session_timeout_minutes #=> Integer
1562
+ # resp.domain_status_list[0].advanced_security_options.anonymous_auth_disable_date #=> Time
1563
+ # resp.domain_status_list[0].advanced_security_options.anonymous_auth_enabled #=> Boolean
1489
1564
  # resp.domain_status_list[0].auto_tune_options.state #=> String, one of "ENABLED", "DISABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "DISABLED_AND_ROLLBACK_SCHEDULED", "DISABLED_AND_ROLLBACK_IN_PROGRESS", "DISABLED_AND_ROLLBACK_COMPLETE", "DISABLED_AND_ROLLBACK_ERROR", "ERROR"
1490
1565
  # resp.domain_status_list[0].auto_tune_options.error_message #=> String
1566
+ # resp.domain_status_list[0].change_progress_details.change_id #=> String
1567
+ # resp.domain_status_list[0].change_progress_details.message #=> String
1491
1568
  #
1492
1569
  # @overload describe_elasticsearch_domains(params = {})
1493
1570
  # @param [Hash] params ({})
@@ -2582,6 +2659,7 @@ module Aws::ElasticsearchService
2582
2659
  # roles_key: "String",
2583
2660
  # session_timeout_minutes: 1,
2584
2661
  # },
2662
+ # anonymous_auth_enabled: false,
2585
2663
  # },
2586
2664
  # node_to_node_encryption_options: {
2587
2665
  # enabled: false,
@@ -2719,6 +2797,8 @@ module Aws::ElasticsearchService
2719
2797
  # resp.domain_config.advanced_security_options.options.saml_options.subject_key #=> String
2720
2798
  # resp.domain_config.advanced_security_options.options.saml_options.roles_key #=> String
2721
2799
  # resp.domain_config.advanced_security_options.options.saml_options.session_timeout_minutes #=> Integer
2800
+ # resp.domain_config.advanced_security_options.options.anonymous_auth_disable_date #=> Time
2801
+ # resp.domain_config.advanced_security_options.options.anonymous_auth_enabled #=> Boolean
2722
2802
  # resp.domain_config.advanced_security_options.status.creation_date #=> Time
2723
2803
  # resp.domain_config.advanced_security_options.status.update_date #=> Time
2724
2804
  # resp.domain_config.advanced_security_options.status.update_version #=> Integer
@@ -2737,6 +2817,8 @@ module Aws::ElasticsearchService
2737
2817
  # resp.domain_config.auto_tune_options.status.state #=> String, one of "ENABLED", "DISABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "DISABLED_AND_ROLLBACK_SCHEDULED", "DISABLED_AND_ROLLBACK_IN_PROGRESS", "DISABLED_AND_ROLLBACK_COMPLETE", "DISABLED_AND_ROLLBACK_ERROR", "ERROR"
2738
2818
  # resp.domain_config.auto_tune_options.status.error_message #=> String
2739
2819
  # resp.domain_config.auto_tune_options.status.pending_deletion #=> Boolean
2820
+ # resp.domain_config.change_progress_details.change_id #=> String
2821
+ # resp.domain_config.change_progress_details.message #=> String
2740
2822
  # resp.dry_run_results.deployment_type #=> String
2741
2823
  # resp.dry_run_results.message #=> String
2742
2824
  #
@@ -2821,6 +2903,7 @@ module Aws::ElasticsearchService
2821
2903
  # * {Types::UpgradeElasticsearchDomainResponse#domain_name #domain_name} => String
2822
2904
  # * {Types::UpgradeElasticsearchDomainResponse#target_version #target_version} => String
2823
2905
  # * {Types::UpgradeElasticsearchDomainResponse#perform_check_only #perform_check_only} => Boolean
2906
+ # * {Types::UpgradeElasticsearchDomainResponse#change_progress_details #change_progress_details} => Types::ChangeProgressDetails
2824
2907
  #
2825
2908
  # @example Request syntax with placeholder values
2826
2909
  #
@@ -2835,6 +2918,8 @@ module Aws::ElasticsearchService
2835
2918
  # resp.domain_name #=> String
2836
2919
  # resp.target_version #=> String
2837
2920
  # resp.perform_check_only #=> Boolean
2921
+ # resp.change_progress_details.change_id #=> String
2922
+ # resp.change_progress_details.message #=> String
2838
2923
  #
2839
2924
  # @overload upgrade_elasticsearch_domain(params = {})
2840
2925
  # @param [Hash] params ({})
@@ -2856,7 +2941,7 @@ module Aws::ElasticsearchService
2856
2941
  params: params,
2857
2942
  config: config)
2858
2943
  context[:gem_name] = 'aws-sdk-elasticsearchservice'
2859
- context[:gem_version] = '1.60.0'
2944
+ context[:gem_version] = '1.64.0'
2860
2945
  Seahorse::Client::Request.new(handlers, context)
2861
2946
  end
2862
2947
 
@@ -47,6 +47,12 @@ module Aws::ElasticsearchService
47
47
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
48
48
  CancelElasticsearchServiceSoftwareUpdateRequest = Shapes::StructureShape.new(name: 'CancelElasticsearchServiceSoftwareUpdateRequest')
49
49
  CancelElasticsearchServiceSoftwareUpdateResponse = Shapes::StructureShape.new(name: 'CancelElasticsearchServiceSoftwareUpdateResponse')
50
+ ChangeProgressDetails = Shapes::StructureShape.new(name: 'ChangeProgressDetails')
51
+ ChangeProgressStage = Shapes::StructureShape.new(name: 'ChangeProgressStage')
52
+ ChangeProgressStageList = Shapes::ListShape.new(name: 'ChangeProgressStageList')
53
+ ChangeProgressStageName = Shapes::StringShape.new(name: 'ChangeProgressStageName')
54
+ ChangeProgressStageStatus = Shapes::StringShape.new(name: 'ChangeProgressStageStatus')
55
+ ChangeProgressStatusDetails = Shapes::StructureShape.new(name: 'ChangeProgressStatusDetails')
50
56
  CloudWatchLogsLogGroupArn = Shapes::StringShape.new(name: 'CloudWatchLogsLogGroupArn')
51
57
  CognitoOptions = Shapes::StructureShape.new(name: 'CognitoOptions')
52
58
  CognitoOptionsStatus = Shapes::StructureShape.new(name: 'CognitoOptionsStatus')
@@ -78,6 +84,8 @@ module Aws::ElasticsearchService
78
84
  DeploymentType = Shapes::StringShape.new(name: 'DeploymentType')
79
85
  DescribeDomainAutoTunesRequest = Shapes::StructureShape.new(name: 'DescribeDomainAutoTunesRequest')
80
86
  DescribeDomainAutoTunesResponse = Shapes::StructureShape.new(name: 'DescribeDomainAutoTunesResponse')
87
+ DescribeDomainChangeProgressRequest = Shapes::StructureShape.new(name: 'DescribeDomainChangeProgressRequest')
88
+ DescribeDomainChangeProgressResponse = Shapes::StructureShape.new(name: 'DescribeDomainChangeProgressResponse')
81
89
  DescribeElasticsearchDomainConfigRequest = Shapes::StructureShape.new(name: 'DescribeElasticsearchDomainConfigRequest')
82
90
  DescribeElasticsearchDomainConfigResponse = Shapes::StructureShape.new(name: 'DescribeElasticsearchDomainConfigResponse')
83
91
  DescribeElasticsearchDomainRequest = Shapes::StructureShape.new(name: 'DescribeElasticsearchDomainRequest')
@@ -101,6 +109,8 @@ module Aws::ElasticsearchService
101
109
  DescribeReservedElasticsearchInstanceOfferingsResponse = Shapes::StructureShape.new(name: 'DescribeReservedElasticsearchInstanceOfferingsResponse')
102
110
  DescribeReservedElasticsearchInstancesRequest = Shapes::StructureShape.new(name: 'DescribeReservedElasticsearchInstancesRequest')
103
111
  DescribeReservedElasticsearchInstancesResponse = Shapes::StructureShape.new(name: 'DescribeReservedElasticsearchInstancesResponse')
112
+ Description = Shapes::StringShape.new(name: 'Description')
113
+ DisableTimestamp = Shapes::TimestampShape.new(name: 'DisableTimestamp')
104
114
  DisabledOperationException = Shapes::StructureShape.new(name: 'DisabledOperationException')
105
115
  DissociatePackageRequest = Shapes::StructureShape.new(name: 'DissociatePackageRequest')
106
116
  DissociatePackageResponse = Shapes::StructureShape.new(name: 'DissociatePackageResponse')
@@ -207,6 +217,7 @@ module Aws::ElasticsearchService
207
217
  OutboundCrossClusterSearchConnectionStatus = Shapes::StructureShape.new(name: 'OutboundCrossClusterSearchConnectionStatus')
208
218
  OutboundCrossClusterSearchConnectionStatusCode = Shapes::StringShape.new(name: 'OutboundCrossClusterSearchConnectionStatusCode')
209
219
  OutboundCrossClusterSearchConnections = Shapes::ListShape.new(name: 'OutboundCrossClusterSearchConnections')
220
+ OverallChangeStatus = Shapes::StringShape.new(name: 'OverallChangeStatus')
210
221
  OwnerId = Shapes::StringShape.new(name: 'OwnerId')
211
222
  PackageDescription = Shapes::StringShape.new(name: 'PackageDescription')
212
223
  PackageDetails = Shapes::StructureShape.new(name: 'PackageDetails')
@@ -273,6 +284,7 @@ module Aws::ElasticsearchService
273
284
  TagList = Shapes::ListShape.new(name: 'TagList')
274
285
  TagValue = Shapes::StringShape.new(name: 'TagValue')
275
286
  TimeUnit = Shapes::StringShape.new(name: 'TimeUnit')
287
+ TotalNumberOfStages = Shapes::IntegerShape.new(name: 'TotalNumberOfStages')
276
288
  UIntValue = Shapes::IntegerShape.new(name: 'UIntValue')
277
289
  UpdateElasticsearchDomainConfigRequest = Shapes::StructureShape.new(name: 'UpdateElasticsearchDomainConfigRequest')
278
290
  UpdateElasticsearchDomainConfigResponse = Shapes::StructureShape.new(name: 'UpdateElasticsearchDomainConfigResponse')
@@ -330,12 +342,15 @@ module Aws::ElasticsearchService
330
342
  AdvancedSecurityOptions.add_member(:enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "Enabled"))
331
343
  AdvancedSecurityOptions.add_member(:internal_user_database_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "InternalUserDatabaseEnabled"))
332
344
  AdvancedSecurityOptions.add_member(:saml_options, Shapes::ShapeRef.new(shape: SAMLOptionsOutput, location_name: "SAMLOptions"))
345
+ AdvancedSecurityOptions.add_member(:anonymous_auth_disable_date, Shapes::ShapeRef.new(shape: DisableTimestamp, location_name: "AnonymousAuthDisableDate"))
346
+ AdvancedSecurityOptions.add_member(:anonymous_auth_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "AnonymousAuthEnabled"))
333
347
  AdvancedSecurityOptions.struct_class = Types::AdvancedSecurityOptions
334
348
 
335
349
  AdvancedSecurityOptionsInput.add_member(:enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "Enabled"))
336
350
  AdvancedSecurityOptionsInput.add_member(:internal_user_database_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "InternalUserDatabaseEnabled"))
337
351
  AdvancedSecurityOptionsInput.add_member(:master_user_options, Shapes::ShapeRef.new(shape: MasterUserOptions, location_name: "MasterUserOptions"))
338
352
  AdvancedSecurityOptionsInput.add_member(:saml_options, Shapes::ShapeRef.new(shape: SAMLOptionsInput, location_name: "SAMLOptions"))
353
+ AdvancedSecurityOptionsInput.add_member(:anonymous_auth_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "AnonymousAuthEnabled"))
339
354
  AdvancedSecurityOptionsInput.struct_class = Types::AdvancedSecurityOptionsInput
340
355
 
341
356
  AdvancedSecurityOptionsStatus.add_member(:options, Shapes::ShapeRef.new(shape: AdvancedSecurityOptions, required: true, location_name: "Options"))
@@ -399,6 +414,27 @@ module Aws::ElasticsearchService
399
414
  CancelElasticsearchServiceSoftwareUpdateResponse.add_member(:service_software_options, Shapes::ShapeRef.new(shape: ServiceSoftwareOptions, location_name: "ServiceSoftwareOptions"))
400
415
  CancelElasticsearchServiceSoftwareUpdateResponse.struct_class = Types::CancelElasticsearchServiceSoftwareUpdateResponse
401
416
 
417
+ ChangeProgressDetails.add_member(:change_id, Shapes::ShapeRef.new(shape: GUID, location_name: "ChangeId"))
418
+ ChangeProgressDetails.add_member(:message, Shapes::ShapeRef.new(shape: Message, location_name: "Message"))
419
+ ChangeProgressDetails.struct_class = Types::ChangeProgressDetails
420
+
421
+ ChangeProgressStage.add_member(:name, Shapes::ShapeRef.new(shape: ChangeProgressStageName, location_name: "Name"))
422
+ ChangeProgressStage.add_member(:status, Shapes::ShapeRef.new(shape: ChangeProgressStageStatus, location_name: "Status"))
423
+ ChangeProgressStage.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "Description"))
424
+ ChangeProgressStage.add_member(:last_updated, Shapes::ShapeRef.new(shape: LastUpdated, location_name: "LastUpdated"))
425
+ ChangeProgressStage.struct_class = Types::ChangeProgressStage
426
+
427
+ ChangeProgressStageList.member = Shapes::ShapeRef.new(shape: ChangeProgressStage)
428
+
429
+ ChangeProgressStatusDetails.add_member(:change_id, Shapes::ShapeRef.new(shape: GUID, location_name: "ChangeId"))
430
+ ChangeProgressStatusDetails.add_member(:start_time, Shapes::ShapeRef.new(shape: UpdateTimestamp, location_name: "StartTime"))
431
+ ChangeProgressStatusDetails.add_member(:status, Shapes::ShapeRef.new(shape: OverallChangeStatus, location_name: "Status"))
432
+ ChangeProgressStatusDetails.add_member(:pending_properties, Shapes::ShapeRef.new(shape: StringList, location_name: "PendingProperties"))
433
+ ChangeProgressStatusDetails.add_member(:completed_properties, Shapes::ShapeRef.new(shape: StringList, location_name: "CompletedProperties"))
434
+ ChangeProgressStatusDetails.add_member(:total_number_of_stages, Shapes::ShapeRef.new(shape: TotalNumberOfStages, location_name: "TotalNumberOfStages"))
435
+ ChangeProgressStatusDetails.add_member(:change_progress_stages, Shapes::ShapeRef.new(shape: ChangeProgressStageList, location_name: "ChangeProgressStages"))
436
+ ChangeProgressStatusDetails.struct_class = Types::ChangeProgressStatusDetails
437
+
402
438
  CognitoOptions.add_member(:enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "Enabled"))
403
439
  CognitoOptions.add_member(:user_pool_id, Shapes::ShapeRef.new(shape: UserPoolId, location_name: "UserPoolId"))
404
440
  CognitoOptions.add_member(:identity_pool_id, Shapes::ShapeRef.new(shape: IdentityPoolId, location_name: "IdentityPoolId"))
@@ -495,6 +531,13 @@ module Aws::ElasticsearchService
495
531
  DescribeDomainAutoTunesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
496
532
  DescribeDomainAutoTunesResponse.struct_class = Types::DescribeDomainAutoTunesResponse
497
533
 
534
+ DescribeDomainChangeProgressRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: DomainName, required: true, location: "uri", location_name: "DomainName"))
535
+ DescribeDomainChangeProgressRequest.add_member(:change_id, Shapes::ShapeRef.new(shape: GUID, location: "querystring", location_name: "changeid"))
536
+ DescribeDomainChangeProgressRequest.struct_class = Types::DescribeDomainChangeProgressRequest
537
+
538
+ DescribeDomainChangeProgressResponse.add_member(:change_progress_status, Shapes::ShapeRef.new(shape: ChangeProgressStatusDetails, location_name: "ChangeProgressStatus"))
539
+ DescribeDomainChangeProgressResponse.struct_class = Types::DescribeDomainChangeProgressResponse
540
+
498
541
  DescribeElasticsearchDomainConfigRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: DomainName, required: true, location: "uri", location_name: "DomainName"))
499
542
  DescribeElasticsearchDomainConfigRequest.struct_class = Types::DescribeElasticsearchDomainConfigRequest
500
543
 
@@ -669,6 +712,7 @@ module Aws::ElasticsearchService
669
712
  ElasticsearchDomainConfig.add_member(:domain_endpoint_options, Shapes::ShapeRef.new(shape: DomainEndpointOptionsStatus, location_name: "DomainEndpointOptions"))
670
713
  ElasticsearchDomainConfig.add_member(:advanced_security_options, Shapes::ShapeRef.new(shape: AdvancedSecurityOptionsStatus, location_name: "AdvancedSecurityOptions"))
671
714
  ElasticsearchDomainConfig.add_member(:auto_tune_options, Shapes::ShapeRef.new(shape: AutoTuneOptionsStatus, location_name: "AutoTuneOptions"))
715
+ ElasticsearchDomainConfig.add_member(:change_progress_details, Shapes::ShapeRef.new(shape: ChangeProgressDetails, location_name: "ChangeProgressDetails"))
672
716
  ElasticsearchDomainConfig.struct_class = Types::ElasticsearchDomainConfig
673
717
 
674
718
  ElasticsearchDomainStatus.add_member(:domain_id, Shapes::ShapeRef.new(shape: DomainId, required: true, location_name: "DomainId"))
@@ -695,6 +739,7 @@ module Aws::ElasticsearchService
695
739
  ElasticsearchDomainStatus.add_member(:domain_endpoint_options, Shapes::ShapeRef.new(shape: DomainEndpointOptions, location_name: "DomainEndpointOptions"))
696
740
  ElasticsearchDomainStatus.add_member(:advanced_security_options, Shapes::ShapeRef.new(shape: AdvancedSecurityOptions, location_name: "AdvancedSecurityOptions"))
697
741
  ElasticsearchDomainStatus.add_member(:auto_tune_options, Shapes::ShapeRef.new(shape: AutoTuneOptionsOutput, location_name: "AutoTuneOptions"))
742
+ ElasticsearchDomainStatus.add_member(:change_progress_details, Shapes::ShapeRef.new(shape: ChangeProgressDetails, location_name: "ChangeProgressDetails"))
698
743
  ElasticsearchDomainStatus.struct_class = Types::ElasticsearchDomainStatus
699
744
 
700
745
  ElasticsearchDomainStatusList.member = Shapes::ShapeRef.new(shape: ElasticsearchDomainStatus)
@@ -1081,6 +1126,7 @@ module Aws::ElasticsearchService
1081
1126
  UpgradeElasticsearchDomainResponse.add_member(:domain_name, Shapes::ShapeRef.new(shape: DomainName, location_name: "DomainName"))
1082
1127
  UpgradeElasticsearchDomainResponse.add_member(:target_version, Shapes::ShapeRef.new(shape: ElasticsearchVersionString, location_name: "TargetVersion"))
1083
1128
  UpgradeElasticsearchDomainResponse.add_member(:perform_check_only, Shapes::ShapeRef.new(shape: Boolean, location_name: "PerformCheckOnly"))
1129
+ UpgradeElasticsearchDomainResponse.add_member(:change_progress_details, Shapes::ShapeRef.new(shape: ChangeProgressDetails, location_name: "ChangeProgressDetails"))
1084
1130
  UpgradeElasticsearchDomainResponse.struct_class = Types::UpgradeElasticsearchDomainResponse
1085
1131
 
1086
1132
  UpgradeHistory.add_member(:upgrade_name, Shapes::ShapeRef.new(shape: UpgradeName, location_name: "UpgradeName"))
@@ -1302,6 +1348,18 @@ module Aws::ElasticsearchService
1302
1348
  )
1303
1349
  end)
1304
1350
 
1351
+ api.add_operation(:describe_domain_change_progress, Seahorse::Model::Operation.new.tap do |o|
1352
+ o.name = "DescribeDomainChangeProgress"
1353
+ o.http_method = "GET"
1354
+ o.http_request_uri = "/2015-01-01/es/domain/{DomainName}/progress"
1355
+ o.input = Shapes::ShapeRef.new(shape: DescribeDomainChangeProgressRequest)
1356
+ o.output = Shapes::ShapeRef.new(shape: DescribeDomainChangeProgressResponse)
1357
+ o.errors << Shapes::ShapeRef.new(shape: BaseException)
1358
+ o.errors << Shapes::ShapeRef.new(shape: InternalException)
1359
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1360
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1361
+ end)
1362
+
1305
1363
  api.add_operation(:describe_elasticsearch_domain, Seahorse::Model::Operation.new.tap do |o|
1306
1364
  o.name = "DescribeElasticsearchDomain"
1307
1365
  o.http_method = "GET"
@@ -177,10 +177,22 @@ module Aws::ElasticsearchService
177
177
  # Describes the SAML application configured for a domain.
178
178
  # @return [Types::SAMLOptionsOutput]
179
179
  #
180
+ # @!attribute [rw] anonymous_auth_disable_date
181
+ # Specifies the Anonymous Auth Disable Date when Anonymous Auth is
182
+ # enabled.
183
+ # @return [Time]
184
+ #
185
+ # @!attribute [rw] anonymous_auth_enabled
186
+ # True if Anonymous auth is enabled. Anonymous auth can be enabled
187
+ # only when AdvancedSecurity is enabled on existing domains.
188
+ # @return [Boolean]
189
+ #
180
190
  class AdvancedSecurityOptions < Struct.new(
181
191
  :enabled,
182
192
  :internal_user_database_enabled,
183
- :saml_options)
193
+ :saml_options,
194
+ :anonymous_auth_disable_date,
195
+ :anonymous_auth_enabled)
184
196
  SENSITIVE = []
185
197
  include Aws::Structure
186
198
  end
@@ -213,6 +225,7 @@ module Aws::ElasticsearchService
213
225
  # roles_key: "String",
214
226
  # session_timeout_minutes: 1,
215
227
  # },
228
+ # anonymous_auth_enabled: false,
216
229
  # }
217
230
  #
218
231
  # @!attribute [rw] enabled
@@ -232,11 +245,17 @@ module Aws::ElasticsearchService
232
245
  # Specifies the SAML application configuration for the domain.
233
246
  # @return [Types::SAMLOptionsInput]
234
247
  #
248
+ # @!attribute [rw] anonymous_auth_enabled
249
+ # True if Anonymous auth is enabled. Anonymous auth can be enabled
250
+ # only when AdvancedSecurity is enabled on existing domains.
251
+ # @return [Boolean]
252
+ #
235
253
  class AdvancedSecurityOptionsInput < Struct.new(
236
254
  :enabled,
237
255
  :internal_user_database_enabled,
238
256
  :master_user_options,
239
- :saml_options)
257
+ :saml_options,
258
+ :anonymous_auth_enabled)
240
259
  SENSITIVE = []
241
260
  include Aws::Structure
242
261
  end
@@ -606,6 +625,100 @@ module Aws::ElasticsearchService
606
625
  include Aws::Structure
607
626
  end
608
627
 
628
+ # Specifies change details of the domain configuration change.
629
+ #
630
+ # @!attribute [rw] change_id
631
+ # The unique change identifier associated with a specific domain
632
+ # configuration change.
633
+ # @return [String]
634
+ #
635
+ # @!attribute [rw] message
636
+ # Contains an optional message associated with the domain
637
+ # configuration change.
638
+ # @return [String]
639
+ #
640
+ class ChangeProgressDetails < Struct.new(
641
+ :change_id,
642
+ :message)
643
+ SENSITIVE = []
644
+ include Aws::Structure
645
+ end
646
+
647
+ # A progress stage details of a specific domain configuration change.
648
+ #
649
+ # @!attribute [rw] name
650
+ # The name of the specific progress stage.
651
+ # @return [String]
652
+ #
653
+ # @!attribute [rw] status
654
+ # The overall status of a specific progress stage.
655
+ # @return [String]
656
+ #
657
+ # @!attribute [rw] description
658
+ # The description of the progress stage.
659
+ # @return [String]
660
+ #
661
+ # @!attribute [rw] last_updated
662
+ # The last updated timestamp of the progress stage.
663
+ # @return [Time]
664
+ #
665
+ class ChangeProgressStage < Struct.new(
666
+ :name,
667
+ :status,
668
+ :description,
669
+ :last_updated)
670
+ SENSITIVE = []
671
+ include Aws::Structure
672
+ end
673
+
674
+ # The progress details of a specific domain configuration change.
675
+ #
676
+ # @!attribute [rw] change_id
677
+ # The unique change identifier associated with a specific domain
678
+ # configuration change.
679
+ # @return [String]
680
+ #
681
+ # @!attribute [rw] start_time
682
+ # The time at which the configuration change is made on the domain.
683
+ # @return [Time]
684
+ #
685
+ # @!attribute [rw] status
686
+ # The overall status of the domain configuration change. This field
687
+ # can take the following values: `PENDING`, `PROCESSING`, `COMPLETED`
688
+ # and `FAILED`
689
+ # @return [String]
690
+ #
691
+ # @!attribute [rw] pending_properties
692
+ # The list of properties involved in the domain configuration change
693
+ # that are still in pending.
694
+ # @return [Array<String>]
695
+ #
696
+ # @!attribute [rw] completed_properties
697
+ # The list of properties involved in the domain configuration change
698
+ # that are completed.
699
+ # @return [Array<String>]
700
+ #
701
+ # @!attribute [rw] total_number_of_stages
702
+ # The total number of stages required for the configuration change.
703
+ # @return [Integer]
704
+ #
705
+ # @!attribute [rw] change_progress_stages
706
+ # The specific stages that the domain is going through to perform the
707
+ # configuration change.
708
+ # @return [Array<Types::ChangeProgressStage>]
709
+ #
710
+ class ChangeProgressStatusDetails < Struct.new(
711
+ :change_id,
712
+ :start_time,
713
+ :status,
714
+ :pending_properties,
715
+ :completed_properties,
716
+ :total_number_of_stages,
717
+ :change_progress_stages)
718
+ SENSITIVE = []
719
+ include Aws::Structure
720
+ end
721
+
609
722
  # Options to specify the Cognito user and identity pools for Kibana
610
723
  # authentication. For more information, see [Amazon Cognito
611
724
  # Authentication for Kibana][1].
@@ -797,6 +910,7 @@ module Aws::ElasticsearchService
797
910
  # roles_key: "String",
798
911
  # session_timeout_minutes: 1,
799
912
  # },
913
+ # anonymous_auth_enabled: false,
800
914
  # },
801
915
  # auto_tune_options: {
802
916
  # desired_state: "ENABLED", # accepts ENABLED, DISABLED
@@ -1286,6 +1400,49 @@ module Aws::ElasticsearchService
1286
1400
  include Aws::Structure
1287
1401
  end
1288
1402
 
1403
+ # Container for the parameters to the `DescribeDomainChangeProgress`
1404
+ # operation. Specifies the domain name and optional change specific
1405
+ # identity for which you want progress information.
1406
+ #
1407
+ # @note When making an API call, you may pass DescribeDomainChangeProgressRequest
1408
+ # data as a hash:
1409
+ #
1410
+ # {
1411
+ # domain_name: "DomainName", # required
1412
+ # change_id: "GUID",
1413
+ # }
1414
+ #
1415
+ # @!attribute [rw] domain_name
1416
+ # The domain you want to get the progress information about.
1417
+ # @return [String]
1418
+ #
1419
+ # @!attribute [rw] change_id
1420
+ # The specific change ID for which you want to get progress
1421
+ # information. This is an optional parameter. If omitted, the service
1422
+ # returns information about the most recent configuration change.
1423
+ # @return [String]
1424
+ #
1425
+ class DescribeDomainChangeProgressRequest < Struct.new(
1426
+ :domain_name,
1427
+ :change_id)
1428
+ SENSITIVE = []
1429
+ include Aws::Structure
1430
+ end
1431
+
1432
+ # The result of a `DescribeDomainChangeProgress` request. Contains the
1433
+ # progress information of the requested domain change.
1434
+ #
1435
+ # @!attribute [rw] change_progress_status
1436
+ # Progress information for the configuration change that is requested
1437
+ # in the `DescribeDomainChangeProgress` request.
1438
+ # @return [Types::ChangeProgressStatusDetails]
1439
+ #
1440
+ class DescribeDomainChangeProgressResponse < Struct.new(
1441
+ :change_progress_status)
1442
+ SENSITIVE = []
1443
+ include Aws::Structure
1444
+ end
1445
+
1289
1446
  # Container for the parameters to the
1290
1447
  # `DescribeElasticsearchDomainConfig` operation. Specifies the domain
1291
1448
  # name for which you want configuration information.
@@ -2290,6 +2447,10 @@ module Aws::ElasticsearchService
2290
2447
  # Specifies `AutoTuneOptions` for the domain.
2291
2448
  # @return [Types::AutoTuneOptionsStatus]
2292
2449
  #
2450
+ # @!attribute [rw] change_progress_details
2451
+ # Specifies change details of the domain configuration change.
2452
+ # @return [Types::ChangeProgressDetails]
2453
+ #
2293
2454
  class ElasticsearchDomainConfig < Struct.new(
2294
2455
  :elasticsearch_version,
2295
2456
  :elasticsearch_cluster_config,
@@ -2304,7 +2465,8 @@ module Aws::ElasticsearchService
2304
2465
  :log_publishing_options,
2305
2466
  :domain_endpoint_options,
2306
2467
  :advanced_security_options,
2307
- :auto_tune_options)
2468
+ :auto_tune_options,
2469
+ :change_progress_details)
2308
2470
  SENSITIVE = []
2309
2471
  include Aws::Structure
2310
2472
  end
@@ -2443,6 +2605,10 @@ module Aws::ElasticsearchService
2443
2605
  # The current status of the Elasticsearch domain's Auto-Tune options.
2444
2606
  # @return [Types::AutoTuneOptionsOutput]
2445
2607
  #
2608
+ # @!attribute [rw] change_progress_details
2609
+ # Specifies change details of the domain configuration change.
2610
+ # @return [Types::ChangeProgressDetails]
2611
+ #
2446
2612
  class ElasticsearchDomainStatus < Struct.new(
2447
2613
  :domain_id,
2448
2614
  :domain_name,
@@ -2467,7 +2633,8 @@ module Aws::ElasticsearchService
2467
2633
  :service_software_options,
2468
2634
  :domain_endpoint_options,
2469
2635
  :advanced_security_options,
2470
- :auto_tune_options)
2636
+ :auto_tune_options,
2637
+ :change_progress_details)
2471
2638
  SENSITIVE = []
2472
2639
  include Aws::Structure
2473
2640
  end
@@ -4259,6 +4426,7 @@ module Aws::ElasticsearchService
4259
4426
  # roles_key: "String",
4260
4427
  # session_timeout_minutes: 1,
4261
4428
  # },
4429
+ # anonymous_auth_enabled: false,
4262
4430
  # },
4263
4431
  # node_to_node_encryption_options: {
4264
4432
  # enabled: false,
@@ -4523,10 +4691,15 @@ module Aws::ElasticsearchService
4523
4691
  # Upgrade.
4524
4692
  # @return [Boolean]
4525
4693
  #
4694
+ # @!attribute [rw] change_progress_details
4695
+ # Specifies change details of the domain configuration change.
4696
+ # @return [Types::ChangeProgressDetails]
4697
+ #
4526
4698
  class UpgradeElasticsearchDomainResponse < Struct.new(
4527
4699
  :domain_name,
4528
4700
  :target_version,
4529
- :perform_check_only)
4701
+ :perform_check_only,
4702
+ :change_progress_details)
4530
4703
  SENSITIVE = []
4531
4704
  include Aws::Structure
4532
4705
  end
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-elasticsearchservice/customizations'
48
48
  # @!group service
49
49
  module Aws::ElasticsearchService
50
50
 
51
- GEM_VERSION = '1.60.0'
51
+ GEM_VERSION = '1.64.0'
52
52
 
53
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-elasticsearchservice
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.60.0
4
+ version: 1.64.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: 2021-11-30 00:00:00.000000000 Z
11
+ date: 2022-02-03 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.122.0
22
+ version: 3.126.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.122.0
32
+ version: 3.126.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement