aws-sdk-servicediscovery 1.22.0 → 1.27.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: 58aa190a387c30a293a49dc246b5f0d4115308a265e3c4b6425f73ae86a57040
4
- data.tar.gz: 97a95e7608b185e0b104b92d89a280c3a2689d07bf1fa269a02754c961b3e579
3
+ metadata.gz: 3f0a255c876f09ed15a61f99213c510a3fd8850e8ca56b199637383c7cb8ec54
4
+ data.tar.gz: 6378372a4b55315f2d0a0014ee056c2e9062459a84db2d98b43d58cb300ef8ff
5
5
  SHA512:
6
- metadata.gz: 2225c0e48c17f8c9c3146879455a25d334e894fe031473178c575af1e9f83b42a68a1aa859493dcd76d7db44492c34f1fce8220b0a80f87524461f305ae615a0
7
- data.tar.gz: 13d84ceb7a2da5fbd132fe549613eb55f1d5e07d4174556933408b215c7122769367dfd9ff595ec981f722403d00de6a0ff92d99cfdb138f85c67a8a163472ce
6
+ metadata.gz: 75bc789dbd304be682610a4151057004fda05f746ea544de398e9ccf1ae670656dc3684d4f0dea8f2deaea11dc220eb24848c9a05e14fe91d9e486cf8105c214
7
+ data.tar.gz: 0de87d172be8a8a3a0a254c1e45e3429acfba8b9643b3d84b42fb9d0da90e4434e87ba0a2699d2b6c8fa3d6c5f5e1db7999d4135138b29626e4f1eab5c6fd273
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -45,6 +47,6 @@ require_relative 'aws-sdk-servicediscovery/customizations'
45
47
  # @service
46
48
  module Aws::ServiceDiscovery
47
49
 
48
- GEM_VERSION = '1.22.0'
50
+ GEM_VERSION = '1.27.0'
49
51
 
50
52
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -24,6 +26,7 @@ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
26
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
27
30
  require 'aws-sdk-core/plugins/signature_v4.rb'
28
31
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
29
32
 
@@ -69,6 +72,7 @@ module Aws::ServiceDiscovery
69
72
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
70
73
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
71
74
  add_plugin(Aws::Plugins::TransferEncoding)
75
+ add_plugin(Aws::Plugins::HttpChecksum)
72
76
  add_plugin(Aws::Plugins::SignatureV4)
73
77
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
74
78
 
@@ -161,7 +165,7 @@ module Aws::ServiceDiscovery
161
165
  # @option options [String] :endpoint
162
166
  # The client endpoint is normally constructed from the `:region`
163
167
  # option. You should only configure an `:endpoint` when connecting
164
- # to test endpoints. This should be a valid HTTP(S) URI.
168
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
165
169
  #
166
170
  # @option options [Integer] :endpoint_cache_max_entries (1000)
167
171
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -176,7 +180,7 @@ module Aws::ServiceDiscovery
176
180
  # requests fetching endpoints information. Defaults to 60 sec.
177
181
  #
178
182
  # @option options [Boolean] :endpoint_discovery (false)
179
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
183
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
180
184
  #
181
185
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
182
186
  # The log formatter.
@@ -322,8 +326,8 @@ module Aws::ServiceDiscovery
322
326
  # an HTTP namespace can be discovered using a `DiscoverInstances`
323
327
  # request but can't be discovered using DNS.
324
328
  #
325
- # For the current limit on the number of namespaces that you can create
326
- # using the same AWS account, see [AWS Cloud Map Limits][1] in the *AWS
329
+ # For the current quota on the number of namespaces that you can create
330
+ # using the same AWS account, see [AWS Cloud Map quotas][1] in the *AWS
327
331
  # Cloud Map Developer Guide*.
328
332
  #
329
333
  #
@@ -345,16 +349,44 @@ module Aws::ServiceDiscovery
345
349
  # @option params [String] :description
346
350
  # A description for the namespace.
347
351
  #
352
+ # @option params [Array<Types::Tag>] :tags
353
+ # The tags to add to the namespace. Each tag consists of a key and an
354
+ # optional value, both of which you define. Tag keys can have a maximum
355
+ # character length of 128 characters, and tag values can have a maximum
356
+ # length of 256 characters.
357
+ #
348
358
  # @return [Types::CreateHttpNamespaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
349
359
  #
350
360
  # * {Types::CreateHttpNamespaceResponse#operation_id #operation_id} => String
351
361
  #
362
+ #
363
+ # @example Example: CreateHttpNamespace example
364
+ #
365
+ # # This example creates an HTTP namespace.
366
+ #
367
+ # resp = client.create_http_namespace({
368
+ # creator_request_id: "example-creator-request-id-0001",
369
+ # description: "Example.com AWS Cloud Map HTTP Namespace",
370
+ # name: "example-http.com",
371
+ # })
372
+ #
373
+ # resp.to_h outputs the following:
374
+ # {
375
+ # operation_id: "httpvoqozuhfet5kzxoxg-a-response-example",
376
+ # }
377
+ #
352
378
  # @example Request syntax with placeholder values
353
379
  #
354
380
  # resp = client.create_http_namespace({
355
381
  # name: "NamespaceName", # required
356
382
  # creator_request_id: "ResourceId",
357
383
  # description: "ResourceDescription",
384
+ # tags: [
385
+ # {
386
+ # key: "TagKey", # required
387
+ # value: "TagValue", # required
388
+ # },
389
+ # ],
358
390
  # })
359
391
  #
360
392
  # @example Response structure
@@ -374,7 +406,7 @@ module Aws::ServiceDiscovery
374
406
  # inside a specified Amazon VPC. The namespace defines your service
375
407
  # naming scheme. For example, if you name your namespace `example.com`
376
408
  # and name your service `backend`, the resulting DNS name for the
377
- # service will be `backend.example.com`. For the current limit on the
409
+ # service will be `backend.example.com`. For the current quota on the
378
410
  # number of namespaces that you can create using the same AWS account,
379
411
  # see [AWS Cloud Map Limits][1] in the *AWS Cloud Map Developer Guide*.
380
412
  #
@@ -385,7 +417,7 @@ module Aws::ServiceDiscovery
385
417
  # @option params [required, String] :name
386
418
  # The name that you want to assign to this namespace. When you create a
387
419
  # private DNS namespace, AWS Cloud Map automatically creates an Amazon
388
- # Route 53 private hosted zone that has the same name as the namespace.
420
+ # Route 53 private hosted zone that has the same name as the namespace.
389
421
  #
390
422
  # @option params [String] :creator_request_id
391
423
  # A unique string that identifies the request and that allows failed
@@ -403,6 +435,12 @@ module Aws::ServiceDiscovery
403
435
  # The ID of the Amazon VPC that you want to associate the namespace
404
436
  # with.
405
437
  #
438
+ # @option params [Array<Types::Tag>] :tags
439
+ # The tags to add to the namespace. Each tag consists of a key and an
440
+ # optional value, both of which you define. Tag keys can have a maximum
441
+ # character length of 128 characters, and tag values can have a maximum
442
+ # length of 256 characters.
443
+ #
406
444
  # @return [Types::CreatePrivateDnsNamespaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
407
445
  #
408
446
  # * {Types::CreatePrivateDnsNamespaceResponse#operation_id #operation_id} => String
@@ -430,6 +468,12 @@ module Aws::ServiceDiscovery
430
468
  # creator_request_id: "ResourceId",
431
469
  # description: "ResourceDescription",
432
470
  # vpc: "ResourceId", # required
471
+ # tags: [
472
+ # {
473
+ # key: "TagKey", # required
474
+ # value: "TagValue", # required
475
+ # },
476
+ # ],
433
477
  # })
434
478
  #
435
479
  # @example Response structure
@@ -449,7 +493,7 @@ module Aws::ServiceDiscovery
449
493
  # internet. The namespace defines your service naming scheme. For
450
494
  # example, if you name your namespace `example.com` and name your
451
495
  # service `backend`, the resulting DNS name for the service will be
452
- # `backend.example.com`. For the current limit on the number of
496
+ # `backend.example.com`. For the current quota on the number of
453
497
  # namespaces that you can create using the same AWS account, see [AWS
454
498
  # Cloud Map Limits][1] in the *AWS Cloud Map Developer Guide*.
455
499
  #
@@ -472,16 +516,44 @@ module Aws::ServiceDiscovery
472
516
  # @option params [String] :description
473
517
  # A description for the namespace.
474
518
  #
519
+ # @option params [Array<Types::Tag>] :tags
520
+ # The tags to add to the namespace. Each tag consists of a key and an
521
+ # optional value, both of which you define. Tag keys can have a maximum
522
+ # character length of 128 characters, and tag values can have a maximum
523
+ # length of 256 characters.
524
+ #
475
525
  # @return [Types::CreatePublicDnsNamespaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
476
526
  #
477
527
  # * {Types::CreatePublicDnsNamespaceResponse#operation_id #operation_id} => String
478
528
  #
529
+ #
530
+ # @example Example: CreatePublicDnsNamespace example
531
+ #
532
+ # # This example creates a public namespace based on DNS.
533
+ #
534
+ # resp = client.create_public_dns_namespace({
535
+ # creator_request_id: "example-creator-request-id-0003",
536
+ # description: "Example.com AWS Cloud Map Public DNS Namespace",
537
+ # name: "example-public-dns.com",
538
+ # })
539
+ #
540
+ # resp.to_h outputs the following:
541
+ # {
542
+ # operation_id: "dns2voqozuhfet5kzxoxg-a-response-example",
543
+ # }
544
+ #
479
545
  # @example Request syntax with placeholder values
480
546
  #
481
547
  # resp = client.create_public_dns_namespace({
482
548
  # name: "NamespaceName", # required
483
549
  # creator_request_id: "ResourceId",
484
550
  # description: "ResourceDescription",
551
+ # tags: [
552
+ # {
553
+ # key: "TagKey", # required
554
+ # value: "TagValue", # required
555
+ # },
556
+ # ],
485
557
  # })
486
558
  #
487
559
  # @example Response structure
@@ -501,17 +573,17 @@ module Aws::ServiceDiscovery
501
573
  # entities:
502
574
  #
503
575
  # * For public and private DNS namespaces, one of the following
504
- # combinations of DNS records in Amazon Route 53:
576
+ # combinations of DNS records in Amazon Route 53:
505
577
  #
506
- # * A
578
+ # * `A`
507
579
  #
508
- # * AAAA
580
+ # * `AAAA`
509
581
  #
510
- # * A and AAAA
582
+ # * `A` and `AAAA`
511
583
  #
512
- # * SRV
584
+ # * `SRV`
513
585
  #
514
- # * CNAME
586
+ # * `CNAME`
515
587
  #
516
588
  # * Optionally, a health check
517
589
  #
@@ -519,7 +591,7 @@ module Aws::ServiceDiscovery
519
591
  # request, and AWS Cloud Map uses the values in the configuration to
520
592
  # create the specified entities.
521
593
  #
522
- # For the current limit on the number of instances that you can register
594
+ # For the current quota on the number of instances that you can register
523
595
  # using the same namespace and using the same service, see [AWS Cloud
524
596
  # Map Limits][2] in the *AWS Cloud Map Developer Guide*.
525
597
  #
@@ -531,17 +603,17 @@ module Aws::ServiceDiscovery
531
603
  # @option params [required, String] :name
532
604
  # The name that you want to assign to the service.
533
605
  #
534
- # If you want AWS Cloud Map to create an SRV record when you register an
535
- # instance, and if you're using a system that requires a specific SRV
536
- # format, such as [HAProxy][1], specify the following for `Name`\:
606
+ # If you want AWS Cloud Map to create an `SRV` record when you register
607
+ # an instance, and if you're using a system that requires a specific
608
+ # `SRV` format, such as [HAProxy][1], specify the following for `Name`\:
537
609
  #
538
610
  # * Start the name with an underscore (\_), such as `_exampleservice`
539
611
  #
540
612
  # * End the name with *.\_protocol*, such as `._tcp`
541
613
  #
542
- # When you register an instance, AWS Cloud Map creates an SRV record and
543
- # assigns a name to the record by concatenating the service name and the
544
- # namespace name, for example:
614
+ # When you register an instance, AWS Cloud Map creates an `SRV` record
615
+ # and assigns a name to the record by concatenating the service name and
616
+ # the namespace name, for example:
545
617
  #
546
618
  # `_exampleservice._tcp.example.com`
547
619
  #
@@ -565,15 +637,15 @@ module Aws::ServiceDiscovery
565
637
  # A description for the service.
566
638
  #
567
639
  # @option params [Types::DnsConfig] :dns_config
568
- # A complex type that contains information about the Amazon Route 53
640
+ # A complex type that contains information about the Amazon Route 53
569
641
  # records that you want AWS Cloud Map to create when you register an
570
642
  # instance.
571
643
  #
572
644
  # @option params [Types::HealthCheckConfig] :health_check_config
573
645
  # *Public DNS and HTTP namespaces only.* A complex type that contains
574
- # settings for an optional Route 53 health check. If you specify
646
+ # settings for an optional Route 53 health check. If you specify
575
647
  # settings for a health check, AWS Cloud Map associates the health check
576
- # with all the Route 53 DNS records that you specify in `DnsConfig`.
648
+ # with all the Route 53 DNS records that you specify in `DnsConfig`.
577
649
  #
578
650
  # If you specify a health check configuration, you can specify either
579
651
  # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both.
@@ -595,6 +667,12 @@ module Aws::ServiceDiscovery
595
667
  # You can't add, update, or delete a `HealthCheckCustomConfig`
596
668
  # configuration from an existing service.
597
669
  #
670
+ # @option params [Array<Types::Tag>] :tags
671
+ # The tags to add to the service. Each tag consists of a key and an
672
+ # optional value, both of which you define. Tag keys can have a maximum
673
+ # character length of 128 characters, and tag values can have a maximum
674
+ # length of 256 characters.
675
+ #
598
676
  # @return [Types::CreateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
599
677
  #
600
678
  # * {Types::CreateServiceResponse#service #service} => Types::Service
@@ -667,6 +745,12 @@ module Aws::ServiceDiscovery
667
745
  # health_check_custom_config: {
668
746
  # failure_threshold: 1,
669
747
  # },
748
+ # tags: [
749
+ # {
750
+ # key: "TagKey", # required
751
+ # value: "TagValue", # required
752
+ # },
753
+ # ],
670
754
  # })
671
755
  #
672
756
  # @example Response structure
@@ -777,7 +861,7 @@ module Aws::ServiceDiscovery
777
861
  req.send_request(options)
778
862
  end
779
863
 
780
- # Deletes the Amazon Route 53 DNS records and health check, if any, that
864
+ # Deletes the Amazon Route 53 DNS records and health check, if any, that
781
865
  # AWS Cloud Map created for the specified instance.
782
866
  #
783
867
  # @option params [required, String] :service_id
@@ -933,6 +1017,30 @@ module Aws::ServiceDiscovery
933
1017
  #
934
1018
  # * {Types::GetInstanceResponse#instance #instance} => Types::Instance
935
1019
  #
1020
+ #
1021
+ # @example Example: GetInstance example
1022
+ #
1023
+ # # This example gets information about a specified instance.
1024
+ #
1025
+ # resp = client.get_instance({
1026
+ # instance_id: "i-abcd1234",
1027
+ # service_id: "srv-e4anhexample0004",
1028
+ # })
1029
+ #
1030
+ # resp.to_h outputs the following:
1031
+ # {
1032
+ # instance: {
1033
+ # attributes: {
1034
+ # "AWS_INSTANCE_IPV4" => "192.0.2.44",
1035
+ # "AWS_INSTANCE_PORT" => "80",
1036
+ # "color" => "green",
1037
+ # "region" => "us-west-2",
1038
+ # "stage" => "beta",
1039
+ # },
1040
+ # id: "i-abcd1234",
1041
+ # },
1042
+ # }
1043
+ #
936
1044
  # @example Request syntax with placeholder values
937
1045
  #
938
1046
  # resp = client.get_instance({
@@ -1004,6 +1112,23 @@ module Aws::ServiceDiscovery
1004
1112
  #
1005
1113
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1006
1114
  #
1115
+ #
1116
+ # @example Example: GetInstancesHealthStatus example
1117
+ #
1118
+ # # This example gets the current health status of one or more instances that are associate with a specified service.
1119
+ #
1120
+ # resp = client.get_instances_health_status({
1121
+ # service_id: "srv-e4anhexample0004",
1122
+ # })
1123
+ #
1124
+ # resp.to_h outputs the following:
1125
+ # {
1126
+ # status: {
1127
+ # "i-abcd1234" => "HEALTHY",
1128
+ # "i-abcd1235" => "UNHEALTHY",
1129
+ # },
1130
+ # }
1131
+ #
1007
1132
  # @example Request syntax with placeholder values
1008
1133
  #
1009
1134
  # resp = client.get_instances_health_status({
@@ -1037,6 +1162,35 @@ module Aws::ServiceDiscovery
1037
1162
  #
1038
1163
  # * {Types::GetNamespaceResponse#namespace #namespace} => Types::Namespace
1039
1164
  #
1165
+ #
1166
+ # @example Example: GetNamespace example
1167
+ #
1168
+ # # This example gets information about a specified namespace.
1169
+ #
1170
+ # resp = client.get_namespace({
1171
+ # id: "ns-e4anhexample0004",
1172
+ # })
1173
+ #
1174
+ # resp.to_h outputs the following:
1175
+ # {
1176
+ # namespace: {
1177
+ # arn: "arn:aws:servicediscovery:us-west-2: 123456789120:namespace/ns-e1tpmexample0001",
1178
+ # create_date: Time.parse("20181118T211712Z"),
1179
+ # creator_request_id: "example-creator-request-id-0001",
1180
+ # description: "Example.com AWS Cloud Map HTTP Namespace",
1181
+ # id: "ns-e1tpmexample0001",
1182
+ # name: "example-http.com",
1183
+ # properties: {
1184
+ # dns_properties: {
1185
+ # },
1186
+ # http_properties: {
1187
+ # http_name: "example-http.com",
1188
+ # },
1189
+ # },
1190
+ # type: "HTTP",
1191
+ # },
1192
+ # }
1193
+ #
1040
1194
  # @example Request syntax with placeholder values
1041
1195
  #
1042
1196
  # resp = client.get_namespace({
@@ -1143,6 +1297,33 @@ module Aws::ServiceDiscovery
1143
1297
  #
1144
1298
  # * {Types::GetServiceResponse#service #service} => Types::Service
1145
1299
  #
1300
+ #
1301
+ # @example Example: GetService Example
1302
+ #
1303
+ # # This example gets the settings for a specified service.
1304
+ #
1305
+ # resp = client.get_service({
1306
+ # id: "srv-e4anhexample0004",
1307
+ # })
1308
+ #
1309
+ # resp.to_h outputs the following:
1310
+ # {
1311
+ # service: {
1312
+ # arn: "arn:aws:servicediscovery:us-west-2:123456789120:service/srv-e4anhexample0004",
1313
+ # create_date: Time.parse("20181118T211707Z"),
1314
+ # creator_request_id: "example-creator-request-id-0004",
1315
+ # description: "Example.com AWS Cloud Map HTTP Service",
1316
+ # health_check_config: {
1317
+ # failure_threshold: 3,
1318
+ # resource_path: "/",
1319
+ # type: "HTTPS",
1320
+ # },
1321
+ # id: "srv-e4anhexample0004",
1322
+ # name: "example-http-service",
1323
+ # namespace_id: "ns-e4anhexample0004",
1324
+ # },
1325
+ # }
1326
+ #
1146
1327
  # @example Request syntax with placeholder values
1147
1328
  #
1148
1329
  # resp = client.get_service({
@@ -1421,6 +1602,42 @@ module Aws::ServiceDiscovery
1421
1602
  #
1422
1603
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1423
1604
  #
1605
+ #
1606
+ # @example Example: ListOperations Example
1607
+ #
1608
+ # # This example gets the operations that have a STATUS of either PENDING or SUCCESS.
1609
+ #
1610
+ # resp = client.list_operations({
1611
+ # filters: [
1612
+ # {
1613
+ # condition: "IN",
1614
+ # name: "STATUS",
1615
+ # values: [
1616
+ # "PENDING",
1617
+ # "SUCCESS",
1618
+ # ],
1619
+ # },
1620
+ # ],
1621
+ # })
1622
+ #
1623
+ # resp.to_h outputs the following:
1624
+ # {
1625
+ # operations: [
1626
+ # {
1627
+ # id: "76yy8ovhpdz0plmjzbsnqgnrqvpv2qdt-kexample",
1628
+ # status: "SUCCESS",
1629
+ # },
1630
+ # {
1631
+ # id: "prysnyzpji3u2ciy45nke83x2zanl7yk-dexample",
1632
+ # status: "SUCCESS",
1633
+ # },
1634
+ # {
1635
+ # id: "ko4ekftir7kzlbechsh7xvcdgcpk66gh-7example",
1636
+ # status: "PENDING",
1637
+ # },
1638
+ # ],
1639
+ # }
1640
+ #
1424
1641
  # @example Request syntax with placeholder values
1425
1642
  #
1426
1643
  # resp = client.list_operations({
@@ -1560,6 +1777,60 @@ module Aws::ServiceDiscovery
1560
1777
  req.send_request(options)
1561
1778
  end
1562
1779
 
1780
+ # Lists tags for the specified resource.
1781
+ #
1782
+ # @option params [required, String] :resource_arn
1783
+ # The Amazon Resource Name (ARN) of the resource that you want to
1784
+ # retrieve tags for.
1785
+ #
1786
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1787
+ #
1788
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Array&lt;Types::Tag&gt;
1789
+ #
1790
+ #
1791
+ # @example Example: ListTagsForResource example
1792
+ #
1793
+ # # This example lists the tags of a resource.
1794
+ #
1795
+ # resp = client.list_tags_for_resource({
1796
+ # resource_arn: "arn:aws:servicediscovery:us-east-1:123456789012:namespace/ns-ylexjili4cdxy3xm",
1797
+ # })
1798
+ #
1799
+ # resp.to_h outputs the following:
1800
+ # {
1801
+ # tags: [
1802
+ # {
1803
+ # key: "Project",
1804
+ # value: "Zeta",
1805
+ # },
1806
+ # {
1807
+ # key: "Department",
1808
+ # value: "Engineering",
1809
+ # },
1810
+ # ],
1811
+ # }
1812
+ #
1813
+ # @example Request syntax with placeholder values
1814
+ #
1815
+ # resp = client.list_tags_for_resource({
1816
+ # resource_arn: "AmazonResourceName", # required
1817
+ # })
1818
+ #
1819
+ # @example Response structure
1820
+ #
1821
+ # resp.tags #=> Array
1822
+ # resp.tags[0].key #=> String
1823
+ # resp.tags[0].value #=> String
1824
+ #
1825
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListTagsForResource AWS API Documentation
1826
+ #
1827
+ # @overload list_tags_for_resource(params = {})
1828
+ # @param [Hash] params ({})
1829
+ def list_tags_for_resource(params = {}, options = {})
1830
+ req = build_request(:list_tags_for_resource, params)
1831
+ req.send_request(options)
1832
+ end
1833
+
1563
1834
  # Creates or updates one or more records and, optionally, creates a
1564
1835
  # health check based on the settings in a specified service. When you
1565
1836
  # submit a `RegisterInstance` request, the following occurs:
@@ -1590,7 +1861,7 @@ module Aws::ServiceDiscovery
1590
1861
  # * **If you didn't specify a health check configuration**\: returns
1591
1862
  # all the records
1592
1863
  #
1593
- # For the current limit on the number of instances that you can register
1864
+ # For the current quota on the number of instances that you can register
1594
1865
  # using the same namespace and using the same service, see [AWS Cloud
1595
1866
  # Map Limits][2] in the *AWS Cloud Map Developer Guide*.
1596
1867
  #
@@ -1608,8 +1879,8 @@ module Aws::ServiceDiscovery
1608
1879
  # following:
1609
1880
  #
1610
1881
  # * If the service that is specified by `ServiceId` includes settings
1611
- # for an SRV record, the value of `InstanceId` is automatically
1612
- # included as part of the value for the SRV record. For more
1882
+ # for an `SRV` record, the value of `InstanceId` is automatically
1883
+ # included as part of the value for the `SRV` record. For more
1613
1884
  # information, see [DnsRecord &gt; Type][1].
1614
1885
  #
1615
1886
  # * You can use this value to update an existing instance.
@@ -1656,33 +1927,41 @@ module Aws::ServiceDiscovery
1656
1927
  #
1657
1928
  # **AWS\_ALIAS\_DNS\_NAME**
1658
1929
  #
1659
- # ****
1660
- #
1661
- # If you want AWS Cloud Map to create an Amazon Route 53 alias record
1930
+ # If you want AWS Cloud Map to create an Amazon Route 53 alias record
1662
1931
  # that routes traffic to an Elastic Load Balancing load balancer,
1663
1932
  # specify the DNS name that is associated with the load balancer. For
1664
1933
  # information about how to get the DNS name, see "DNSName" in the
1665
- # topic [AliasTarget][1] in the *Route 53 API Reference*.
1934
+ # topic [AliasTarget][1] in the *Route 53 API Reference*.
1666
1935
  #
1667
1936
  # Note the following:
1668
1937
  #
1669
1938
  # * The configuration for the service that is specified by `ServiceId`
1670
- # must include settings for an A record, an AAAA record, or both.
1939
+ # must include settings for an `A` record, an `AAAA` record, or both.
1671
1940
  #
1672
1941
  # * In the service that is specified by `ServiceId`, the value of
1673
1942
  # `RoutingPolicy` must be `WEIGHTED`.
1674
1943
  #
1675
1944
  # * If the service that is specified by `ServiceId` includes
1676
- # `HealthCheckConfig` settings, AWS Cloud Map will create the Route 53
1945
+ # `HealthCheckConfig` settings, AWS Cloud Map will create the Route 53
1677
1946
  # health check, but it won't associate the health check with the
1678
1947
  # alias record.
1679
1948
  #
1680
1949
  # * Auto naming currently doesn't support creating alias records that
1681
- # route traffic to AWS resources other than ELB load balancers.
1950
+ # route traffic to AWS resources other than Elastic Load Balancing
1951
+ # load balancers.
1682
1952
  #
1683
1953
  # * If you specify a value for `AWS_ALIAS_DNS_NAME`, don't specify
1684
1954
  # values for any of the `AWS_INSTANCE` attributes.
1685
1955
  #
1956
+ # **AWS\_EC2\_INSTANCE\_ID**
1957
+ #
1958
+ # *HTTP namespaces only.* The Amazon EC2 instance ID for the instance.
1959
+ # If the `AWS_EC2_INSTANCE_ID` attribute is specified, then the only
1960
+ # other attribute that can be specified is `AWS_INIT_HEALTH_STATUS`.
1961
+ # When the `AWS_EC2_INSTANCE_ID` attribute is specified, then the
1962
+ # `AWS_INSTANCE_IPV4` attribute will be filled out with the primary
1963
+ # private IPv4 address.
1964
+ #
1686
1965
  # **AWS\_INIT\_HEALTH\_STATUS**
1687
1966
  #
1688
1967
  # If the service configuration includes `HealthCheckCustomConfig`, you
@@ -1693,51 +1972,53 @@ module Aws::ServiceDiscovery
1693
1972
  #
1694
1973
  # **AWS\_INSTANCE\_CNAME**
1695
1974
  #
1696
- # If the service configuration includes a CNAME record, the domain name
1697
- # that you want Route 53 to return in response to DNS queries, for
1975
+ # If the service configuration includes a `CNAME` record, the domain
1976
+ # name that you want Route 53 to return in response to DNS queries, for
1698
1977
  # example, `example.com`.
1699
1978
  #
1700
1979
  # This value is required if the service specified by `ServiceId`
1701
- # includes settings for an CNAME record.
1980
+ # includes settings for an `CNAME` record.
1702
1981
  #
1703
1982
  # **AWS\_INSTANCE\_IPV4**
1704
1983
  #
1705
- # If the service configuration includes an A record, the IPv4 address
1706
- # that you want Route 53 to return in response to DNS queries, for
1984
+ # If the service configuration includes an `A` record, the IPv4 address
1985
+ # that you want Route 53 to return in response to DNS queries, for
1707
1986
  # example, `192.0.2.44`.
1708
1987
  #
1709
1988
  # This value is required if the service specified by `ServiceId`
1710
- # includes settings for an A record. If the service includes settings
1711
- # for an SRV record, you must specify a value for `AWS_INSTANCE_IPV4`,
1989
+ # includes settings for an `A` record. If the service includes settings
1990
+ # for an `SRV` record, you must specify a value for `AWS_INSTANCE_IPV4`,
1712
1991
  # `AWS_INSTANCE_IPV6`, or both.
1713
1992
  #
1714
1993
  # **AWS\_INSTANCE\_IPV6**
1715
1994
  #
1716
- # If the service configuration includes an AAAA record, the IPv6 address
1717
- # that you want Route 53 to return in response to DNS queries, for
1718
- # example, `2001:0db8:85a3:0000:0000:abcd:0001:2345`.
1995
+ # If the service configuration includes an `AAAA` record, the IPv6
1996
+ # address that you want Route 53 to return in response to DNS queries,
1997
+ # for example, `2001:0db8:85a3:0000:0000:abcd:0001:2345`.
1719
1998
  #
1720
1999
  # This value is required if the service specified by `ServiceId`
1721
- # includes settings for an AAAA record. If the service includes settings
1722
- # for an SRV record, you must specify a value for `AWS_INSTANCE_IPV4`,
1723
- # `AWS_INSTANCE_IPV6`, or both.
2000
+ # includes settings for an `AAAA` record. If the service includes
2001
+ # settings for an `SRV` record, you must specify a value for
2002
+ # `AWS_INSTANCE_IPV4`, `AWS_INSTANCE_IPV6`, or both.
1724
2003
  #
1725
2004
  # **AWS\_INSTANCE\_PORT**
1726
2005
  #
1727
- # If the service includes an SRV record, the value that you want Route
1728
- # 53 to return for the port.
2006
+ # If the service includes an `SRV` record, the value that you want
2007
+ # Route 53 to return for the port.
1729
2008
  #
1730
2009
  # If the service includes `HealthCheckConfig`, the port on the endpoint
1731
- # that you want Route 53 to send requests to.
2010
+ # that you want Route 53 to send requests to.
1732
2011
  #
1733
- # This value is required if you specified settings for an SRV record or
1734
- # a Route 53 health check when you created the service.
2012
+ # This value is required if you specified settings for an `SRV` record
2013
+ # or a Route 53 health check when you created the service.
1735
2014
  #
1736
2015
  # **Custom attributes**
1737
2016
  #
1738
2017
  # You can add up to 30 custom attributes. For each key-value pair, the
1739
2018
  # maximum length of the attribute name is 255 characters, and the
1740
- # maximum length of the attribute value is 1,024 characters.
2019
+ # maximum length of the attribute value is 1,024 characters. The total
2020
+ # size of all provided attributes (sum of all keys and values) must not
2021
+ # exceed 5,000 characters.
1741
2022
  #
1742
2023
  #
1743
2024
  #
@@ -1791,13 +2072,114 @@ module Aws::ServiceDiscovery
1791
2072
  req.send_request(options)
1792
2073
  end
1793
2074
 
2075
+ # Adds one or more tags to the specified resource.
2076
+ #
2077
+ # @option params [required, String] :resource_arn
2078
+ # The Amazon Resource Name (ARN) of the resource that you want to
2079
+ # retrieve tags for.
2080
+ #
2081
+ # @option params [required, Array<Types::Tag>] :tags
2082
+ # The tags to add to the specified resource. Specifying the tag key is
2083
+ # required. You can set the value of a tag to an empty string, but you
2084
+ # can't set the value of a tag to null.
2085
+ #
2086
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2087
+ #
2088
+ #
2089
+ # @example Example: TagResource example
2090
+ #
2091
+ # # This example adds "Department" and "Project" tags to a resource.
2092
+ #
2093
+ # resp = client.tag_resource({
2094
+ # resource_arn: "arn:aws:servicediscovery:us-east-1:123456789012:namespace/ns-ylexjili4cdxy3xm",
2095
+ # tags: [
2096
+ # {
2097
+ # key: "Department",
2098
+ # value: "Engineering",
2099
+ # },
2100
+ # {
2101
+ # key: "Project",
2102
+ # value: "Zeta",
2103
+ # },
2104
+ # ],
2105
+ # })
2106
+ #
2107
+ # resp.to_h outputs the following:
2108
+ # {
2109
+ # }
2110
+ #
2111
+ # @example Request syntax with placeholder values
2112
+ #
2113
+ # resp = client.tag_resource({
2114
+ # resource_arn: "AmazonResourceName", # required
2115
+ # tags: [ # required
2116
+ # {
2117
+ # key: "TagKey", # required
2118
+ # value: "TagValue", # required
2119
+ # },
2120
+ # ],
2121
+ # })
2122
+ #
2123
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/TagResource AWS API Documentation
2124
+ #
2125
+ # @overload tag_resource(params = {})
2126
+ # @param [Hash] params ({})
2127
+ def tag_resource(params = {}, options = {})
2128
+ req = build_request(:tag_resource, params)
2129
+ req.send_request(options)
2130
+ end
2131
+
2132
+ # Removes one or more tags from the specified resource.
2133
+ #
2134
+ # @option params [required, String] :resource_arn
2135
+ # The Amazon Resource Name (ARN) of the resource that you want to
2136
+ # retrieve tags for.
2137
+ #
2138
+ # @option params [required, Array<String>] :tag_keys
2139
+ # The tag keys to remove from the specified resource.
2140
+ #
2141
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2142
+ #
2143
+ #
2144
+ # @example Example: UntagResource example
2145
+ #
2146
+ # # This example removes the "Department" and "Project" tags from a resource.
2147
+ #
2148
+ # resp = client.untag_resource({
2149
+ # resource_arn: "arn:aws:servicediscovery:us-east-1:123456789012:namespace/ns-ylexjili4cdxy3xm",
2150
+ # tag_keys: [
2151
+ # "Project",
2152
+ # "Department",
2153
+ # ],
2154
+ # })
2155
+ #
2156
+ # resp.to_h outputs the following:
2157
+ # {
2158
+ # }
2159
+ #
2160
+ # @example Request syntax with placeholder values
2161
+ #
2162
+ # resp = client.untag_resource({
2163
+ # resource_arn: "AmazonResourceName", # required
2164
+ # tag_keys: ["TagKey"], # required
2165
+ # })
2166
+ #
2167
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/UntagResource AWS API Documentation
2168
+ #
2169
+ # @overload untag_resource(params = {})
2170
+ # @param [Hash] params ({})
2171
+ def untag_resource(params = {}, options = {})
2172
+ req = build_request(:untag_resource, params)
2173
+ req.send_request(options)
2174
+ end
2175
+
1794
2176
  # Submits a request to change the health status of a custom health check
1795
2177
  # to healthy or unhealthy.
1796
2178
  #
1797
2179
  # You can use `UpdateInstanceCustomHealthStatus` to change the status
1798
2180
  # only for custom health checks, which you define using
1799
2181
  # `HealthCheckCustomConfig` when you create a service. You can't use it
1800
- # to change the status for Route 53 health checks, which you define
2182
+ # to change the status for Route 53 health checks, which you define
1801
2183
  # using `HealthCheckConfig`.
1802
2184
  #
1803
2185
  # For more information, see [HealthCheckCustomConfig][1].
@@ -1818,6 +2200,18 @@ module Aws::ServiceDiscovery
1818
2200
  #
1819
2201
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1820
2202
  #
2203
+ #
2204
+ # @example Example: UpdateInstanceCustomHealthStatus Example
2205
+ #
2206
+ # # This example submits a request to change the health status of an instance associated with a service with a custom health
2207
+ # # check to HEALTHY.
2208
+ #
2209
+ # resp = client.update_instance_custom_health_status({
2210
+ # instance_id: "i-abcd1234",
2211
+ # service_id: "srv-e4anhexample0004",
2212
+ # status: "HEALTHY",
2213
+ # })
2214
+ #
1821
2215
  # @example Request syntax with placeholder values
1822
2216
  #
1823
2217
  # resp = client.update_instance_custom_health_status({
@@ -1870,13 +2264,42 @@ module Aws::ServiceDiscovery
1870
2264
  #
1871
2265
  # * {Types::UpdateServiceResponse#operation_id #operation_id} => String
1872
2266
  #
2267
+ #
2268
+ # @example Example: UpdateService Example
2269
+ #
2270
+ # # This example submits a request to replace the DnsConfig and HealthCheckConfig settings of a specified service.
2271
+ #
2272
+ # resp = client.update_service({
2273
+ # id: "srv-e4anhexample0004",
2274
+ # service: {
2275
+ # dns_config: {
2276
+ # dns_records: [
2277
+ # {
2278
+ # ttl: 60,
2279
+ # type: "A",
2280
+ # },
2281
+ # ],
2282
+ # },
2283
+ # health_check_config: {
2284
+ # failure_threshold: 2,
2285
+ # resource_path: "/",
2286
+ # type: "HTTP",
2287
+ # },
2288
+ # },
2289
+ # })
2290
+ #
2291
+ # resp.to_h outputs the following:
2292
+ # {
2293
+ # operation_id: "m35hsdrkxwjffm3xef4bxyy6vc3ewakx-jdn3y5g5",
2294
+ # }
2295
+ #
1873
2296
  # @example Request syntax with placeholder values
1874
2297
  #
1875
2298
  # resp = client.update_service({
1876
2299
  # id: "ResourceId", # required
1877
2300
  # service: { # required
1878
2301
  # description: "ResourceDescription",
1879
- # dns_config: { # required
2302
+ # dns_config: {
1880
2303
  # dns_records: [ # required
1881
2304
  # {
1882
2305
  # type: "SRV", # required, accepts SRV, A, AAAA, CNAME
@@ -1918,7 +2341,7 @@ module Aws::ServiceDiscovery
1918
2341
  params: params,
1919
2342
  config: config)
1920
2343
  context[:gem_name] = 'aws-sdk-servicediscovery'
1921
- context[:gem_version] = '1.22.0'
2344
+ context[:gem_version] = '1.27.0'
1922
2345
  Seahorse::Client::Request.new(handlers, context)
1923
2346
  end
1924
2347