aws-sdk-servicediscovery 1.78.0 → 1.80.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: 5b63ed388a0ac9ab1bec8f973023105696e4258f6aff2817d04b134e5df0ccdc
4
- data.tar.gz: 7dc1e61ed216dcd9376d6e5d8ae5542141ab28fc686964104477183770ed8dfa
3
+ metadata.gz: c798d8d402099943baa9a29e57a5784438ad706c6ccc10498541453d4b95c0f6
4
+ data.tar.gz: fdfb8a12fd84c6189d6214322ddeac6995bba2ac03cb34691deb24ed538f8f93
5
5
  SHA512:
6
- metadata.gz: 4e81d0668ce0f0ff28ebc4a5f50b1cab6c78ed6ae3e606b38e89ca5c9bfaa3b7880a00c9adca9d733471565d68d925e3469918d4358bfeae69f8a3c6815d5c33
7
- data.tar.gz: '09c78599f7dbef7e915bef72008993c0198db62d366a5ea32a8ec987b2e84a8cc151334b9936586bc20ad475ed42e214f1973d2963a14189cc2c9953c36e39ff'
6
+ metadata.gz: d442c0649457e0c97feb324a16746fd34ae368b444253e29d6bb0937eb44af24648f51c46658ae7e0ffd18a74451797436cd876b5bb6d8e9f58d511c8c6505ad
7
+ data.tar.gz: 7618d372b46b0e6243bf0a6c9b91c94359bc683e6ba535e367ee2c1db5125fd29dcc0053c1552fc5a93542b96dd484969514ac20bc67d803c20327804f981103
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.80.0 (2025-01-15)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.79.0 (2024-12-13)
10
+ ------------------
11
+
12
+ * Feature - AWS Cloud Map now supports service-level attributes, allowing you to associate custom metadata directly with services. These attributes can be retrieved, updated, and deleted using the new GetServiceAttributes, UpdateServiceAttributes, and DeleteServiceAttributes API calls.
13
+
4
14
  1.78.0 (2024-11-18)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.78.0
1
+ 1.80.0
@@ -257,11 +257,34 @@ module Aws::ServiceDiscovery
257
257
  # Used when loading credentials from the shared credentials file
258
258
  # at HOME/.aws/credentials. When not specified, 'default' is used.
259
259
  #
260
+ # @option options [String] :request_checksum_calculation ("when_supported")
261
+ # Determines when a checksum will be calculated for request payloads. Values are:
262
+ #
263
+ # * `when_supported` - (default) When set, a checksum will be
264
+ # calculated for all request payloads of operations modeled with the
265
+ # `httpChecksum` trait where `requestChecksumRequired` is `true` and/or a
266
+ # `requestAlgorithmMember` is modeled.
267
+ # * `when_required` - When set, a checksum will only be calculated for
268
+ # request payloads of operations modeled with the `httpChecksum` trait where
269
+ # `requestChecksumRequired` is `true` or where a `requestAlgorithmMember`
270
+ # is modeled and supplied.
271
+ #
260
272
  # @option options [Integer] :request_min_compression_size_bytes (10240)
261
273
  # The minimum size in bytes that triggers compression for request
262
274
  # bodies. The value must be non-negative integer value between 0
263
275
  # and 10485780 bytes inclusive.
264
276
  #
277
+ # @option options [String] :response_checksum_validation ("when_supported")
278
+ # Determines when checksum validation will be performed on response payloads. Values are:
279
+ #
280
+ # * `when_supported` - (default) When set, checksum validation is performed on all
281
+ # response payloads of operations modeled with the `httpChecksum` trait where
282
+ # `responseAlgorithms` is modeled, except when no modeled checksum algorithms
283
+ # are supported.
284
+ # * `when_required` - When set, checksum validation is not performed on
285
+ # response payloads of operations unless the checksum algorithm is supported and
286
+ # the `requestValidationModeMember` member is set to `ENABLED`.
287
+ #
265
288
  # @option options [Proc] :retry_backoff
266
289
  # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
267
290
  # This option is only used in the `legacy` retry mode.
@@ -1008,8 +1031,9 @@ module Aws::ServiceDiscovery
1008
1031
  req.send_request(options)
1009
1032
  end
1010
1033
 
1011
- # Deletes a specified service. If the service still contains one or more
1012
- # registered instances, the request fails.
1034
+ # Deletes a specified service and all associated service attributes. If
1035
+ # the service still contains one or more registered instances, the
1036
+ # request fails.
1013
1037
  #
1014
1038
  # @option params [required, String] :id
1015
1039
  # The ID of the service that you want to delete.
@@ -1044,6 +1068,49 @@ module Aws::ServiceDiscovery
1044
1068
  req.send_request(options)
1045
1069
  end
1046
1070
 
1071
+ # Deletes specific attributes associated with a service.
1072
+ #
1073
+ # @option params [required, String] :service_id
1074
+ # The ID of the service from which the attributes will be deleted.
1075
+ #
1076
+ # @option params [required, Array<String>] :attributes
1077
+ # A list of keys corresponding to each attribute that you want to
1078
+ # delete.
1079
+ #
1080
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1081
+ #
1082
+ #
1083
+ # @example Example: DeleteServiceAttributes example
1084
+ #
1085
+ # # Example: Delete service attribute by providing attribute key and service ID
1086
+ #
1087
+ # resp = client.delete_service_attributes({
1088
+ # attributes: [
1089
+ # "port",
1090
+ # ],
1091
+ # service_id: "srv-e4anhexample0004",
1092
+ # })
1093
+ #
1094
+ # resp.to_h outputs the following:
1095
+ # {
1096
+ # }
1097
+ #
1098
+ # @example Request syntax with placeholder values
1099
+ #
1100
+ # resp = client.delete_service_attributes({
1101
+ # service_id: "ResourceId", # required
1102
+ # attributes: ["ServiceAttributeKey"], # required
1103
+ # })
1104
+ #
1105
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeleteServiceAttributes AWS API Documentation
1106
+ #
1107
+ # @overload delete_service_attributes(params = {})
1108
+ # @param [Hash] params ({})
1109
+ def delete_service_attributes(params = {}, options = {})
1110
+ req = build_request(:delete_service_attributes, params)
1111
+ req.send_request(options)
1112
+ end
1113
+
1047
1114
  # Deletes the Amazon Route 53 DNS records and health check, if any, that
1048
1115
  # Cloud Map created for the specified instance.
1049
1116
  #
@@ -1629,6 +1696,55 @@ module Aws::ServiceDiscovery
1629
1696
  req.send_request(options)
1630
1697
  end
1631
1698
 
1699
+ # Returns the attributes associated with a specified service.
1700
+ #
1701
+ # @option params [required, String] :service_id
1702
+ # The ID of the service that you want to get attributes for.
1703
+ #
1704
+ # @return [Types::GetServiceAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1705
+ #
1706
+ # * {Types::GetServiceAttributesResponse#service_attributes #service_attributes} => Types::ServiceAttributes
1707
+ #
1708
+ #
1709
+ # @example Example: GetServiceAttributes Example
1710
+ #
1711
+ # # This example gets the attributes for a specified service.
1712
+ #
1713
+ # resp = client.get_service_attributes({
1714
+ # service_id: "srv-e4anhexample0004",
1715
+ # })
1716
+ #
1717
+ # resp.to_h outputs the following:
1718
+ # {
1719
+ # service_attributes: {
1720
+ # attributes: {
1721
+ # "port" => "80",
1722
+ # },
1723
+ # service_arn: "arn:aws:servicediscovery:us-west-2:123456789012:service/srv-e4anhexample0004",
1724
+ # },
1725
+ # }
1726
+ #
1727
+ # @example Request syntax with placeholder values
1728
+ #
1729
+ # resp = client.get_service_attributes({
1730
+ # service_id: "ResourceId", # required
1731
+ # })
1732
+ #
1733
+ # @example Response structure
1734
+ #
1735
+ # resp.service_attributes.service_arn #=> String
1736
+ # resp.service_attributes.attributes #=> Hash
1737
+ # resp.service_attributes.attributes["ServiceAttributeKey"] #=> String
1738
+ #
1739
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetServiceAttributes AWS API Documentation
1740
+ #
1741
+ # @overload get_service_attributes(params = {})
1742
+ # @param [Hash] params ({})
1743
+ def get_service_attributes(params = {}, options = {})
1744
+ req = build_request(:get_service_attributes, params)
1745
+ req.send_request(options)
1746
+ end
1747
+
1632
1748
  # Lists summary information about the instances that you registered by
1633
1749
  # using a specified service.
1634
1750
  #
@@ -2598,9 +2714,9 @@ module Aws::ServiceDiscovery
2598
2714
  # * {Types::UpdatePrivateDnsNamespaceResponse#operation_id #operation_id} => String
2599
2715
  #
2600
2716
  #
2601
- # @example Example: To update a private DNS namespace
2717
+ # @example Example: To update a public DNS namespace
2602
2718
  #
2603
- # # The following example updates the description of a private DNS namespace.
2719
+ # # The following example updates the description of a public DNS namespace.
2604
2720
  #
2605
2721
  # resp = client.update_private_dns_namespace({
2606
2722
  # id: "ns-bk3aEXAMPLE",
@@ -2612,12 +2728,12 @@ module Aws::ServiceDiscovery
2612
2728
  #
2613
2729
  # resp.to_h outputs the following:
2614
2730
  # {
2615
- # operation_id: "ft52xe2koxhoeormaceymagglsdjyvEXAMPLE",
2731
+ # operation_id: "ft52xe2koxhoeormaceymagglsdjEXAMPLE",
2616
2732
  # }
2617
2733
  #
2618
- # @example Example: To update a public DNS namespace
2734
+ # @example Example: To update a private DNS namespace
2619
2735
  #
2620
- # # The following example updates the description of a public DNS namespace.
2736
+ # # The following example updates the description of a private DNS namespace.
2621
2737
  #
2622
2738
  # resp = client.update_private_dns_namespace({
2623
2739
  # id: "ns-bk3aEXAMPLE",
@@ -2629,7 +2745,7 @@ module Aws::ServiceDiscovery
2629
2745
  #
2630
2746
  # resp.to_h outputs the following:
2631
2747
  # {
2632
- # operation_id: "ft52xe2koxhoeormaceymagglsdjEXAMPLE",
2748
+ # operation_id: "ft52xe2koxhoeormaceymagglsdjyvEXAMPLE",
2633
2749
  # }
2634
2750
  #
2635
2751
  # @example Request syntax with placeholder values
@@ -2742,7 +2858,8 @@ module Aws::ServiceDiscovery
2742
2858
  # The ID of the service that you want to update.
2743
2859
  #
2744
2860
  # @option params [required, Types::ServiceChange] :service
2745
- # A complex type that contains the new settings for the service.
2861
+ # A complex type that contains the new settings for the service. You can
2862
+ # specify a maximum of 30 attributes (key-value pairs).
2746
2863
  #
2747
2864
  # @return [Types::UpdateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2748
2865
  #
@@ -2812,6 +2929,51 @@ module Aws::ServiceDiscovery
2812
2929
  req.send_request(options)
2813
2930
  end
2814
2931
 
2932
+ # Submits a request to update a specified service to add service-level
2933
+ # attributes.
2934
+ #
2935
+ # @option params [required, String] :service_id
2936
+ # The ID of the service that you want to update.
2937
+ #
2938
+ # @option params [required, Hash<String,String>] :attributes
2939
+ # A string map that contains attribute key-value pairs.
2940
+ #
2941
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2942
+ #
2943
+ #
2944
+ # @example Example: UpdateServiceAttributes Example
2945
+ #
2946
+ # # This example submits a request to update the specified service to add a port attribute with the value 80.
2947
+ #
2948
+ # resp = client.update_service_attributes({
2949
+ # attributes: {
2950
+ # "port" => "80",
2951
+ # },
2952
+ # service_id: "srv-e4anhexample0004",
2953
+ # })
2954
+ #
2955
+ # resp.to_h outputs the following:
2956
+ # {
2957
+ # }
2958
+ #
2959
+ # @example Request syntax with placeholder values
2960
+ #
2961
+ # resp = client.update_service_attributes({
2962
+ # service_id: "ResourceId", # required
2963
+ # attributes: { # required
2964
+ # "ServiceAttributeKey" => "ServiceAttributeValue",
2965
+ # },
2966
+ # })
2967
+ #
2968
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/UpdateServiceAttributes AWS API Documentation
2969
+ #
2970
+ # @overload update_service_attributes(params = {})
2971
+ # @param [Hash] params ({})
2972
+ def update_service_attributes(params = {}, options = {})
2973
+ req = build_request(:update_service_attributes, params)
2974
+ req.send_request(options)
2975
+ end
2976
+
2815
2977
  # @!endgroup
2816
2978
 
2817
2979
  # @param params ({})
@@ -2830,7 +2992,7 @@ module Aws::ServiceDiscovery
2830
2992
  tracer: tracer
2831
2993
  )
2832
2994
  context[:gem_name] = 'aws-sdk-servicediscovery'
2833
- context[:gem_version] = '1.78.0'
2995
+ context[:gem_version] = '1.80.0'
2834
2996
  Seahorse::Client::Request.new(handlers, context)
2835
2997
  end
2836
2998
 
@@ -32,6 +32,8 @@ module Aws::ServiceDiscovery
32
32
  CustomHealthStatus = Shapes::StringShape.new(name: 'CustomHealthStatus')
33
33
  DeleteNamespaceRequest = Shapes::StructureShape.new(name: 'DeleteNamespaceRequest')
34
34
  DeleteNamespaceResponse = Shapes::StructureShape.new(name: 'DeleteNamespaceResponse')
35
+ DeleteServiceAttributesRequest = Shapes::StructureShape.new(name: 'DeleteServiceAttributesRequest')
36
+ DeleteServiceAttributesResponse = Shapes::StructureShape.new(name: 'DeleteServiceAttributesResponse')
35
37
  DeleteServiceRequest = Shapes::StructureShape.new(name: 'DeleteServiceRequest')
36
38
  DeleteServiceResponse = Shapes::StructureShape.new(name: 'DeleteServiceResponse')
37
39
  DeregisterInstanceRequest = Shapes::StructureShape.new(name: 'DeregisterInstanceRequest')
@@ -60,6 +62,8 @@ module Aws::ServiceDiscovery
60
62
  GetNamespaceResponse = Shapes::StructureShape.new(name: 'GetNamespaceResponse')
61
63
  GetOperationRequest = Shapes::StructureShape.new(name: 'GetOperationRequest')
62
64
  GetOperationResponse = Shapes::StructureShape.new(name: 'GetOperationResponse')
65
+ GetServiceAttributesRequest = Shapes::StructureShape.new(name: 'GetServiceAttributesRequest')
66
+ GetServiceAttributesResponse = Shapes::StructureShape.new(name: 'GetServiceAttributesResponse')
63
67
  GetServiceRequest = Shapes::StructureShape.new(name: 'GetServiceRequest')
64
68
  GetServiceResponse = Shapes::StructureShape.new(name: 'GetServiceResponse')
65
69
  HealthCheckConfig = Shapes::StructureShape.new(name: 'HealthCheckConfig')
@@ -146,6 +150,12 @@ module Aws::ServiceDiscovery
146
150
  SOAChange = Shapes::StructureShape.new(name: 'SOAChange')
147
151
  Service = Shapes::StructureShape.new(name: 'Service')
148
152
  ServiceAlreadyExists = Shapes::StructureShape.new(name: 'ServiceAlreadyExists')
153
+ ServiceAttributeKey = Shapes::StringShape.new(name: 'ServiceAttributeKey')
154
+ ServiceAttributeKeyList = Shapes::ListShape.new(name: 'ServiceAttributeKeyList')
155
+ ServiceAttributeValue = Shapes::StringShape.new(name: 'ServiceAttributeValue')
156
+ ServiceAttributes = Shapes::StructureShape.new(name: 'ServiceAttributes')
157
+ ServiceAttributesLimitExceededException = Shapes::StructureShape.new(name: 'ServiceAttributesLimitExceededException')
158
+ ServiceAttributesMap = Shapes::MapShape.new(name: 'ServiceAttributesMap')
149
159
  ServiceChange = Shapes::StructureShape.new(name: 'ServiceChange')
150
160
  ServiceFilter = Shapes::StructureShape.new(name: 'ServiceFilter')
151
161
  ServiceFilterName = Shapes::StringShape.new(name: 'ServiceFilterName')
@@ -174,6 +184,8 @@ module Aws::ServiceDiscovery
174
184
  UpdatePrivateDnsNamespaceResponse = Shapes::StructureShape.new(name: 'UpdatePrivateDnsNamespaceResponse')
175
185
  UpdatePublicDnsNamespaceRequest = Shapes::StructureShape.new(name: 'UpdatePublicDnsNamespaceRequest')
176
186
  UpdatePublicDnsNamespaceResponse = Shapes::StructureShape.new(name: 'UpdatePublicDnsNamespaceResponse')
187
+ UpdateServiceAttributesRequest = Shapes::StructureShape.new(name: 'UpdateServiceAttributesRequest')
188
+ UpdateServiceAttributesResponse = Shapes::StructureShape.new(name: 'UpdateServiceAttributesResponse')
177
189
  UpdateServiceRequest = Shapes::StructureShape.new(name: 'UpdateServiceRequest')
178
190
  UpdateServiceResponse = Shapes::StructureShape.new(name: 'UpdateServiceResponse')
179
191
 
@@ -233,6 +245,12 @@ module Aws::ServiceDiscovery
233
245
  DeleteNamespaceResponse.add_member(:operation_id, Shapes::ShapeRef.new(shape: OperationId, location_name: "OperationId"))
234
246
  DeleteNamespaceResponse.struct_class = Types::DeleteNamespaceResponse
235
247
 
248
+ DeleteServiceAttributesRequest.add_member(:service_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "ServiceId"))
249
+ DeleteServiceAttributesRequest.add_member(:attributes, Shapes::ShapeRef.new(shape: ServiceAttributeKeyList, required: true, location_name: "Attributes"))
250
+ DeleteServiceAttributesRequest.struct_class = Types::DeleteServiceAttributesRequest
251
+
252
+ DeleteServiceAttributesResponse.struct_class = Types::DeleteServiceAttributesResponse
253
+
236
254
  DeleteServiceRequest.add_member(:id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "Id"))
237
255
  DeleteServiceRequest.struct_class = Types::DeleteServiceRequest
238
256
 
@@ -317,6 +335,12 @@ module Aws::ServiceDiscovery
317
335
  GetOperationResponse.add_member(:operation, Shapes::ShapeRef.new(shape: Operation, location_name: "Operation"))
318
336
  GetOperationResponse.struct_class = Types::GetOperationResponse
319
337
 
338
+ GetServiceAttributesRequest.add_member(:service_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "ServiceId"))
339
+ GetServiceAttributesRequest.struct_class = Types::GetServiceAttributesRequest
340
+
341
+ GetServiceAttributesResponse.add_member(:service_attributes, Shapes::ShapeRef.new(shape: ServiceAttributes, location_name: "ServiceAttributes"))
342
+ GetServiceAttributesResponse.struct_class = Types::GetServiceAttributesResponse
343
+
320
344
  GetServiceRequest.add_member(:id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "Id"))
321
345
  GetServiceRequest.struct_class = Types::GetServiceRequest
322
346
 
@@ -559,6 +583,18 @@ module Aws::ServiceDiscovery
559
583
  ServiceAlreadyExists.add_member(:service_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "ServiceId"))
560
584
  ServiceAlreadyExists.struct_class = Types::ServiceAlreadyExists
561
585
 
586
+ ServiceAttributeKeyList.member = Shapes::ShapeRef.new(shape: ServiceAttributeKey)
587
+
588
+ ServiceAttributes.add_member(:service_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "ServiceArn"))
589
+ ServiceAttributes.add_member(:attributes, Shapes::ShapeRef.new(shape: ServiceAttributesMap, location_name: "Attributes"))
590
+ ServiceAttributes.struct_class = Types::ServiceAttributes
591
+
592
+ ServiceAttributesLimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
593
+ ServiceAttributesLimitExceededException.struct_class = Types::ServiceAttributesLimitExceededException
594
+
595
+ ServiceAttributesMap.key = Shapes::ShapeRef.new(shape: ServiceAttributeKey)
596
+ ServiceAttributesMap.value = Shapes::ShapeRef.new(shape: ServiceAttributeValue)
597
+
562
598
  ServiceChange.add_member(:description, Shapes::ShapeRef.new(shape: ResourceDescription, location_name: "Description"))
563
599
  ServiceChange.add_member(:dns_config, Shapes::ShapeRef.new(shape: DnsConfigChange, location_name: "DnsConfig"))
564
600
  ServiceChange.add_member(:health_check_config, Shapes::ShapeRef.new(shape: HealthCheckConfig, location_name: "HealthCheckConfig"))
@@ -641,6 +677,12 @@ module Aws::ServiceDiscovery
641
677
  UpdatePublicDnsNamespaceResponse.add_member(:operation_id, Shapes::ShapeRef.new(shape: OperationId, location_name: "OperationId"))
642
678
  UpdatePublicDnsNamespaceResponse.struct_class = Types::UpdatePublicDnsNamespaceResponse
643
679
 
680
+ UpdateServiceAttributesRequest.add_member(:service_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "ServiceId"))
681
+ UpdateServiceAttributesRequest.add_member(:attributes, Shapes::ShapeRef.new(shape: ServiceAttributesMap, required: true, location_name: "Attributes"))
682
+ UpdateServiceAttributesRequest.struct_class = Types::UpdateServiceAttributesRequest
683
+
684
+ UpdateServiceAttributesResponse.struct_class = Types::UpdateServiceAttributesResponse
685
+
644
686
  UpdateServiceRequest.add_member(:id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "Id"))
645
687
  UpdateServiceRequest.add_member(:service, Shapes::ShapeRef.new(shape: ServiceChange, required: true, location_name: "Service"))
646
688
  UpdateServiceRequest.struct_class = Types::UpdateServiceRequest
@@ -744,6 +786,16 @@ module Aws::ServiceDiscovery
744
786
  o.errors << Shapes::ShapeRef.new(shape: ResourceInUse)
745
787
  end)
746
788
 
789
+ api.add_operation(:delete_service_attributes, Seahorse::Model::Operation.new.tap do |o|
790
+ o.name = "DeleteServiceAttributes"
791
+ o.http_method = "POST"
792
+ o.http_request_uri = "/"
793
+ o.input = Shapes::ShapeRef.new(shape: DeleteServiceAttributesRequest)
794
+ o.output = Shapes::ShapeRef.new(shape: DeleteServiceAttributesResponse)
795
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInput)
796
+ o.errors << Shapes::ShapeRef.new(shape: ServiceNotFound)
797
+ end)
798
+
747
799
  api.add_operation(:deregister_instance, Seahorse::Model::Operation.new.tap do |o|
748
800
  o.name = "DeregisterInstance"
749
801
  o.http_method = "POST"
@@ -845,6 +897,16 @@ module Aws::ServiceDiscovery
845
897
  o.errors << Shapes::ShapeRef.new(shape: ServiceNotFound)
846
898
  end)
847
899
 
900
+ api.add_operation(:get_service_attributes, Seahorse::Model::Operation.new.tap do |o|
901
+ o.name = "GetServiceAttributes"
902
+ o.http_method = "POST"
903
+ o.http_request_uri = "/"
904
+ o.input = Shapes::ShapeRef.new(shape: GetServiceAttributesRequest)
905
+ o.output = Shapes::ShapeRef.new(shape: GetServiceAttributesResponse)
906
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInput)
907
+ o.errors << Shapes::ShapeRef.new(shape: ServiceNotFound)
908
+ end)
909
+
848
910
  api.add_operation(:list_instances, Seahorse::Model::Operation.new.tap do |o|
849
911
  o.name = "ListInstances"
850
912
  o.http_method = "POST"
@@ -1008,6 +1070,17 @@ module Aws::ServiceDiscovery
1008
1070
  o.errors << Shapes::ShapeRef.new(shape: InvalidInput)
1009
1071
  o.errors << Shapes::ShapeRef.new(shape: ServiceNotFound)
1010
1072
  end)
1073
+
1074
+ api.add_operation(:update_service_attributes, Seahorse::Model::Operation.new.tap do |o|
1075
+ o.name = "UpdateServiceAttributes"
1076
+ o.http_method = "POST"
1077
+ o.http_request_uri = "/"
1078
+ o.input = Shapes::ShapeRef.new(shape: UpdateServiceAttributesRequest)
1079
+ o.output = Shapes::ShapeRef.new(shape: UpdateServiceAttributesResponse)
1080
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInput)
1081
+ o.errors << Shapes::ShapeRef.new(shape: ServiceNotFound)
1082
+ o.errors << Shapes::ShapeRef.new(shape: ServiceAttributesLimitExceededException)
1083
+ end)
1011
1084
  end
1012
1085
 
1013
1086
  end
@@ -39,6 +39,7 @@ module Aws::ServiceDiscovery
39
39
  # * {ResourceLimitExceeded}
40
40
  # * {ResourceNotFoundException}
41
41
  # * {ServiceAlreadyExists}
42
+ # * {ServiceAttributesLimitExceededException}
42
43
  # * {ServiceNotFound}
43
44
  # * {TooManyTagsException}
44
45
  #
@@ -253,6 +254,21 @@ module Aws::ServiceDiscovery
253
254
  end
254
255
  end
255
256
 
257
+ class ServiceAttributesLimitExceededException < ServiceError
258
+
259
+ # @param [Seahorse::Client::RequestContext] context
260
+ # @param [String] message
261
+ # @param [Aws::ServiceDiscovery::Types::ServiceAttributesLimitExceededException] data
262
+ def initialize(context, message, data = Aws::EmptyStructure.new)
263
+ super(context, message, data)
264
+ end
265
+
266
+ # @return [String]
267
+ def message
268
+ @message || @data[:message]
269
+ end
270
+ end
271
+
256
272
  class ServiceNotFound < ServiceError
257
273
 
258
274
  # @param [Seahorse::Client::RequestContext] context
@@ -372,6 +372,28 @@ module Aws::ServiceDiscovery
372
372
  include Aws::Structure
373
373
  end
374
374
 
375
+ # @!attribute [rw] service_id
376
+ # The ID of the service from which the attributes will be deleted.
377
+ # @return [String]
378
+ #
379
+ # @!attribute [rw] attributes
380
+ # A list of keys corresponding to each attribute that you want to
381
+ # delete.
382
+ # @return [Array<String>]
383
+ #
384
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeleteServiceAttributesRequest AWS API Documentation
385
+ #
386
+ class DeleteServiceAttributesRequest < Struct.new(
387
+ :service_id,
388
+ :attributes)
389
+ SENSITIVE = []
390
+ include Aws::Structure
391
+ end
392
+
393
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeleteServiceAttributesResponse AWS API Documentation
394
+ #
395
+ class DeleteServiceAttributesResponse < Aws::EmptyStructure; end
396
+
375
397
  # @!attribute [rw] id
376
398
  # The ID of the service that you want to delete.
377
399
  # @return [String]
@@ -558,9 +580,6 @@ module Aws::ServiceDiscovery
558
580
  # records that you want Cloud Map to create when you register an
559
581
  # instance.
560
582
  #
561
- # The record types of a service can only be changed by deleting the
562
- # service and recreating it with a new `Dnsconfig`.
563
- #
564
583
  # @!attribute [rw] namespace_id
565
584
  # *Use NamespaceId in [Service][1] instead.*
566
585
  #
@@ -634,6 +653,10 @@ module Aws::ServiceDiscovery
634
653
  # An array that contains one `DnsRecord` object for each Route 53 DNS
635
654
  # record that you want Cloud Map to create when you register an
636
655
  # instance.
656
+ #
657
+ # The record type of a service specified in a `DnsRecord` object
658
+ # can't be updated. To change a record type, you need to delete the
659
+ # service and recreate it with a new `DnsConfig`.
637
660
  # @return [Array<Types::DnsRecord>]
638
661
  #
639
662
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DnsConfig AWS API Documentation
@@ -981,6 +1004,31 @@ module Aws::ServiceDiscovery
981
1004
  include Aws::Structure
982
1005
  end
983
1006
 
1007
+ # @!attribute [rw] service_id
1008
+ # The ID of the service that you want to get attributes for.
1009
+ # @return [String]
1010
+ #
1011
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetServiceAttributesRequest AWS API Documentation
1012
+ #
1013
+ class GetServiceAttributesRequest < Struct.new(
1014
+ :service_id)
1015
+ SENSITIVE = []
1016
+ include Aws::Structure
1017
+ end
1018
+
1019
+ # @!attribute [rw] service_attributes
1020
+ # A complex type that contains the service ARN and a list of attribute
1021
+ # key-value pairs associated with the service.
1022
+ # @return [Types::ServiceAttributes]
1023
+ #
1024
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetServiceAttributesResponse AWS API Documentation
1025
+ #
1026
+ class GetServiceAttributesResponse < Struct.new(
1027
+ :service_attributes)
1028
+ SENSITIVE = []
1029
+ include Aws::Structure
1030
+ end
1031
+
984
1032
  # @!attribute [rw] id
985
1033
  # The ID of the service that you want to get settings for.
986
1034
  # @return [String]
@@ -2875,6 +2923,47 @@ module Aws::ServiceDiscovery
2875
2923
  include Aws::Structure
2876
2924
  end
2877
2925
 
2926
+ # A complex type that contains information about attributes associated
2927
+ # with a specific service.
2928
+ #
2929
+ # @!attribute [rw] service_arn
2930
+ # The ARN of the service that the attributes are associated with.
2931
+ # @return [String]
2932
+ #
2933
+ # @!attribute [rw] attributes
2934
+ # A string map that contains the following information for the service
2935
+ # that you specify in `ServiceArn`:
2936
+ #
2937
+ # * The attributes that apply to the service.
2938
+ #
2939
+ # * For each attribute, the applicable value.
2940
+ #
2941
+ # You can specify a total of 30 attributes.
2942
+ # @return [Hash<String,String>]
2943
+ #
2944
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ServiceAttributes AWS API Documentation
2945
+ #
2946
+ class ServiceAttributes < Struct.new(
2947
+ :service_arn,
2948
+ :attributes)
2949
+ SENSITIVE = []
2950
+ include Aws::Structure
2951
+ end
2952
+
2953
+ # The attribute can't be added to the service because you've exceeded
2954
+ # the quota for the number of attributes you can add to a service.
2955
+ #
2956
+ # @!attribute [rw] message
2957
+ # @return [String]
2958
+ #
2959
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ServiceAttributesLimitExceededException AWS API Documentation
2960
+ #
2961
+ class ServiceAttributesLimitExceededException < Struct.new(
2962
+ :message)
2963
+ SENSITIVE = []
2964
+ include Aws::Structure
2965
+ end
2966
+
2878
2967
  # A complex type that contains changes to an existing service.
2879
2968
  #
2880
2969
  # @!attribute [rw] description
@@ -3294,12 +3383,34 @@ module Aws::ServiceDiscovery
3294
3383
  include Aws::Structure
3295
3384
  end
3296
3385
 
3386
+ # @!attribute [rw] service_id
3387
+ # The ID of the service that you want to update.
3388
+ # @return [String]
3389
+ #
3390
+ # @!attribute [rw] attributes
3391
+ # A string map that contains attribute key-value pairs.
3392
+ # @return [Hash<String,String>]
3393
+ #
3394
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/UpdateServiceAttributesRequest AWS API Documentation
3395
+ #
3396
+ class UpdateServiceAttributesRequest < Struct.new(
3397
+ :service_id,
3398
+ :attributes)
3399
+ SENSITIVE = []
3400
+ include Aws::Structure
3401
+ end
3402
+
3403
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/UpdateServiceAttributesResponse AWS API Documentation
3404
+ #
3405
+ class UpdateServiceAttributesResponse < Aws::EmptyStructure; end
3406
+
3297
3407
  # @!attribute [rw] id
3298
3408
  # The ID of the service that you want to update.
3299
3409
  # @return [String]
3300
3410
  #
3301
3411
  # @!attribute [rw] service
3302
- # A complex type that contains the new settings for the service.
3412
+ # A complex type that contains the new settings for the service. You
3413
+ # can specify a maximum of 30 attributes (key-value pairs).
3303
3414
  # @return [Types::ServiceChange]
3304
3415
  #
3305
3416
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/UpdateServiceRequest AWS API Documentation
@@ -54,7 +54,7 @@ module Aws::ServiceDiscovery
54
54
  autoload :EndpointProvider, 'aws-sdk-servicediscovery/endpoint_provider'
55
55
  autoload :Endpoints, 'aws-sdk-servicediscovery/endpoints'
56
56
 
57
- GEM_VERSION = '1.78.0'
57
+ GEM_VERSION = '1.80.0'
58
58
 
59
59
  end
60
60
 
data/sig/client.rbs CHANGED
@@ -39,7 +39,9 @@ module Aws
39
39
  ?logger: untyped,
40
40
  ?max_attempts: Integer,
41
41
  ?profile: String,
42
+ ?request_checksum_calculation: String,
42
43
  ?request_min_compression_size_bytes: Integer,
44
+ ?response_checksum_validation: String,
43
45
  ?retry_backoff: Proc,
44
46
  ?retry_base_delay: Float,
45
47
  ?retry_jitter: (:none | :equal | :full | ^(Integer) -> Integer),
@@ -202,6 +204,16 @@ module Aws
202
204
  ) -> _DeleteServiceResponseSuccess
203
205
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DeleteServiceResponseSuccess
204
206
 
207
+ interface _DeleteServiceAttributesResponseSuccess
208
+ include ::Seahorse::Client::_ResponseSuccess[Types::DeleteServiceAttributesResponse]
209
+ end
210
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ServiceDiscovery/Client.html#delete_service_attributes-instance_method
211
+ def delete_service_attributes: (
212
+ service_id: ::String,
213
+ attributes: Array[::String]
214
+ ) -> _DeleteServiceAttributesResponseSuccess
215
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DeleteServiceAttributesResponseSuccess
216
+
205
217
  interface _DeregisterInstanceResponseSuccess
206
218
  include ::Seahorse::Client::_ResponseSuccess[Types::DeregisterInstanceResponse]
207
219
  def operation_id: () -> ::String
@@ -295,6 +307,16 @@ module Aws
295
307
  ) -> _GetServiceResponseSuccess
296
308
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetServiceResponseSuccess
297
309
 
310
+ interface _GetServiceAttributesResponseSuccess
311
+ include ::Seahorse::Client::_ResponseSuccess[Types::GetServiceAttributesResponse]
312
+ def service_attributes: () -> Types::ServiceAttributes
313
+ end
314
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ServiceDiscovery/Client.html#get_service_attributes-instance_method
315
+ def get_service_attributes: (
316
+ service_id: ::String
317
+ ) -> _GetServiceAttributesResponseSuccess
318
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetServiceAttributesResponseSuccess
319
+
298
320
  interface _ListInstancesResponseSuccess
299
321
  include ::Seahorse::Client::_ResponseSuccess[Types::ListInstancesResponse]
300
322
  def instances: () -> ::Array[Types::InstanceSummary]
@@ -502,6 +524,16 @@ module Aws
502
524
  }
503
525
  ) -> _UpdateServiceResponseSuccess
504
526
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateServiceResponseSuccess
527
+
528
+ interface _UpdateServiceAttributesResponseSuccess
529
+ include ::Seahorse::Client::_ResponseSuccess[Types::UpdateServiceAttributesResponse]
530
+ end
531
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ServiceDiscovery/Client.html#update_service_attributes-instance_method
532
+ def update_service_attributes: (
533
+ service_id: ::String,
534
+ attributes: Hash[::String, ::String]
535
+ ) -> _UpdateServiceAttributesResponseSuccess
536
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateServiceAttributesResponseSuccess
505
537
  end
506
538
  end
507
539
  end
data/sig/errors.rbs CHANGED
@@ -52,6 +52,9 @@ module Aws
52
52
  def creator_request_id: () -> ::String
53
53
  def service_id: () -> ::String
54
54
  end
55
+ class ServiceAttributesLimitExceededException < ::Aws::Errors::ServiceError
56
+ def message: () -> ::String
57
+ end
55
58
  class ServiceNotFound < ::Aws::Errors::ServiceError
56
59
  def message: () -> ::String
57
60
  end
data/sig/resource.rbs CHANGED
@@ -39,7 +39,9 @@ module Aws
39
39
  ?logger: untyped,
40
40
  ?max_attempts: Integer,
41
41
  ?profile: String,
42
+ ?request_checksum_calculation: String,
42
43
  ?request_min_compression_size_bytes: Integer,
44
+ ?response_checksum_validation: String,
43
45
  ?retry_backoff: Proc,
44
46
  ?retry_base_delay: Float,
45
47
  ?retry_jitter: (:none | :equal | :full | ^(Integer) -> Integer),
data/sig/types.rbs CHANGED
@@ -83,6 +83,15 @@ module Aws::ServiceDiscovery
83
83
  SENSITIVE: []
84
84
  end
85
85
 
86
+ class DeleteServiceAttributesRequest
87
+ attr_accessor service_id: ::String
88
+ attr_accessor attributes: ::Array[::String]
89
+ SENSITIVE: []
90
+ end
91
+
92
+ class DeleteServiceAttributesResponse < Aws::EmptyStructure
93
+ end
94
+
86
95
  class DeleteServiceRequest
87
96
  attr_accessor id: ::String
88
97
  SENSITIVE: []
@@ -204,6 +213,16 @@ module Aws::ServiceDiscovery
204
213
  SENSITIVE: []
205
214
  end
206
215
 
216
+ class GetServiceAttributesRequest
217
+ attr_accessor service_id: ::String
218
+ SENSITIVE: []
219
+ end
220
+
221
+ class GetServiceAttributesResponse
222
+ attr_accessor service_attributes: Types::ServiceAttributes
223
+ SENSITIVE: []
224
+ end
225
+
207
226
  class GetServiceRequest
208
227
  attr_accessor id: ::String
209
228
  SENSITIVE: []
@@ -528,6 +547,17 @@ module Aws::ServiceDiscovery
528
547
  SENSITIVE: []
529
548
  end
530
549
 
550
+ class ServiceAttributes
551
+ attr_accessor service_arn: ::String
552
+ attr_accessor attributes: ::Hash[::String, ::String]
553
+ SENSITIVE: []
554
+ end
555
+
556
+ class ServiceAttributesLimitExceededException
557
+ attr_accessor message: ::String
558
+ SENSITIVE: []
559
+ end
560
+
531
561
  class ServiceChange
532
562
  attr_accessor description: ::String
533
563
  attr_accessor dns_config: Types::DnsConfigChange
@@ -634,6 +664,15 @@ module Aws::ServiceDiscovery
634
664
  SENSITIVE: []
635
665
  end
636
666
 
667
+ class UpdateServiceAttributesRequest
668
+ attr_accessor service_id: ::String
669
+ attr_accessor attributes: ::Hash[::String, ::String]
670
+ SENSITIVE: []
671
+ end
672
+
673
+ class UpdateServiceAttributesResponse < Aws::EmptyStructure
674
+ end
675
+
637
676
  class UpdateServiceRequest
638
677
  attr_accessor id: ::String
639
678
  attr_accessor service: Types::ServiceChange
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-servicediscovery
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.78.0
4
+ version: 1.80.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: 2024-11-18 00:00:00.000000000 Z
11
+ date: 2025-01-15 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.210.0
22
+ version: 3.216.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.210.0
32
+ version: 3.216.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement