aws-sdk-servicediscovery 1.78.0 → 1.80.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
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