aws-sdk-servicediscovery 1.23.0 → 1.28.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: 288018fa5ba020f7b997ec7874dba2796ff45d4cff74a7c865ff09e95a3ceeb9
4
- data.tar.gz: 4b0b9045aa90813bbf97499dbac3eba9e6017c61d5ab9dd4bdbb67a8d4924fa9
3
+ metadata.gz: 8cf2b1138af75ced4032c47b5a4a9412e04f576d32de10a746ee42efc79ee182
4
+ data.tar.gz: 7c3cc6d31621dbe71be1f905e929ad16091208f4fd9350da24d281e1554c336a
5
5
  SHA512:
6
- metadata.gz: 60d6fc999006b89a816f9d0ffb14050bb45ff61ed4e4e5cf789e89f9a08ccf4a7d59cfdbc209984bee63cc38db7c647e3c65c4c2aa367c838f3d6b2571831608
7
- data.tar.gz: d55ed05fe7daa5bc11c97cab0cf269ae2f72810689cebb9a94e5a746940e6112ca754bc77faef95a9c8129cab6d7b0a770d3990a962c809790932b52c60e23de
6
+ metadata.gz: 5e6b81f4ac2ab800f898df508b8339a5a2ee96bd63eaac533f06b84cdb7fed86a5d972813d5483f7320789e8d8839857c9445b0c04a615ed740203a052194894
7
+ data.tar.gz: 5421aa11b5168d8592e57f1cae9be0cd806cd86498eada98c77093dcbda15efb10dc398c8edc01b0ab0b90032eff7492d8f53cd4dac46eb3e42f3c6b7919852a
@@ -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:
@@ -42,9 +44,9 @@ require_relative 'aws-sdk-servicediscovery/customizations'
42
44
  #
43
45
  # See {Errors} for more information.
44
46
  #
45
- # @service
47
+ # @!group service
46
48
  module Aws::ServiceDiscovery
47
49
 
48
- GEM_VERSION = '1.23.0'
50
+ GEM_VERSION = '1.28.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
 
@@ -81,13 +85,28 @@ module Aws::ServiceDiscovery
81
85
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
82
86
  # credentials.
83
87
  #
88
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
89
+ # shared file, such as `~/.aws/config`.
90
+ #
91
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
92
+ #
93
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
94
+ # assume a role after providing credentials via the web.
95
+ #
96
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
97
+ # access token generated from `aws login`.
98
+ #
99
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
100
+ # process that outputs to stdout.
101
+ #
84
102
  # * `Aws::InstanceProfileCredentials` - Used for loading credentials
85
103
  # from an EC2 IMDS on an EC2 instance.
86
104
  #
87
- # * `Aws::SharedCredentials` - Used for loading credentials from a
88
- # shared file, such as `~/.aws/config`.
105
+ # * `Aws::ECSCredentials` - Used for loading credentials from
106
+ # instances running in ECS.
89
107
  #
90
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
108
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
109
+ # from the Cognito Identity service.
91
110
  #
92
111
  # When `:credentials` are not configured directly, the following
93
112
  # locations will be searched for credentials:
@@ -97,10 +116,10 @@ module Aws::ServiceDiscovery
97
116
  # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
98
117
  # * `~/.aws/credentials`
99
118
  # * `~/.aws/config`
100
- # * EC2 IMDS instance profile - When used by default, the timeouts are
101
- # very aggressive. Construct and pass an instance of
102
- # `Aws::InstanceProfileCredentails` to enable retries and extended
103
- # timeouts.
119
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
+ # are very aggressive. Construct and pass an instance of
121
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
+ # enable retries and extended timeouts.
104
123
  #
105
124
  # @option options [required, String] :region
106
125
  # The AWS region to connect to. The configured `:region` is
@@ -161,7 +180,7 @@ module Aws::ServiceDiscovery
161
180
  # @option options [String] :endpoint
162
181
  # The client endpoint is normally constructed from the `:region`
163
182
  # option. You should only configure an `:endpoint` when connecting
164
- # to test endpoints. This should be a valid HTTP(S) URI.
183
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
165
184
  #
166
185
  # @option options [Integer] :endpoint_cache_max_entries (1000)
167
186
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -322,8 +341,8 @@ module Aws::ServiceDiscovery
322
341
  # an HTTP namespace can be discovered using a `DiscoverInstances`
323
342
  # request but can't be discovered using DNS.
324
343
  #
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
344
+ # For the current quota on the number of namespaces that you can create
345
+ # using the same AWS account, see [AWS Cloud Map quotas][1] in the *AWS
327
346
  # Cloud Map Developer Guide*.
328
347
  #
329
348
  #
@@ -345,16 +364,44 @@ module Aws::ServiceDiscovery
345
364
  # @option params [String] :description
346
365
  # A description for the namespace.
347
366
  #
367
+ # @option params [Array<Types::Tag>] :tags
368
+ # The tags to add to the namespace. Each tag consists of a key and an
369
+ # optional value, both of which you define. Tag keys can have a maximum
370
+ # character length of 128 characters, and tag values can have a maximum
371
+ # length of 256 characters.
372
+ #
348
373
  # @return [Types::CreateHttpNamespaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
349
374
  #
350
375
  # * {Types::CreateHttpNamespaceResponse#operation_id #operation_id} => String
351
376
  #
377
+ #
378
+ # @example Example: CreateHttpNamespace example
379
+ #
380
+ # # This example creates an HTTP namespace.
381
+ #
382
+ # resp = client.create_http_namespace({
383
+ # creator_request_id: "example-creator-request-id-0001",
384
+ # description: "Example.com AWS Cloud Map HTTP Namespace",
385
+ # name: "example-http.com",
386
+ # })
387
+ #
388
+ # resp.to_h outputs the following:
389
+ # {
390
+ # operation_id: "httpvoqozuhfet5kzxoxg-a-response-example",
391
+ # }
392
+ #
352
393
  # @example Request syntax with placeholder values
353
394
  #
354
395
  # resp = client.create_http_namespace({
355
396
  # name: "NamespaceName", # required
356
397
  # creator_request_id: "ResourceId",
357
398
  # description: "ResourceDescription",
399
+ # tags: [
400
+ # {
401
+ # key: "TagKey", # required
402
+ # value: "TagValue", # required
403
+ # },
404
+ # ],
358
405
  # })
359
406
  #
360
407
  # @example Response structure
@@ -374,7 +421,7 @@ module Aws::ServiceDiscovery
374
421
  # inside a specified Amazon VPC. The namespace defines your service
375
422
  # naming scheme. For example, if you name your namespace `example.com`
376
423
  # and name your service `backend`, the resulting DNS name for the
377
- # service will be `backend.example.com`. For the current limit on the
424
+ # service will be `backend.example.com`. For the current quota on the
378
425
  # number of namespaces that you can create using the same AWS account,
379
426
  # see [AWS Cloud Map Limits][1] in the *AWS Cloud Map Developer Guide*.
380
427
  #
@@ -385,7 +432,7 @@ module Aws::ServiceDiscovery
385
432
  # @option params [required, String] :name
386
433
  # The name that you want to assign to this namespace. When you create a
387
434
  # private DNS namespace, AWS Cloud Map automatically creates an Amazon
388
- # Route 53 private hosted zone that has the same name as the namespace.
435
+ # Route 53 private hosted zone that has the same name as the namespace.
389
436
  #
390
437
  # @option params [String] :creator_request_id
391
438
  # A unique string that identifies the request and that allows failed
@@ -403,6 +450,12 @@ module Aws::ServiceDiscovery
403
450
  # The ID of the Amazon VPC that you want to associate the namespace
404
451
  # with.
405
452
  #
453
+ # @option params [Array<Types::Tag>] :tags
454
+ # The tags to add to the namespace. Each tag consists of a key and an
455
+ # optional value, both of which you define. Tag keys can have a maximum
456
+ # character length of 128 characters, and tag values can have a maximum
457
+ # length of 256 characters.
458
+ #
406
459
  # @return [Types::CreatePrivateDnsNamespaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
407
460
  #
408
461
  # * {Types::CreatePrivateDnsNamespaceResponse#operation_id #operation_id} => String
@@ -430,6 +483,12 @@ module Aws::ServiceDiscovery
430
483
  # creator_request_id: "ResourceId",
431
484
  # description: "ResourceDescription",
432
485
  # vpc: "ResourceId", # required
486
+ # tags: [
487
+ # {
488
+ # key: "TagKey", # required
489
+ # value: "TagValue", # required
490
+ # },
491
+ # ],
433
492
  # })
434
493
  #
435
494
  # @example Response structure
@@ -449,7 +508,7 @@ module Aws::ServiceDiscovery
449
508
  # internet. The namespace defines your service naming scheme. For
450
509
  # example, if you name your namespace `example.com` and name your
451
510
  # service `backend`, the resulting DNS name for the service will be
452
- # `backend.example.com`. For the current limit on the number of
511
+ # `backend.example.com`. For the current quota on the number of
453
512
  # namespaces that you can create using the same AWS account, see [AWS
454
513
  # Cloud Map Limits][1] in the *AWS Cloud Map Developer Guide*.
455
514
  #
@@ -472,16 +531,44 @@ module Aws::ServiceDiscovery
472
531
  # @option params [String] :description
473
532
  # A description for the namespace.
474
533
  #
534
+ # @option params [Array<Types::Tag>] :tags
535
+ # The tags to add to the namespace. Each tag consists of a key and an
536
+ # optional value, both of which you define. Tag keys can have a maximum
537
+ # character length of 128 characters, and tag values can have a maximum
538
+ # length of 256 characters.
539
+ #
475
540
  # @return [Types::CreatePublicDnsNamespaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
476
541
  #
477
542
  # * {Types::CreatePublicDnsNamespaceResponse#operation_id #operation_id} => String
478
543
  #
544
+ #
545
+ # @example Example: CreatePublicDnsNamespace example
546
+ #
547
+ # # This example creates a public namespace based on DNS.
548
+ #
549
+ # resp = client.create_public_dns_namespace({
550
+ # creator_request_id: "example-creator-request-id-0003",
551
+ # description: "Example.com AWS Cloud Map Public DNS Namespace",
552
+ # name: "example-public-dns.com",
553
+ # })
554
+ #
555
+ # resp.to_h outputs the following:
556
+ # {
557
+ # operation_id: "dns2voqozuhfet5kzxoxg-a-response-example",
558
+ # }
559
+ #
479
560
  # @example Request syntax with placeholder values
480
561
  #
481
562
  # resp = client.create_public_dns_namespace({
482
563
  # name: "NamespaceName", # required
483
564
  # creator_request_id: "ResourceId",
484
565
  # description: "ResourceDescription",
566
+ # tags: [
567
+ # {
568
+ # key: "TagKey", # required
569
+ # value: "TagValue", # required
570
+ # },
571
+ # ],
485
572
  # })
486
573
  #
487
574
  # @example Response structure
@@ -501,17 +588,17 @@ module Aws::ServiceDiscovery
501
588
  # entities:
502
589
  #
503
590
  # * For public and private DNS namespaces, one of the following
504
- # combinations of DNS records in Amazon Route 53:
591
+ # combinations of DNS records in Amazon Route 53:
505
592
  #
506
- # * A
593
+ # * `A`
507
594
  #
508
- # * AAAA
595
+ # * `AAAA`
509
596
  #
510
- # * A and AAAA
597
+ # * `A` and `AAAA`
511
598
  #
512
- # * SRV
599
+ # * `SRV`
513
600
  #
514
- # * CNAME
601
+ # * `CNAME`
515
602
  #
516
603
  # * Optionally, a health check
517
604
  #
@@ -519,7 +606,7 @@ module Aws::ServiceDiscovery
519
606
  # request, and AWS Cloud Map uses the values in the configuration to
520
607
  # create the specified entities.
521
608
  #
522
- # For the current limit on the number of instances that you can register
609
+ # For the current quota on the number of instances that you can register
523
610
  # using the same namespace and using the same service, see [AWS Cloud
524
611
  # Map Limits][2] in the *AWS Cloud Map Developer Guide*.
525
612
  #
@@ -531,17 +618,17 @@ module Aws::ServiceDiscovery
531
618
  # @option params [required, String] :name
532
619
  # The name that you want to assign to the service.
533
620
  #
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`\:
621
+ # If you want AWS Cloud Map to create an `SRV` record when you register
622
+ # an instance, and if you're using a system that requires a specific
623
+ # `SRV` format, such as [HAProxy][1], specify the following for `Name`\:
537
624
  #
538
625
  # * Start the name with an underscore (\_), such as `_exampleservice`
539
626
  #
540
627
  # * End the name with *.\_protocol*, such as `._tcp`
541
628
  #
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:
629
+ # When you register an instance, AWS Cloud Map creates an `SRV` record
630
+ # and assigns a name to the record by concatenating the service name and
631
+ # the namespace name, for example:
545
632
  #
546
633
  # `_exampleservice._tcp.example.com`
547
634
  #
@@ -565,15 +652,15 @@ module Aws::ServiceDiscovery
565
652
  # A description for the service.
566
653
  #
567
654
  # @option params [Types::DnsConfig] :dns_config
568
- # A complex type that contains information about the Amazon Route 53
655
+ # A complex type that contains information about the Amazon Route 53
569
656
  # records that you want AWS Cloud Map to create when you register an
570
657
  # instance.
571
658
  #
572
659
  # @option params [Types::HealthCheckConfig] :health_check_config
573
660
  # *Public DNS and HTTP namespaces only.* A complex type that contains
574
- # settings for an optional Route 53 health check. If you specify
661
+ # settings for an optional Route 53 health check. If you specify
575
662
  # 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`.
663
+ # with all the Route 53 DNS records that you specify in `DnsConfig`.
577
664
  #
578
665
  # If you specify a health check configuration, you can specify either
579
666
  # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both.
@@ -595,6 +682,12 @@ module Aws::ServiceDiscovery
595
682
  # You can't add, update, or delete a `HealthCheckCustomConfig`
596
683
  # configuration from an existing service.
597
684
  #
685
+ # @option params [Array<Types::Tag>] :tags
686
+ # The tags to add to the service. Each tag consists of a key and an
687
+ # optional value, both of which you define. Tag keys can have a maximum
688
+ # character length of 128 characters, and tag values can have a maximum
689
+ # length of 256 characters.
690
+ #
598
691
  # @return [Types::CreateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
599
692
  #
600
693
  # * {Types::CreateServiceResponse#service #service} => Types::Service
@@ -667,6 +760,12 @@ module Aws::ServiceDiscovery
667
760
  # health_check_custom_config: {
668
761
  # failure_threshold: 1,
669
762
  # },
763
+ # tags: [
764
+ # {
765
+ # key: "TagKey", # required
766
+ # value: "TagValue", # required
767
+ # },
768
+ # ],
670
769
  # })
671
770
  #
672
771
  # @example Response structure
@@ -777,7 +876,7 @@ module Aws::ServiceDiscovery
777
876
  req.send_request(options)
778
877
  end
779
878
 
780
- # Deletes the Amazon Route 53 DNS records and health check, if any, that
879
+ # Deletes the Amazon Route 53 DNS records and health check, if any, that
781
880
  # AWS Cloud Map created for the specified instance.
782
881
  #
783
882
  # @option params [required, String] :service_id
@@ -933,6 +1032,30 @@ module Aws::ServiceDiscovery
933
1032
  #
934
1033
  # * {Types::GetInstanceResponse#instance #instance} => Types::Instance
935
1034
  #
1035
+ #
1036
+ # @example Example: GetInstance example
1037
+ #
1038
+ # # This example gets information about a specified instance.
1039
+ #
1040
+ # resp = client.get_instance({
1041
+ # instance_id: "i-abcd1234",
1042
+ # service_id: "srv-e4anhexample0004",
1043
+ # })
1044
+ #
1045
+ # resp.to_h outputs the following:
1046
+ # {
1047
+ # instance: {
1048
+ # attributes: {
1049
+ # "AWS_INSTANCE_IPV4" => "192.0.2.44",
1050
+ # "AWS_INSTANCE_PORT" => "80",
1051
+ # "color" => "green",
1052
+ # "region" => "us-west-2",
1053
+ # "stage" => "beta",
1054
+ # },
1055
+ # id: "i-abcd1234",
1056
+ # },
1057
+ # }
1058
+ #
936
1059
  # @example Request syntax with placeholder values
937
1060
  #
938
1061
  # resp = client.get_instance({
@@ -1004,6 +1127,23 @@ module Aws::ServiceDiscovery
1004
1127
  #
1005
1128
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1006
1129
  #
1130
+ #
1131
+ # @example Example: GetInstancesHealthStatus example
1132
+ #
1133
+ # # This example gets the current health status of one or more instances that are associate with a specified service.
1134
+ #
1135
+ # resp = client.get_instances_health_status({
1136
+ # service_id: "srv-e4anhexample0004",
1137
+ # })
1138
+ #
1139
+ # resp.to_h outputs the following:
1140
+ # {
1141
+ # status: {
1142
+ # "i-abcd1234" => "HEALTHY",
1143
+ # "i-abcd1235" => "UNHEALTHY",
1144
+ # },
1145
+ # }
1146
+ #
1007
1147
  # @example Request syntax with placeholder values
1008
1148
  #
1009
1149
  # resp = client.get_instances_health_status({
@@ -1037,6 +1177,35 @@ module Aws::ServiceDiscovery
1037
1177
  #
1038
1178
  # * {Types::GetNamespaceResponse#namespace #namespace} => Types::Namespace
1039
1179
  #
1180
+ #
1181
+ # @example Example: GetNamespace example
1182
+ #
1183
+ # # This example gets information about a specified namespace.
1184
+ #
1185
+ # resp = client.get_namespace({
1186
+ # id: "ns-e4anhexample0004",
1187
+ # })
1188
+ #
1189
+ # resp.to_h outputs the following:
1190
+ # {
1191
+ # namespace: {
1192
+ # arn: "arn:aws:servicediscovery:us-west-2: 123456789120:namespace/ns-e1tpmexample0001",
1193
+ # create_date: Time.parse("20181118T211712Z"),
1194
+ # creator_request_id: "example-creator-request-id-0001",
1195
+ # description: "Example.com AWS Cloud Map HTTP Namespace",
1196
+ # id: "ns-e1tpmexample0001",
1197
+ # name: "example-http.com",
1198
+ # properties: {
1199
+ # dns_properties: {
1200
+ # },
1201
+ # http_properties: {
1202
+ # http_name: "example-http.com",
1203
+ # },
1204
+ # },
1205
+ # type: "HTTP",
1206
+ # },
1207
+ # }
1208
+ #
1040
1209
  # @example Request syntax with placeholder values
1041
1210
  #
1042
1211
  # resp = client.get_namespace({
@@ -1143,6 +1312,33 @@ module Aws::ServiceDiscovery
1143
1312
  #
1144
1313
  # * {Types::GetServiceResponse#service #service} => Types::Service
1145
1314
  #
1315
+ #
1316
+ # @example Example: GetService Example
1317
+ #
1318
+ # # This example gets the settings for a specified service.
1319
+ #
1320
+ # resp = client.get_service({
1321
+ # id: "srv-e4anhexample0004",
1322
+ # })
1323
+ #
1324
+ # resp.to_h outputs the following:
1325
+ # {
1326
+ # service: {
1327
+ # arn: "arn:aws:servicediscovery:us-west-2:123456789120:service/srv-e4anhexample0004",
1328
+ # create_date: Time.parse("20181118T211707Z"),
1329
+ # creator_request_id: "example-creator-request-id-0004",
1330
+ # description: "Example.com AWS Cloud Map HTTP Service",
1331
+ # health_check_config: {
1332
+ # failure_threshold: 3,
1333
+ # resource_path: "/",
1334
+ # type: "HTTPS",
1335
+ # },
1336
+ # id: "srv-e4anhexample0004",
1337
+ # name: "example-http-service",
1338
+ # namespace_id: "ns-e4anhexample0004",
1339
+ # },
1340
+ # }
1341
+ #
1146
1342
  # @example Request syntax with placeholder values
1147
1343
  #
1148
1344
  # resp = client.get_service({
@@ -1421,6 +1617,42 @@ module Aws::ServiceDiscovery
1421
1617
  #
1422
1618
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1423
1619
  #
1620
+ #
1621
+ # @example Example: ListOperations Example
1622
+ #
1623
+ # # This example gets the operations that have a STATUS of either PENDING or SUCCESS.
1624
+ #
1625
+ # resp = client.list_operations({
1626
+ # filters: [
1627
+ # {
1628
+ # condition: "IN",
1629
+ # name: "STATUS",
1630
+ # values: [
1631
+ # "PENDING",
1632
+ # "SUCCESS",
1633
+ # ],
1634
+ # },
1635
+ # ],
1636
+ # })
1637
+ #
1638
+ # resp.to_h outputs the following:
1639
+ # {
1640
+ # operations: [
1641
+ # {
1642
+ # id: "76yy8ovhpdz0plmjzbsnqgnrqvpv2qdt-kexample",
1643
+ # status: "SUCCESS",
1644
+ # },
1645
+ # {
1646
+ # id: "prysnyzpji3u2ciy45nke83x2zanl7yk-dexample",
1647
+ # status: "SUCCESS",
1648
+ # },
1649
+ # {
1650
+ # id: "ko4ekftir7kzlbechsh7xvcdgcpk66gh-7example",
1651
+ # status: "PENDING",
1652
+ # },
1653
+ # ],
1654
+ # }
1655
+ #
1424
1656
  # @example Request syntax with placeholder values
1425
1657
  #
1426
1658
  # resp = client.list_operations({
@@ -1560,6 +1792,60 @@ module Aws::ServiceDiscovery
1560
1792
  req.send_request(options)
1561
1793
  end
1562
1794
 
1795
+ # Lists tags for the specified resource.
1796
+ #
1797
+ # @option params [required, String] :resource_arn
1798
+ # The Amazon Resource Name (ARN) of the resource that you want to
1799
+ # retrieve tags for.
1800
+ #
1801
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1802
+ #
1803
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Array&lt;Types::Tag&gt;
1804
+ #
1805
+ #
1806
+ # @example Example: ListTagsForResource example
1807
+ #
1808
+ # # This example lists the tags of a resource.
1809
+ #
1810
+ # resp = client.list_tags_for_resource({
1811
+ # resource_arn: "arn:aws:servicediscovery:us-east-1:123456789012:namespace/ns-ylexjili4cdxy3xm",
1812
+ # })
1813
+ #
1814
+ # resp.to_h outputs the following:
1815
+ # {
1816
+ # tags: [
1817
+ # {
1818
+ # key: "Project",
1819
+ # value: "Zeta",
1820
+ # },
1821
+ # {
1822
+ # key: "Department",
1823
+ # value: "Engineering",
1824
+ # },
1825
+ # ],
1826
+ # }
1827
+ #
1828
+ # @example Request syntax with placeholder values
1829
+ #
1830
+ # resp = client.list_tags_for_resource({
1831
+ # resource_arn: "AmazonResourceName", # required
1832
+ # })
1833
+ #
1834
+ # @example Response structure
1835
+ #
1836
+ # resp.tags #=> Array
1837
+ # resp.tags[0].key #=> String
1838
+ # resp.tags[0].value #=> String
1839
+ #
1840
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListTagsForResource AWS API Documentation
1841
+ #
1842
+ # @overload list_tags_for_resource(params = {})
1843
+ # @param [Hash] params ({})
1844
+ def list_tags_for_resource(params = {}, options = {})
1845
+ req = build_request(:list_tags_for_resource, params)
1846
+ req.send_request(options)
1847
+ end
1848
+
1563
1849
  # Creates or updates one or more records and, optionally, creates a
1564
1850
  # health check based on the settings in a specified service. When you
1565
1851
  # submit a `RegisterInstance` request, the following occurs:
@@ -1590,7 +1876,7 @@ module Aws::ServiceDiscovery
1590
1876
  # * **If you didn't specify a health check configuration**\: returns
1591
1877
  # all the records
1592
1878
  #
1593
- # For the current limit on the number of instances that you can register
1879
+ # For the current quota on the number of instances that you can register
1594
1880
  # using the same namespace and using the same service, see [AWS Cloud
1595
1881
  # Map Limits][2] in the *AWS Cloud Map Developer Guide*.
1596
1882
  #
@@ -1608,8 +1894,8 @@ module Aws::ServiceDiscovery
1608
1894
  # following:
1609
1895
  #
1610
1896
  # * 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
1897
+ # for an `SRV` record, the value of `InstanceId` is automatically
1898
+ # included as part of the value for the `SRV` record. For more
1613
1899
  # information, see [DnsRecord &gt; Type][1].
1614
1900
  #
1615
1901
  # * You can use this value to update an existing instance.
@@ -1656,33 +1942,41 @@ module Aws::ServiceDiscovery
1656
1942
  #
1657
1943
  # **AWS\_ALIAS\_DNS\_NAME**
1658
1944
  #
1659
- # ****
1660
- #
1661
- # If you want AWS Cloud Map to create an Amazon Route 53 alias record
1945
+ # If you want AWS Cloud Map to create an Amazon Route 53 alias record
1662
1946
  # that routes traffic to an Elastic Load Balancing load balancer,
1663
1947
  # specify the DNS name that is associated with the load balancer. For
1664
1948
  # information about how to get the DNS name, see "DNSName" in the
1665
- # topic [AliasTarget][1] in the *Route 53 API Reference*.
1949
+ # topic [AliasTarget][1] in the *Route 53 API Reference*.
1666
1950
  #
1667
1951
  # Note the following:
1668
1952
  #
1669
1953
  # * The configuration for the service that is specified by `ServiceId`
1670
- # must include settings for an A record, an AAAA record, or both.
1954
+ # must include settings for an `A` record, an `AAAA` record, or both.
1671
1955
  #
1672
1956
  # * In the service that is specified by `ServiceId`, the value of
1673
1957
  # `RoutingPolicy` must be `WEIGHTED`.
1674
1958
  #
1675
1959
  # * If the service that is specified by `ServiceId` includes
1676
- # `HealthCheckConfig` settings, AWS Cloud Map will create the Route 53
1960
+ # `HealthCheckConfig` settings, AWS Cloud Map will create the Route 53
1677
1961
  # health check, but it won't associate the health check with the
1678
1962
  # alias record.
1679
1963
  #
1680
1964
  # * Auto naming currently doesn't support creating alias records that
1681
- # route traffic to AWS resources other than ELB load balancers.
1965
+ # route traffic to AWS resources other than Elastic Load Balancing
1966
+ # load balancers.
1682
1967
  #
1683
1968
  # * If you specify a value for `AWS_ALIAS_DNS_NAME`, don't specify
1684
1969
  # values for any of the `AWS_INSTANCE` attributes.
1685
1970
  #
1971
+ # **AWS\_EC2\_INSTANCE\_ID**
1972
+ #
1973
+ # *HTTP namespaces only.* The Amazon EC2 instance ID for the instance.
1974
+ # If the `AWS_EC2_INSTANCE_ID` attribute is specified, then the only
1975
+ # other attribute that can be specified is `AWS_INIT_HEALTH_STATUS`.
1976
+ # When the `AWS_EC2_INSTANCE_ID` attribute is specified, then the
1977
+ # `AWS_INSTANCE_IPV4` attribute will be filled out with the primary
1978
+ # private IPv4 address.
1979
+ #
1686
1980
  # **AWS\_INIT\_HEALTH\_STATUS**
1687
1981
  #
1688
1982
  # If the service configuration includes `HealthCheckCustomConfig`, you
@@ -1693,51 +1987,53 @@ module Aws::ServiceDiscovery
1693
1987
  #
1694
1988
  # **AWS\_INSTANCE\_CNAME**
1695
1989
  #
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
1990
+ # If the service configuration includes a `CNAME` record, the domain
1991
+ # name that you want Route 53 to return in response to DNS queries, for
1698
1992
  # example, `example.com`.
1699
1993
  #
1700
1994
  # This value is required if the service specified by `ServiceId`
1701
- # includes settings for an CNAME record.
1995
+ # includes settings for an `CNAME` record.
1702
1996
  #
1703
1997
  # **AWS\_INSTANCE\_IPV4**
1704
1998
  #
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
1999
+ # If the service configuration includes an `A` record, the IPv4 address
2000
+ # that you want Route 53 to return in response to DNS queries, for
1707
2001
  # example, `192.0.2.44`.
1708
2002
  #
1709
2003
  # 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`,
2004
+ # includes settings for an `A` record. If the service includes settings
2005
+ # for an `SRV` record, you must specify a value for `AWS_INSTANCE_IPV4`,
1712
2006
  # `AWS_INSTANCE_IPV6`, or both.
1713
2007
  #
1714
2008
  # **AWS\_INSTANCE\_IPV6**
1715
2009
  #
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`.
2010
+ # If the service configuration includes an `AAAA` record, the IPv6
2011
+ # address that you want Route 53 to return in response to DNS queries,
2012
+ # for example, `2001:0db8:85a3:0000:0000:abcd:0001:2345`.
1719
2013
  #
1720
2014
  # 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.
2015
+ # includes settings for an `AAAA` record. If the service includes
2016
+ # settings for an `SRV` record, you must specify a value for
2017
+ # `AWS_INSTANCE_IPV4`, `AWS_INSTANCE_IPV6`, or both.
1724
2018
  #
1725
2019
  # **AWS\_INSTANCE\_PORT**
1726
2020
  #
1727
- # If the service includes an SRV record, the value that you want Route
1728
- # 53 to return for the port.
2021
+ # If the service includes an `SRV` record, the value that you want
2022
+ # Route 53 to return for the port.
1729
2023
  #
1730
2024
  # If the service includes `HealthCheckConfig`, the port on the endpoint
1731
- # that you want Route 53 to send requests to.
2025
+ # that you want Route 53 to send requests to.
1732
2026
  #
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.
2027
+ # This value is required if you specified settings for an `SRV` record
2028
+ # or a Route 53 health check when you created the service.
1735
2029
  #
1736
2030
  # **Custom attributes**
1737
2031
  #
1738
2032
  # You can add up to 30 custom attributes. For each key-value pair, the
1739
2033
  # maximum length of the attribute name is 255 characters, and the
1740
- # maximum length of the attribute value is 1,024 characters.
2034
+ # maximum length of the attribute value is 1,024 characters. The total
2035
+ # size of all provided attributes (sum of all keys and values) must not
2036
+ # exceed 5,000 characters.
1741
2037
  #
1742
2038
  #
1743
2039
  #
@@ -1791,13 +2087,114 @@ module Aws::ServiceDiscovery
1791
2087
  req.send_request(options)
1792
2088
  end
1793
2089
 
2090
+ # Adds one or more tags to the specified resource.
2091
+ #
2092
+ # @option params [required, String] :resource_arn
2093
+ # The Amazon Resource Name (ARN) of the resource that you want to
2094
+ # retrieve tags for.
2095
+ #
2096
+ # @option params [required, Array<Types::Tag>] :tags
2097
+ # The tags to add to the specified resource. Specifying the tag key is
2098
+ # required. You can set the value of a tag to an empty string, but you
2099
+ # can't set the value of a tag to null.
2100
+ #
2101
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2102
+ #
2103
+ #
2104
+ # @example Example: TagResource example
2105
+ #
2106
+ # # This example adds "Department" and "Project" tags to a resource.
2107
+ #
2108
+ # resp = client.tag_resource({
2109
+ # resource_arn: "arn:aws:servicediscovery:us-east-1:123456789012:namespace/ns-ylexjili4cdxy3xm",
2110
+ # tags: [
2111
+ # {
2112
+ # key: "Department",
2113
+ # value: "Engineering",
2114
+ # },
2115
+ # {
2116
+ # key: "Project",
2117
+ # value: "Zeta",
2118
+ # },
2119
+ # ],
2120
+ # })
2121
+ #
2122
+ # resp.to_h outputs the following:
2123
+ # {
2124
+ # }
2125
+ #
2126
+ # @example Request syntax with placeholder values
2127
+ #
2128
+ # resp = client.tag_resource({
2129
+ # resource_arn: "AmazonResourceName", # required
2130
+ # tags: [ # required
2131
+ # {
2132
+ # key: "TagKey", # required
2133
+ # value: "TagValue", # required
2134
+ # },
2135
+ # ],
2136
+ # })
2137
+ #
2138
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/TagResource AWS API Documentation
2139
+ #
2140
+ # @overload tag_resource(params = {})
2141
+ # @param [Hash] params ({})
2142
+ def tag_resource(params = {}, options = {})
2143
+ req = build_request(:tag_resource, params)
2144
+ req.send_request(options)
2145
+ end
2146
+
2147
+ # Removes one or more tags from the specified resource.
2148
+ #
2149
+ # @option params [required, String] :resource_arn
2150
+ # The Amazon Resource Name (ARN) of the resource that you want to
2151
+ # retrieve tags for.
2152
+ #
2153
+ # @option params [required, Array<String>] :tag_keys
2154
+ # The tag keys to remove from the specified resource.
2155
+ #
2156
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2157
+ #
2158
+ #
2159
+ # @example Example: UntagResource example
2160
+ #
2161
+ # # This example removes the "Department" and "Project" tags from a resource.
2162
+ #
2163
+ # resp = client.untag_resource({
2164
+ # resource_arn: "arn:aws:servicediscovery:us-east-1:123456789012:namespace/ns-ylexjili4cdxy3xm",
2165
+ # tag_keys: [
2166
+ # "Project",
2167
+ # "Department",
2168
+ # ],
2169
+ # })
2170
+ #
2171
+ # resp.to_h outputs the following:
2172
+ # {
2173
+ # }
2174
+ #
2175
+ # @example Request syntax with placeholder values
2176
+ #
2177
+ # resp = client.untag_resource({
2178
+ # resource_arn: "AmazonResourceName", # required
2179
+ # tag_keys: ["TagKey"], # required
2180
+ # })
2181
+ #
2182
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/UntagResource AWS API Documentation
2183
+ #
2184
+ # @overload untag_resource(params = {})
2185
+ # @param [Hash] params ({})
2186
+ def untag_resource(params = {}, options = {})
2187
+ req = build_request(:untag_resource, params)
2188
+ req.send_request(options)
2189
+ end
2190
+
1794
2191
  # Submits a request to change the health status of a custom health check
1795
2192
  # to healthy or unhealthy.
1796
2193
  #
1797
2194
  # You can use `UpdateInstanceCustomHealthStatus` to change the status
1798
2195
  # only for custom health checks, which you define using
1799
2196
  # `HealthCheckCustomConfig` when you create a service. You can't use it
1800
- # to change the status for Route 53 health checks, which you define
2197
+ # to change the status for Route 53 health checks, which you define
1801
2198
  # using `HealthCheckConfig`.
1802
2199
  #
1803
2200
  # For more information, see [HealthCheckCustomConfig][1].
@@ -1818,6 +2215,18 @@ module Aws::ServiceDiscovery
1818
2215
  #
1819
2216
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1820
2217
  #
2218
+ #
2219
+ # @example Example: UpdateInstanceCustomHealthStatus Example
2220
+ #
2221
+ # # This example submits a request to change the health status of an instance associated with a service with a custom health
2222
+ # # check to HEALTHY.
2223
+ #
2224
+ # resp = client.update_instance_custom_health_status({
2225
+ # instance_id: "i-abcd1234",
2226
+ # service_id: "srv-e4anhexample0004",
2227
+ # status: "HEALTHY",
2228
+ # })
2229
+ #
1821
2230
  # @example Request syntax with placeholder values
1822
2231
  #
1823
2232
  # resp = client.update_instance_custom_health_status({
@@ -1870,13 +2279,42 @@ module Aws::ServiceDiscovery
1870
2279
  #
1871
2280
  # * {Types::UpdateServiceResponse#operation_id #operation_id} => String
1872
2281
  #
2282
+ #
2283
+ # @example Example: UpdateService Example
2284
+ #
2285
+ # # This example submits a request to replace the DnsConfig and HealthCheckConfig settings of a specified service.
2286
+ #
2287
+ # resp = client.update_service({
2288
+ # id: "srv-e4anhexample0004",
2289
+ # service: {
2290
+ # dns_config: {
2291
+ # dns_records: [
2292
+ # {
2293
+ # ttl: 60,
2294
+ # type: "A",
2295
+ # },
2296
+ # ],
2297
+ # },
2298
+ # health_check_config: {
2299
+ # failure_threshold: 2,
2300
+ # resource_path: "/",
2301
+ # type: "HTTP",
2302
+ # },
2303
+ # },
2304
+ # })
2305
+ #
2306
+ # resp.to_h outputs the following:
2307
+ # {
2308
+ # operation_id: "m35hsdrkxwjffm3xef4bxyy6vc3ewakx-jdn3y5g5",
2309
+ # }
2310
+ #
1873
2311
  # @example Request syntax with placeholder values
1874
2312
  #
1875
2313
  # resp = client.update_service({
1876
2314
  # id: "ResourceId", # required
1877
2315
  # service: { # required
1878
2316
  # description: "ResourceDescription",
1879
- # dns_config: { # required
2317
+ # dns_config: {
1880
2318
  # dns_records: [ # required
1881
2319
  # {
1882
2320
  # type: "SRV", # required, accepts SRV, A, AAAA, CNAME
@@ -1918,7 +2356,7 @@ module Aws::ServiceDiscovery
1918
2356
  params: params,
1919
2357
  config: config)
1920
2358
  context[:gem_name] = 'aws-sdk-servicediscovery'
1921
- context[:gem_version] = '1.23.0'
2359
+ context[:gem_version] = '1.28.0'
1922
2360
  Seahorse::Client::Request.new(handlers, context)
1923
2361
  end
1924
2362