aws-sdk-servicediscovery 1.22.0 → 1.27.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: 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