aws-sdk-servicediscovery 1.20.0 → 1.25.1

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
- SHA1:
3
- metadata.gz: 94ba413c562093841e3d570c5d7b64501e405a69
4
- data.tar.gz: baff26a3c5539dac270f6fbdc78b0a863a67264d
2
+ SHA256:
3
+ metadata.gz: 0bb3a22273fcc871a3e3200f28a9304852b5472d48f86d24af4dc1933878e46c
4
+ data.tar.gz: 3a7af313fe058ba361904b640a7a57a63d594f7d2ffcd28efe8a40f9b63e021c
5
5
  SHA512:
6
- metadata.gz: b9ee6316b412284721d73a85c690ed00d982de863757c1de16ab7cc9bcff7ba64f48845e6106a72716ca9e3a04a2c03c6ff7938a791b6da1545ad3c7fc1a03ae
7
- data.tar.gz: 7dcace99426ccf703460c364608e3202d7d97498414ea85f6ccb9026e1d4fa5e25733e3e98ed0228e7df3d55986bde717464605b2060698f382cfc03cd190b26
6
+ metadata.gz: 51868392fe4c86b81acdd15fbbcc4e66a5a50812040dc52def844c62bcc22e2e50a0fd611d729c161efe1474f69c3d7505046a1926469548cc70e86ba0dfd64c
7
+ data.tar.gz: cbcfc66ec0e660f373f09c264c4c9a9883ba9d0f1a8d14cedfadeb2b0276eb8c1f042ffbcd79c288a6a399613cbc4de93c505f5eafe49f91fba56c90f554424a
@@ -45,6 +45,6 @@ require_relative 'aws-sdk-servicediscovery/customizations'
45
45
  # @service
46
46
  module Aws::ServiceDiscovery
47
47
 
48
- GEM_VERSION = '1.20.0'
48
+ GEM_VERSION = '1.25.1'
49
49
 
50
50
  end
@@ -24,6 +24,7 @@ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
24
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
25
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
26
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
27
+ require 'aws-sdk-core/plugins/http_checksum.rb'
27
28
  require 'aws-sdk-core/plugins/signature_v4.rb'
28
29
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
29
30
 
@@ -32,11 +33,11 @@ Aws::Plugins::GlobalConfiguration.add_identifier(:servicediscovery)
32
33
  module Aws::ServiceDiscovery
33
34
  # An API client for ServiceDiscovery. To construct a client, you need to configure a `:region` and `:credentials`.
34
35
  #
35
- # client = Aws::ServiceDiscovery::Client.new(
36
- # region: region_name,
37
- # credentials: credentials,
38
- # # ...
39
- # )
36
+ # client = Aws::ServiceDiscovery::Client.new(
37
+ # region: region_name,
38
+ # credentials: credentials,
39
+ # # ...
40
+ # )
40
41
  #
41
42
  # For details on configuring region and credentials see
42
43
  # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
@@ -69,6 +70,7 @@ module Aws::ServiceDiscovery
69
70
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
70
71
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
71
72
  add_plugin(Aws::Plugins::TransferEncoding)
73
+ add_plugin(Aws::Plugins::HttpChecksum)
72
74
  add_plugin(Aws::Plugins::SignatureV4)
73
75
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
74
76
 
@@ -105,7 +107,7 @@ module Aws::ServiceDiscovery
105
107
  # @option options [required, String] :region
106
108
  # The AWS region to connect to. The configured `:region` is
107
109
  # used to determine the service `:endpoint`. When not passed,
108
- # a default `:region` is search for in the following locations:
110
+ # a default `:region` is searched for in the following locations:
109
111
  #
110
112
  # * `Aws.config[:region]`
111
113
  # * `ENV['AWS_REGION']`
@@ -161,7 +163,7 @@ module Aws::ServiceDiscovery
161
163
  # @option options [String] :endpoint
162
164
  # The client endpoint is normally constructed from the `:region`
163
165
  # option. You should only configure an `:endpoint` when connecting
164
- # to test endpoints. This should be avalid HTTP(S) URI.
166
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
165
167
  #
166
168
  # @option options [Integer] :endpoint_cache_max_entries (1000)
167
169
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -176,7 +178,7 @@ module Aws::ServiceDiscovery
176
178
  # requests fetching endpoints information. Defaults to 60 sec.
177
179
  #
178
180
  # @option options [Boolean] :endpoint_discovery (false)
179
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
181
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
180
182
  #
181
183
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
182
184
  # The log formatter.
@@ -229,15 +231,19 @@ module Aws::ServiceDiscovery
229
231
  #
230
232
  # @option options [String] :retry_mode ("legacy")
231
233
  # Specifies which retry algorithm to use. Values are:
232
- # * `legacy` - The pre-existing retry behavior. This is default value if
233
- # no retry mode is provided.
234
- # * `standard` - A standardized set of retry rules across the AWS SDKs.
235
- # This includes support for retry quotas, which limit the number of
236
- # unsuccessful retries a client can make.
237
- # * `adaptive` - An experimental retry mode that includes all the
238
- # functionality of `standard` mode along with automatic client side
239
- # throttling. This is a provisional mode that may change behavior
240
- # in the future.
234
+ #
235
+ # * `legacy` - The pre-existing retry behavior. This is default value if
236
+ # no retry mode is provided.
237
+ #
238
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
239
+ # This includes support for retry quotas, which limit the number of
240
+ # unsuccessful retries a client can make.
241
+ #
242
+ # * `adaptive` - An experimental retry mode that includes all the
243
+ # functionality of `standard` mode along with automatic client side
244
+ # throttling. This is a provisional mode that may change behavior
245
+ # in the future.
246
+ #
241
247
  #
242
248
  # @option options [String] :secret_access_key
243
249
  #
@@ -275,8 +281,7 @@ module Aws::ServiceDiscovery
275
281
  #
276
282
  # @option options [Integer] :http_read_timeout (60) The default
277
283
  # number of seconds to wait for response data. This value can
278
- # safely be set
279
- # per-request on the session yielded by {#session_for}.
284
+ # safely be set per-request on the session.
280
285
  #
281
286
  # @option options [Float] :http_idle_timeout (5) The number of
282
287
  # seconds a connection is allowed to sit idle before it is
@@ -288,7 +293,7 @@ module Aws::ServiceDiscovery
288
293
  # request body. This option has no effect unless the request has
289
294
  # "Expect" header set to "100-continue". Defaults to `nil` which
290
295
  # disables this behaviour. This value can safely be set per
291
- # request on the session yielded by {#session_for}.
296
+ # request on the session.
292
297
  #
293
298
  # @option options [Boolean] :http_wire_trace (false) When `true`,
294
299
  # HTTP debug output will be sent to the `:logger`.
@@ -325,7 +330,7 @@ module Aws::ServiceDiscovery
325
330
  #
326
331
  #
327
332
  #
328
- # [1]: http://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
333
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
329
334
  #
330
335
  # @option params [required, String] :name
331
336
  # The name that you want to assign to this namespace.
@@ -342,16 +347,44 @@ module Aws::ServiceDiscovery
342
347
  # @option params [String] :description
343
348
  # A description for the namespace.
344
349
  #
350
+ # @option params [Array<Types::Tag>] :tags
351
+ # The tags to add to the namespace. Each tag consists of a key and an
352
+ # optional value, both of which you define. Tag keys can have a maximum
353
+ # character length of 128 characters, and tag values can have a maximum
354
+ # length of 256 characters.
355
+ #
345
356
  # @return [Types::CreateHttpNamespaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
346
357
  #
347
358
  # * {Types::CreateHttpNamespaceResponse#operation_id #operation_id} => String
348
359
  #
360
+ #
361
+ # @example Example: CreateHttpNamespace example
362
+ #
363
+ # # This example creates an HTTP namespace.
364
+ #
365
+ # resp = client.create_http_namespace({
366
+ # creator_request_id: "example-creator-request-id-0001",
367
+ # description: "Example.com AWS Cloud Map HTTP Namespace",
368
+ # name: "example-http.com",
369
+ # })
370
+ #
371
+ # resp.to_h outputs the following:
372
+ # {
373
+ # operation_id: "httpvoqozuhfet5kzxoxg-a-response-example",
374
+ # }
375
+ #
349
376
  # @example Request syntax with placeholder values
350
377
  #
351
378
  # resp = client.create_http_namespace({
352
379
  # name: "NamespaceName", # required
353
380
  # creator_request_id: "ResourceId",
354
381
  # description: "ResourceDescription",
382
+ # tags: [
383
+ # {
384
+ # key: "TagKey", # required
385
+ # value: "TagValue", # required
386
+ # },
387
+ # ],
355
388
  # })
356
389
  #
357
390
  # @example Response structure
@@ -377,7 +410,7 @@ module Aws::ServiceDiscovery
377
410
  #
378
411
  #
379
412
  #
380
- # [1]: http://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
413
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
381
414
  #
382
415
  # @option params [required, String] :name
383
416
  # The name that you want to assign to this namespace. When you create a
@@ -400,10 +433,32 @@ module Aws::ServiceDiscovery
400
433
  # The ID of the Amazon VPC that you want to associate the namespace
401
434
  # with.
402
435
  #
436
+ # @option params [Array<Types::Tag>] :tags
437
+ # The tags to add to the namespace. Each tag consists of a key and an
438
+ # optional value, both of which you define. Tag keys can have a maximum
439
+ # character length of 128 characters, and tag values can have a maximum
440
+ # length of 256 characters.
441
+ #
403
442
  # @return [Types::CreatePrivateDnsNamespaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
404
443
  #
405
444
  # * {Types::CreatePrivateDnsNamespaceResponse#operation_id #operation_id} => String
406
445
  #
446
+ #
447
+ # @example Example: Example: Create private DNS namespace
448
+ #
449
+ # # Example: Create private DNS namespace
450
+ #
451
+ # resp = client.create_private_dns_namespace({
452
+ # creator_request_id: "eedd6892-50f3-41b2-8af9-611d6e1d1a8c",
453
+ # name: "example.com",
454
+ # vpc: "vpc-1c56417b",
455
+ # })
456
+ #
457
+ # resp.to_h outputs the following:
458
+ # {
459
+ # operation_id: "gv4g5meo7ndmeh4fqskygvk23d2fijwa-k9302yzd",
460
+ # }
461
+ #
407
462
  # @example Request syntax with placeholder values
408
463
  #
409
464
  # resp = client.create_private_dns_namespace({
@@ -411,6 +466,12 @@ module Aws::ServiceDiscovery
411
466
  # creator_request_id: "ResourceId",
412
467
  # description: "ResourceDescription",
413
468
  # vpc: "ResourceId", # required
469
+ # tags: [
470
+ # {
471
+ # key: "TagKey", # required
472
+ # value: "TagValue", # required
473
+ # },
474
+ # ],
414
475
  # })
415
476
  #
416
477
  # @example Response structure
@@ -436,7 +497,7 @@ module Aws::ServiceDiscovery
436
497
  #
437
498
  #
438
499
  #
439
- # [1]: http://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
500
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
440
501
  #
441
502
  # @option params [required, String] :name
442
503
  # The name that you want to assign to this namespace.
@@ -453,16 +514,44 @@ module Aws::ServiceDiscovery
453
514
  # @option params [String] :description
454
515
  # A description for the namespace.
455
516
  #
517
+ # @option params [Array<Types::Tag>] :tags
518
+ # The tags to add to the namespace. Each tag consists of a key and an
519
+ # optional value, both of which you define. Tag keys can have a maximum
520
+ # character length of 128 characters, and tag values can have a maximum
521
+ # length of 256 characters.
522
+ #
456
523
  # @return [Types::CreatePublicDnsNamespaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
457
524
  #
458
525
  # * {Types::CreatePublicDnsNamespaceResponse#operation_id #operation_id} => String
459
526
  #
527
+ #
528
+ # @example Example: CreatePublicDnsNamespace example
529
+ #
530
+ # # This example creates a public namespace based on DNS.
531
+ #
532
+ # resp = client.create_public_dns_namespace({
533
+ # creator_request_id: "example-creator-request-id-0003",
534
+ # description: "Example.com AWS Cloud Map Public DNS Namespace",
535
+ # name: "example-public-dns.com",
536
+ # })
537
+ #
538
+ # resp.to_h outputs the following:
539
+ # {
540
+ # operation_id: "dns2voqozuhfet5kzxoxg-a-response-example",
541
+ # }
542
+ #
460
543
  # @example Request syntax with placeholder values
461
544
  #
462
545
  # resp = client.create_public_dns_namespace({
463
546
  # name: "NamespaceName", # required
464
547
  # creator_request_id: "ResourceId",
465
548
  # description: "ResourceDescription",
549
+ # tags: [
550
+ # {
551
+ # key: "TagKey", # required
552
+ # value: "TagValue", # required
553
+ # },
554
+ # ],
466
555
  # })
467
556
  #
468
557
  # @example Response structure
@@ -496,21 +585,40 @@ module Aws::ServiceDiscovery
496
585
  #
497
586
  # * Optionally, a health check
498
587
  #
499
- # After you create the service, you can submit a RegisterInstance
588
+ # After you create the service, you can submit a [RegisterInstance][1]
500
589
  # request, and AWS Cloud Map uses the values in the configuration to
501
590
  # create the specified entities.
502
591
  #
503
592
  # For the current limit on the number of instances that you can register
504
593
  # using the same namespace and using the same service, see [AWS Cloud
505
- # Map Limits][1] in the *AWS Cloud Map Developer Guide*.
594
+ # Map Limits][2] in the *AWS Cloud Map Developer Guide*.
506
595
  #
507
596
  #
508
597
  #
509
- # [1]: http://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
598
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html
599
+ # [2]: https://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
510
600
  #
511
601
  # @option params [required, String] :name
512
602
  # The name that you want to assign to the service.
513
603
  #
604
+ # If you want AWS Cloud Map to create an SRV record when you register an
605
+ # instance, and if you're using a system that requires a specific SRV
606
+ # format, such as [HAProxy][1], specify the following for `Name`\:
607
+ #
608
+ # * Start the name with an underscore (\_), such as `_exampleservice`
609
+ #
610
+ # * End the name with *.\_protocol*, such as `._tcp`
611
+ #
612
+ # When you register an instance, AWS Cloud Map creates an SRV record and
613
+ # assigns a name to the record by concatenating the service name and the
614
+ # namespace name, for example:
615
+ #
616
+ # `_exampleservice._tcp.example.com`
617
+ #
618
+ #
619
+ #
620
+ # [1]: http://www.haproxy.org/
621
+ #
514
622
  # @option params [String] :namespace_id
515
623
  # The ID of the namespace that you want to use to create the service.
516
624
  #
@@ -532,10 +640,10 @@ module Aws::ServiceDiscovery
532
640
  # instance.
533
641
  #
534
642
  # @option params [Types::HealthCheckConfig] :health_check_config
535
- # *Public DNS namespaces only.* A complex type that contains settings
536
- # for an optional Route 53 health check. If you specify settings for a
537
- # health check, AWS Cloud Map associates the health check with all the
538
- # Route 53 DNS records that you specify in `DnsConfig`.
643
+ # *Public DNS and HTTP namespaces only.* A complex type that contains
644
+ # settings for an optional Route 53 health check. If you specify
645
+ # settings for a health check, AWS Cloud Map associates the health check
646
+ # with all the Route 53 DNS records that you specify in `DnsConfig`.
539
647
  #
540
648
  # If you specify a health check configuration, you can specify either
541
649
  # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both.
@@ -554,10 +662,62 @@ module Aws::ServiceDiscovery
554
662
  # If you specify a health check configuration, you can specify either
555
663
  # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both.
556
664
  #
665
+ # You can't add, update, or delete a `HealthCheckCustomConfig`
666
+ # configuration from an existing service.
667
+ #
668
+ # @option params [Array<Types::Tag>] :tags
669
+ # The tags to add to the service. Each tag consists of a key and an
670
+ # optional value, both of which you define. Tag keys can have a maximum
671
+ # character length of 128 characters, and tag values can have a maximum
672
+ # length of 256 characters.
673
+ #
557
674
  # @return [Types::CreateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
558
675
  #
559
676
  # * {Types::CreateServiceResponse#service #service} => Types::Service
560
677
  #
678
+ #
679
+ # @example Example: Example: Create service
680
+ #
681
+ # # Example: Create service
682
+ #
683
+ # resp = client.create_service({
684
+ # creator_request_id: "567c1193-6b00-4308-bd57-ad38a8822d25",
685
+ # dns_config: {
686
+ # dns_records: [
687
+ # {
688
+ # ttl: 60,
689
+ # type: "A",
690
+ # },
691
+ # ],
692
+ # namespace_id: "ns-ylexjili4cdxy3xm",
693
+ # routing_policy: "MULTIVALUE",
694
+ # },
695
+ # name: "myservice",
696
+ # namespace_id: "ns-ylexjili4cdxy3xm",
697
+ # })
698
+ #
699
+ # resp.to_h outputs the following:
700
+ # {
701
+ # service: {
702
+ # arn: "arn:aws:servicediscovery:us-west-2:123456789012:service/srv-p5zdwlg5uvvzjita",
703
+ # create_date: Time.parse(1587081768.334),
704
+ # creator_request_id: "567c1193-6b00-4308-bd57-ad38a8822d25",
705
+ # dns_config: {
706
+ # dns_records: [
707
+ # {
708
+ # ttl: 60,
709
+ # type: "A",
710
+ # },
711
+ # ],
712
+ # namespace_id: "ns-ylexjili4cdxy3xm",
713
+ # routing_policy: "MULTIVALUE",
714
+ # },
715
+ # id: "srv-p5zdwlg5uvvzjita",
716
+ # name: "myservice",
717
+ # namespace_id: "ns-ylexjili4cdxy3xm",
718
+ # },
719
+ # }
720
+ #
561
721
  # @example Request syntax with placeholder values
562
722
  #
563
723
  # resp = client.create_service({
@@ -583,6 +743,12 @@ module Aws::ServiceDiscovery
583
743
  # health_check_custom_config: {
584
744
  # failure_threshold: 1,
585
745
  # },
746
+ # tags: [
747
+ # {
748
+ # key: "TagKey", # required
749
+ # value: "TagValue", # required
750
+ # },
751
+ # ],
586
752
  # })
587
753
  #
588
754
  # @example Response structure
@@ -624,6 +790,20 @@ module Aws::ServiceDiscovery
624
790
  #
625
791
  # * {Types::DeleteNamespaceResponse#operation_id #operation_id} => String
626
792
  #
793
+ #
794
+ # @example Example: Example: Delete namespace
795
+ #
796
+ # # Example: Delete namespace
797
+ #
798
+ # resp = client.delete_namespace({
799
+ # id: "ns-ylexjili4cdxy3xm",
800
+ # })
801
+ #
802
+ # resp.to_h outputs the following:
803
+ # {
804
+ # operation_id: "gv4g5meo7ndmeh4fqskygvk23d2fijwa-k98y6drk",
805
+ # }
806
+ #
627
807
  # @example Request syntax with placeholder values
628
808
  #
629
809
  # resp = client.delete_namespace({
@@ -651,6 +831,19 @@ module Aws::ServiceDiscovery
651
831
  #
652
832
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
653
833
  #
834
+ #
835
+ # @example Example: Example: Delete service
836
+ #
837
+ # # Example: Delete service
838
+ #
839
+ # resp = client.delete_service({
840
+ # id: "srv-p5zdwlg5uvvzjita",
841
+ # })
842
+ #
843
+ # resp.to_h outputs the following:
844
+ # {
845
+ # }
846
+ #
654
847
  # @example Request syntax with placeholder values
655
848
  #
656
849
  # resp = client.delete_service({
@@ -673,12 +866,32 @@ module Aws::ServiceDiscovery
673
866
  # The ID of the service that the instance is associated with.
674
867
  #
675
868
  # @option params [required, String] :instance_id
676
- # The value that you specified for `Id` in the RegisterInstance request.
869
+ # The value that you specified for `Id` in the [RegisterInstance][1]
870
+ # request.
871
+ #
872
+ #
873
+ #
874
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html
677
875
  #
678
876
  # @return [Types::DeregisterInstanceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
679
877
  #
680
878
  # * {Types::DeregisterInstanceResponse#operation_id #operation_id} => String
681
879
  #
880
+ #
881
+ # @example Example: Example: Deregister a service instance
882
+ #
883
+ # # Example: Deregister a service instance
884
+ #
885
+ # resp = client.deregister_instance({
886
+ # instance_id: "myservice-53",
887
+ # service_id: "srv-p5zdwlg5uvvzjita",
888
+ # })
889
+ #
890
+ # resp.to_h outputs the following:
891
+ # {
892
+ # operation_id: "4yejorelbukcjzpnr6tlmrghsjwpngf4-k98rnaiq",
893
+ # }
894
+ #
682
895
  # @example Request syntax with placeholder values
683
896
  #
684
897
  # resp = client.deregister_instance({
@@ -700,6 +913,9 @@ module Aws::ServiceDiscovery
700
913
  end
701
914
 
702
915
  # Discovers registered instances for a specified namespace and service.
916
+ # You can use `DiscoverInstances` to discover instances for any type of
917
+ # namespace. For public and private DNS namespaces, you can also use DNS
918
+ # queries to discover instances.
703
919
  #
704
920
  # @option params [required, String] :namespace_name
705
921
  # The name of the namespace that you specified when you registered the
@@ -710,9 +926,10 @@ module Aws::ServiceDiscovery
710
926
  # instance.
711
927
  #
712
928
  # @option params [Integer] :max_results
713
- # The maximum number of instances that you want Cloud Map to return in
714
- # the response to a `DiscoverInstances` request. If you don't specify a
715
- # value for `MaxResults`, Cloud Map returns up to 100 instances.
929
+ # The maximum number of instances that you want AWS Cloud Map to return
930
+ # in the response to a `DiscoverInstances` request. If you don't
931
+ # specify a value for `MaxResults`, AWS Cloud Map returns up to 100
932
+ # instances.
716
933
  #
717
934
  # @option params [Hash<String,String>] :query_parameters
718
935
  # A string map that contains attributes with values that you can use to
@@ -727,6 +944,34 @@ module Aws::ServiceDiscovery
727
944
  #
728
945
  # * {Types::DiscoverInstancesResponse#instances #instances} => Array&lt;Types::HttpInstanceSummary&gt;
729
946
  #
947
+ #
948
+ # @example Example: Example: Discover registered instances
949
+ #
950
+ # # Example: Discover registered instances
951
+ #
952
+ # resp = client.discover_instances({
953
+ # health_status: "ALL",
954
+ # max_results: 10,
955
+ # namespace_name: "example.com",
956
+ # service_name: "myservice",
957
+ # })
958
+ #
959
+ # resp.to_h outputs the following:
960
+ # {
961
+ # instances: [
962
+ # {
963
+ # attributes: {
964
+ # "AWS_INSTANCE_IPV4" => "172.2.1.3",
965
+ # "AWS_INSTANCE_PORT" => "808",
966
+ # },
967
+ # health_status: "UNKNOWN",
968
+ # instance_id: "myservice-53",
969
+ # namespace_name: "example.com",
970
+ # service_name: "myservice",
971
+ # },
972
+ # ],
973
+ # }
974
+ #
730
975
  # @example Request syntax with placeholder values
731
976
  #
732
977
  # resp = client.discover_instances({
@@ -770,6 +1015,30 @@ module Aws::ServiceDiscovery
770
1015
  #
771
1016
  # * {Types::GetInstanceResponse#instance #instance} => Types::Instance
772
1017
  #
1018
+ #
1019
+ # @example Example: GetInstance example
1020
+ #
1021
+ # # This example gets information about a specified instance.
1022
+ #
1023
+ # resp = client.get_instance({
1024
+ # instance_id: "i-abcd1234",
1025
+ # service_id: "srv-e4anhexample0004",
1026
+ # })
1027
+ #
1028
+ # resp.to_h outputs the following:
1029
+ # {
1030
+ # instance: {
1031
+ # attributes: {
1032
+ # "AWS_INSTANCE_IPV4" => "192.0.2.44",
1033
+ # "AWS_INSTANCE_PORT" => "80",
1034
+ # "color" => "green",
1035
+ # "region" => "us-west-2",
1036
+ # "stage" => "beta",
1037
+ # },
1038
+ # id: "i-abcd1234",
1039
+ # },
1040
+ # }
1041
+ #
773
1042
  # @example Request syntax with placeholder values
774
1043
  #
775
1044
  # resp = client.get_instance({
@@ -812,10 +1081,14 @@ module Aws::ServiceDiscovery
812
1081
  # all the instances that are associated with the specified service.
813
1082
  #
814
1083
  # <note markdown="1"> To get the IDs for the instances that you've registered by using a
815
- # specified service, submit a ListInstances request.
1084
+ # specified service, submit a [ListInstances][1] request.
816
1085
  #
817
1086
  # </note>
818
1087
  #
1088
+ #
1089
+ #
1090
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_ListInstances.html
1091
+ #
819
1092
  # @option params [Integer] :max_results
820
1093
  # The maximum number of instances that you want AWS Cloud Map to return
821
1094
  # in the response to a `GetInstancesHealthStatus` request. If you don't
@@ -835,6 +1108,25 @@ module Aws::ServiceDiscovery
835
1108
  # * {Types::GetInstancesHealthStatusResponse#status #status} => Hash&lt;String,String&gt;
836
1109
  # * {Types::GetInstancesHealthStatusResponse#next_token #next_token} => String
837
1110
  #
1111
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1112
+ #
1113
+ #
1114
+ # @example Example: GetInstancesHealthStatus example
1115
+ #
1116
+ # # This example gets the current health status of one or more instances that are associate with a specified service.
1117
+ #
1118
+ # resp = client.get_instances_health_status({
1119
+ # service_id: "srv-e4anhexample0004",
1120
+ # })
1121
+ #
1122
+ # resp.to_h outputs the following:
1123
+ # {
1124
+ # status: {
1125
+ # "i-abcd1234" => "HEALTHY",
1126
+ # "i-abcd1235" => "UNHEALTHY",
1127
+ # },
1128
+ # }
1129
+ #
838
1130
  # @example Request syntax with placeholder values
839
1131
  #
840
1132
  # resp = client.get_instances_health_status({
@@ -868,6 +1160,35 @@ module Aws::ServiceDiscovery
868
1160
  #
869
1161
  # * {Types::GetNamespaceResponse#namespace #namespace} => Types::Namespace
870
1162
  #
1163
+ #
1164
+ # @example Example: GetNamespace example
1165
+ #
1166
+ # # This example gets information about a specified namespace.
1167
+ #
1168
+ # resp = client.get_namespace({
1169
+ # id: "ns-e4anhexample0004",
1170
+ # })
1171
+ #
1172
+ # resp.to_h outputs the following:
1173
+ # {
1174
+ # namespace: {
1175
+ # arn: "arn:aws:servicediscovery:us-west-2: 123456789120:namespace/ns-e1tpmexample0001",
1176
+ # create_date: Time.parse("20181118T211712Z"),
1177
+ # creator_request_id: "example-creator-request-id-0001",
1178
+ # description: "Example.com AWS Cloud Map HTTP Namespace",
1179
+ # id: "ns-e1tpmexample0001",
1180
+ # name: "example-http.com",
1181
+ # properties: {
1182
+ # dns_properties: {
1183
+ # },
1184
+ # http_properties: {
1185
+ # http_name: "example-http.com",
1186
+ # },
1187
+ # },
1188
+ # type: "HTTP",
1189
+ # },
1190
+ # }
1191
+ #
871
1192
  # @example Request syntax with placeholder values
872
1193
  #
873
1194
  # resp = client.get_namespace({
@@ -900,10 +1221,14 @@ module Aws::ServiceDiscovery
900
1221
  # the response, such as a `CreateService` request.
901
1222
  #
902
1223
  # <note markdown="1"> To get a list of operations that match specified criteria, see
903
- # ListOperations.
1224
+ # [ListOperations][1].
904
1225
  #
905
1226
  # </note>
906
1227
  #
1228
+ #
1229
+ #
1230
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_ListOperations.html
1231
+ #
907
1232
  # @option params [required, String] :operation_id
908
1233
  # The ID of the operation that you want to get more information about.
909
1234
  #
@@ -911,6 +1236,29 @@ module Aws::ServiceDiscovery
911
1236
  #
912
1237
  # * {Types::GetOperationResponse#operation #operation} => Types::Operation
913
1238
  #
1239
+ #
1240
+ # @example Example: Example: Get operation result
1241
+ #
1242
+ # # Example: Get operation result
1243
+ #
1244
+ # resp = client.get_operation({
1245
+ # operation_id: "gv4g5meo7ndmeh4fqskygvk23d2fijwa-k9302yzd",
1246
+ # })
1247
+ #
1248
+ # resp.to_h outputs the following:
1249
+ # {
1250
+ # operation: {
1251
+ # create_date: Time.parse(1587055860.121),
1252
+ # id: "gv4g5meo7ndmeh4fqskygvk23d2fijwa-k9302yzd",
1253
+ # status: "SUCCESS",
1254
+ # targets: {
1255
+ # "NAMESPACE" => "ns-ylexjili4cdxy3xm",
1256
+ # },
1257
+ # type: "CREATE_NAMESPACE",
1258
+ # update_date: Time.parse(1587055900.469),
1259
+ # },
1260
+ # }
1261
+ #
914
1262
  # @example Request syntax with placeholder values
915
1263
  #
916
1264
  # resp = client.get_operation({
@@ -947,6 +1295,33 @@ module Aws::ServiceDiscovery
947
1295
  #
948
1296
  # * {Types::GetServiceResponse#service #service} => Types::Service
949
1297
  #
1298
+ #
1299
+ # @example Example: GetService Example
1300
+ #
1301
+ # # This example gets the settings for a specified service.
1302
+ #
1303
+ # resp = client.get_service({
1304
+ # id: "srv-e4anhexample0004",
1305
+ # })
1306
+ #
1307
+ # resp.to_h outputs the following:
1308
+ # {
1309
+ # service: {
1310
+ # arn: "arn:aws:servicediscovery:us-west-2:123456789120:service/srv-e4anhexample0004",
1311
+ # create_date: Time.parse("20181118T211707Z"),
1312
+ # creator_request_id: "example-creator-request-id-0004",
1313
+ # description: "Example.com AWS Cloud Map HTTP Service",
1314
+ # health_check_config: {
1315
+ # failure_threshold: 3,
1316
+ # resource_path: "/",
1317
+ # type: "HTTPS",
1318
+ # },
1319
+ # id: "srv-e4anhexample0004",
1320
+ # name: "example-http-service",
1321
+ # namespace_id: "ns-e4anhexample0004",
1322
+ # },
1323
+ # }
1324
+ #
950
1325
  # @example Request syntax with placeholder values
951
1326
  #
952
1327
  # resp = client.get_service({
@@ -1006,6 +1381,30 @@ module Aws::ServiceDiscovery
1006
1381
  # * {Types::ListInstancesResponse#instances #instances} => Array&lt;Types::InstanceSummary&gt;
1007
1382
  # * {Types::ListInstancesResponse#next_token #next_token} => String
1008
1383
  #
1384
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1385
+ #
1386
+ #
1387
+ # @example Example: Example: List service instances
1388
+ #
1389
+ # # Example: List service instances
1390
+ #
1391
+ # resp = client.list_instances({
1392
+ # service_id: "srv-qzpwvt2tfqcegapy",
1393
+ # })
1394
+ #
1395
+ # resp.to_h outputs the following:
1396
+ # {
1397
+ # instances: [
1398
+ # {
1399
+ # attributes: {
1400
+ # "AWS_INSTANCE_IPV4" => "172.2.1.3",
1401
+ # "AWS_INSTANCE_PORT" => "808",
1402
+ # },
1403
+ # id: "i-06bdabbae60f65a4e",
1404
+ # },
1405
+ # ],
1406
+ # }
1407
+ #
1009
1408
  # @example Request syntax with placeholder values
1010
1409
  #
1011
1410
  # resp = client.list_instances({
@@ -1066,6 +1465,67 @@ module Aws::ServiceDiscovery
1066
1465
  # * {Types::ListNamespacesResponse#namespaces #namespaces} => Array&lt;Types::NamespaceSummary&gt;
1067
1466
  # * {Types::ListNamespacesResponse#next_token #next_token} => String
1068
1467
  #
1468
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1469
+ #
1470
+ #
1471
+ # @example Example: Example: List namespaces
1472
+ #
1473
+ # # Example: List namespaces
1474
+ #
1475
+ # resp = client.list_namespaces({
1476
+ # })
1477
+ #
1478
+ # resp.to_h outputs the following:
1479
+ # {
1480
+ # namespaces: [
1481
+ # {
1482
+ # arn: "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-a3ccy2e7e3a7rile",
1483
+ # create_date: Time.parse(1585354387.357),
1484
+ # id: "ns-a3ccy2e7e3a7rile",
1485
+ # name: "local",
1486
+ # properties: {
1487
+ # dns_properties: {
1488
+ # hosted_zone_id: "Z06752353VBUDTC32S84S",
1489
+ # },
1490
+ # http_properties: {
1491
+ # http_name: "local",
1492
+ # },
1493
+ # },
1494
+ # type: "DNS_PRIVATE",
1495
+ # },
1496
+ # {
1497
+ # arn: "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-pocfyjtrsmwtvcxx",
1498
+ # create_date: Time.parse(1586468974.698),
1499
+ # description: "My second namespace",
1500
+ # id: "ns-pocfyjtrsmwtvcxx",
1501
+ # name: "My-second-namespace",
1502
+ # properties: {
1503
+ # dns_properties: {
1504
+ # },
1505
+ # http_properties: {
1506
+ # http_name: "My-second-namespace",
1507
+ # },
1508
+ # },
1509
+ # type: "HTTP",
1510
+ # },
1511
+ # {
1512
+ # arn: "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-ylexjili4cdxy3xm",
1513
+ # create_date: Time.parse(1587055896.798),
1514
+ # id: "ns-ylexjili4cdxy3xm",
1515
+ # name: "example.com",
1516
+ # properties: {
1517
+ # dns_properties: {
1518
+ # hosted_zone_id: "Z09983722P0QME1B3KC8I",
1519
+ # },
1520
+ # http_properties: {
1521
+ # http_name: "example.com",
1522
+ # },
1523
+ # },
1524
+ # type: "DNS_PRIVATE",
1525
+ # },
1526
+ # ],
1527
+ # }
1528
+ #
1069
1529
  # @example Request syntax with placeholder values
1070
1530
  #
1071
1531
  # resp = client.list_namespaces({
@@ -1138,6 +1598,44 @@ module Aws::ServiceDiscovery
1138
1598
  # * {Types::ListOperationsResponse#operations #operations} => Array&lt;Types::OperationSummary&gt;
1139
1599
  # * {Types::ListOperationsResponse#next_token #next_token} => String
1140
1600
  #
1601
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1602
+ #
1603
+ #
1604
+ # @example Example: ListOperations Example
1605
+ #
1606
+ # # This example gets the operations that have a STATUS of either PENDING or SUCCESS.
1607
+ #
1608
+ # resp = client.list_operations({
1609
+ # filters: [
1610
+ # {
1611
+ # condition: "IN",
1612
+ # name: "STATUS",
1613
+ # values: [
1614
+ # "PENDING",
1615
+ # "SUCCESS",
1616
+ # ],
1617
+ # },
1618
+ # ],
1619
+ # })
1620
+ #
1621
+ # resp.to_h outputs the following:
1622
+ # {
1623
+ # operations: [
1624
+ # {
1625
+ # id: "76yy8ovhpdz0plmjzbsnqgnrqvpv2qdt-kexample",
1626
+ # status: "SUCCESS",
1627
+ # },
1628
+ # {
1629
+ # id: "prysnyzpji3u2ciy45nke83x2zanl7yk-dexample",
1630
+ # status: "SUCCESS",
1631
+ # },
1632
+ # {
1633
+ # id: "ko4ekftir7kzlbechsh7xvcdgcpk66gh-7example",
1634
+ # status: "PENDING",
1635
+ # },
1636
+ # ],
1637
+ # }
1638
+ #
1141
1639
  # @example Request syntax with placeholder values
1142
1640
  #
1143
1641
  # resp = client.list_operations({
@@ -1203,6 +1701,37 @@ module Aws::ServiceDiscovery
1203
1701
  # * {Types::ListServicesResponse#services #services} => Array&lt;Types::ServiceSummary&gt;
1204
1702
  # * {Types::ListServicesResponse#next_token #next_token} => String
1205
1703
  #
1704
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1705
+ #
1706
+ #
1707
+ # @example Example: Example: List services
1708
+ #
1709
+ # # Example: List services
1710
+ #
1711
+ # resp = client.list_services({
1712
+ # })
1713
+ #
1714
+ # resp.to_h outputs the following:
1715
+ # {
1716
+ # services: [
1717
+ # {
1718
+ # arn: "arn:aws:servicediscovery:us-west-2:123456789012:service/srv-p5zdwlg5uvvzjita",
1719
+ # create_date: Time.parse(1587081768.334),
1720
+ # dns_config: {
1721
+ # dns_records: [
1722
+ # {
1723
+ # ttl: 60,
1724
+ # type: "A",
1725
+ # },
1726
+ # ],
1727
+ # routing_policy: "MULTIVALUE",
1728
+ # },
1729
+ # id: "srv-p5zdwlg5uvvzjita",
1730
+ # name: "myservice",
1731
+ # },
1732
+ # ],
1733
+ # }
1734
+ #
1206
1735
  # @example Request syntax with placeholder values
1207
1736
  #
1208
1737
  # resp = client.list_services({
@@ -1246,6 +1775,60 @@ module Aws::ServiceDiscovery
1246
1775
  req.send_request(options)
1247
1776
  end
1248
1777
 
1778
+ # Lists tags for the specified resource.
1779
+ #
1780
+ # @option params [required, String] :resource_arn
1781
+ # The Amazon Resource Name (ARN) of the resource that you want to
1782
+ # retrieve tags for.
1783
+ #
1784
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1785
+ #
1786
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Array&lt;Types::Tag&gt;
1787
+ #
1788
+ #
1789
+ # @example Example: ListTagsForResource example
1790
+ #
1791
+ # # This example lists the tags of a resource.
1792
+ #
1793
+ # resp = client.list_tags_for_resource({
1794
+ # resource_arn: "arn:aws:servicediscovery:us-east-1:123456789012:namespace/ns-ylexjili4cdxy3xm",
1795
+ # })
1796
+ #
1797
+ # resp.to_h outputs the following:
1798
+ # {
1799
+ # tags: [
1800
+ # {
1801
+ # key: "Project",
1802
+ # value: "Zeta",
1803
+ # },
1804
+ # {
1805
+ # key: "Department",
1806
+ # value: "Engineering",
1807
+ # },
1808
+ # ],
1809
+ # }
1810
+ #
1811
+ # @example Request syntax with placeholder values
1812
+ #
1813
+ # resp = client.list_tags_for_resource({
1814
+ # resource_arn: "AmazonResourceName", # required
1815
+ # })
1816
+ #
1817
+ # @example Response structure
1818
+ #
1819
+ # resp.tags #=> Array
1820
+ # resp.tags[0].key #=> String
1821
+ # resp.tags[0].value #=> String
1822
+ #
1823
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListTagsForResource AWS API Documentation
1824
+ #
1825
+ # @overload list_tags_for_resource(params = {})
1826
+ # @param [Hash] params ({})
1827
+ def list_tags_for_resource(params = {}, options = {})
1828
+ req = build_request(:list_tags_for_resource, params)
1829
+ req.send_request(options)
1830
+ end
1831
+
1249
1832
  # Creates or updates one or more records and, optionally, creates a
1250
1833
  # health check based on the settings in a specified service. When you
1251
1834
  # submit a `RegisterInstance` request, the following occurs:
@@ -1263,7 +1846,7 @@ module Aws::ServiceDiscovery
1263
1846
  # One `RegisterInstance` request must complete before you can submit
1264
1847
  # another request and specify the same service ID and instance ID.
1265
1848
  #
1266
- # For more information, see CreateService.
1849
+ # For more information, see [CreateService][1].
1267
1850
  #
1268
1851
  # When AWS Cloud Map receives a DNS query for the specified DNS name, it
1269
1852
  # returns the applicable value:
@@ -1278,11 +1861,12 @@ module Aws::ServiceDiscovery
1278
1861
  #
1279
1862
  # For the current limit on the number of instances that you can register
1280
1863
  # using the same namespace and using the same service, see [AWS Cloud
1281
- # Map Limits][1] in the *AWS Cloud Map Developer Guide*.
1864
+ # Map Limits][2] in the *AWS Cloud Map Developer Guide*.
1282
1865
  #
1283
1866
  #
1284
1867
  #
1285
- # [1]: http://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
1868
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_CreateService.html
1869
+ # [2]: https://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
1286
1870
  #
1287
1871
  # @option params [required, String] :service_id
1288
1872
  # The ID of the service that you want to use for settings for the
@@ -1295,7 +1879,7 @@ module Aws::ServiceDiscovery
1295
1879
  # * If the service that is specified by `ServiceId` includes settings
1296
1880
  # for an SRV record, the value of `InstanceId` is automatically
1297
1881
  # included as part of the value for the SRV record. For more
1298
- # information, see DnsRecord$Type.
1882
+ # information, see [DnsRecord &gt; Type][1].
1299
1883
  #
1300
1884
  # * You can use this value to update an existing instance.
1301
1885
  #
@@ -1312,6 +1896,10 @@ module Aws::ServiceDiscovery
1312
1896
  #
1313
1897
  # </note>
1314
1898
  #
1899
+ #
1900
+ #
1901
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_DnsRecord.html#cloudmap-Type-DnsRecord-Type
1902
+ #
1315
1903
  # @option params [String] :creator_request_id
1316
1904
  # A unique string that identifies the request and that allows failed
1317
1905
  # `RegisterInstance` requests to be retried without the risk of
@@ -1411,23 +1999,45 @@ module Aws::ServiceDiscovery
1411
1999
  # If the service includes `HealthCheckConfig`, the port on the endpoint
1412
2000
  # that you want Route 53 to send requests to.
1413
2001
  #
1414
- # This value is required if you specified settings for an SRV record
1415
- # when you created the service.
2002
+ # This value is required if you specified settings for an SRV record or
2003
+ # a Route 53 health check when you created the service.
1416
2004
  #
1417
2005
  # **Custom attributes**
1418
2006
  #
1419
2007
  # You can add up to 30 custom attributes. For each key-value pair, the
1420
2008
  # maximum length of the attribute name is 255 characters, and the
1421
- # maximum length of the attribute value is 1,024 characters.
2009
+ # maximum length of the attribute value is 1,024 characters. Total size
2010
+ # of all provided attributes (sum of all keys and values) must not
2011
+ # exceed 5,000 characters.
1422
2012
  #
1423
2013
  #
1424
2014
  #
1425
- # [1]: http://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html
2015
+ # [1]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html
1426
2016
  #
1427
2017
  # @return [Types::RegisterInstanceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1428
2018
  #
1429
2019
  # * {Types::RegisterInstanceResponse#operation_id #operation_id} => String
1430
2020
  #
2021
+ #
2022
+ # @example Example: Example: Register Instance
2023
+ #
2024
+ # # Example: Register Instance
2025
+ #
2026
+ # resp = client.register_instance({
2027
+ # attributes: {
2028
+ # "AWS_INSTANCE_IPV4" => "172.2.1.3",
2029
+ # "AWS_INSTANCE_PORT" => "808",
2030
+ # },
2031
+ # creator_request_id: "7a48a98a-72e6-4849-bfa7-1a458e030d7b",
2032
+ # instance_id: "myservice-53",
2033
+ # service_id: "srv-p5zdwlg5uvvzjita",
2034
+ # })
2035
+ #
2036
+ # resp.to_h outputs the following:
2037
+ # {
2038
+ # operation_id: "4yejorelbukcjzpnr6tlmrghsjwpngf4-k95yg2u7",
2039
+ # }
2040
+ #
1431
2041
  # @example Request syntax with placeholder values
1432
2042
  #
1433
2043
  # resp = client.register_instance({
@@ -1452,6 +2062,107 @@ module Aws::ServiceDiscovery
1452
2062
  req.send_request(options)
1453
2063
  end
1454
2064
 
2065
+ # Adds one or more tags to the specified resource.
2066
+ #
2067
+ # @option params [required, String] :resource_arn
2068
+ # The Amazon Resource Name (ARN) of the resource that you want to
2069
+ # retrieve tags for.
2070
+ #
2071
+ # @option params [required, Array<Types::Tag>] :tags
2072
+ # The tags to add to the specified resource. Specifying the tag key is
2073
+ # required. You can set the value of a tag to an empty string, but you
2074
+ # can't set the value of a tag to null.
2075
+ #
2076
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2077
+ #
2078
+ #
2079
+ # @example Example: TagResource example
2080
+ #
2081
+ # # This example adds "Department" and "Project" tags to a resource.
2082
+ #
2083
+ # resp = client.tag_resource({
2084
+ # resource_arn: "arn:aws:servicediscovery:us-east-1:123456789012:namespace/ns-ylexjili4cdxy3xm",
2085
+ # tags: [
2086
+ # {
2087
+ # key: "Department",
2088
+ # value: "Engineering",
2089
+ # },
2090
+ # {
2091
+ # key: "Project",
2092
+ # value: "Zeta",
2093
+ # },
2094
+ # ],
2095
+ # })
2096
+ #
2097
+ # resp.to_h outputs the following:
2098
+ # {
2099
+ # }
2100
+ #
2101
+ # @example Request syntax with placeholder values
2102
+ #
2103
+ # resp = client.tag_resource({
2104
+ # resource_arn: "AmazonResourceName", # required
2105
+ # tags: [ # required
2106
+ # {
2107
+ # key: "TagKey", # required
2108
+ # value: "TagValue", # required
2109
+ # },
2110
+ # ],
2111
+ # })
2112
+ #
2113
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/TagResource AWS API Documentation
2114
+ #
2115
+ # @overload tag_resource(params = {})
2116
+ # @param [Hash] params ({})
2117
+ def tag_resource(params = {}, options = {})
2118
+ req = build_request(:tag_resource, params)
2119
+ req.send_request(options)
2120
+ end
2121
+
2122
+ # Removes one or more tags from the specified resource.
2123
+ #
2124
+ # @option params [required, String] :resource_arn
2125
+ # The Amazon Resource Name (ARN) of the resource that you want to
2126
+ # retrieve tags for.
2127
+ #
2128
+ # @option params [required, Array<String>] :tag_keys
2129
+ # The tag keys to remove from the specified resource.
2130
+ #
2131
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2132
+ #
2133
+ #
2134
+ # @example Example: UntagResource example
2135
+ #
2136
+ # # This example removes the "Department" and "Project" tags from a resource.
2137
+ #
2138
+ # resp = client.untag_resource({
2139
+ # resource_arn: "arn:aws:servicediscovery:us-east-1:123456789012:namespace/ns-ylexjili4cdxy3xm",
2140
+ # tag_keys: [
2141
+ # "Project",
2142
+ # "Department",
2143
+ # ],
2144
+ # })
2145
+ #
2146
+ # resp.to_h outputs the following:
2147
+ # {
2148
+ # }
2149
+ #
2150
+ # @example Request syntax with placeholder values
2151
+ #
2152
+ # resp = client.untag_resource({
2153
+ # resource_arn: "AmazonResourceName", # required
2154
+ # tag_keys: ["TagKey"], # required
2155
+ # })
2156
+ #
2157
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/UntagResource AWS API Documentation
2158
+ #
2159
+ # @overload untag_resource(params = {})
2160
+ # @param [Hash] params ({})
2161
+ def untag_resource(params = {}, options = {})
2162
+ req = build_request(:untag_resource, params)
2163
+ req.send_request(options)
2164
+ end
2165
+
1455
2166
  # Submits a request to change the health status of a custom health check
1456
2167
  # to healthy or unhealthy.
1457
2168
  #
@@ -1461,7 +2172,11 @@ module Aws::ServiceDiscovery
1461
2172
  # to change the status for Route 53 health checks, which you define
1462
2173
  # using `HealthCheckConfig`.
1463
2174
  #
1464
- # For more information, see HealthCheckCustomConfig.
2175
+ # For more information, see [HealthCheckCustomConfig][1].
2176
+ #
2177
+ #
2178
+ #
2179
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_HealthCheckCustomConfig.html
1465
2180
  #
1466
2181
  # @option params [required, String] :service_id
1467
2182
  # The ID of the service that includes the configuration for the custom
@@ -1475,6 +2190,18 @@ module Aws::ServiceDiscovery
1475
2190
  #
1476
2191
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1477
2192
  #
2193
+ #
2194
+ # @example Example: UpdateInstanceCustomHealthStatus Example
2195
+ #
2196
+ # # This example submits a request to change the health status of an instance associated with a service with a custom health
2197
+ # # check to HEALTHY.
2198
+ #
2199
+ # resp = client.update_instance_custom_health_status({
2200
+ # instance_id: "i-abcd1234",
2201
+ # service_id: "srv-e4anhexample0004",
2202
+ # status: "HEALTHY",
2203
+ # })
2204
+ #
1478
2205
  # @example Request syntax with placeholder values
1479
2206
  #
1480
2207
  # resp = client.update_instance_custom_health_status({
@@ -1494,21 +2221,28 @@ module Aws::ServiceDiscovery
1494
2221
 
1495
2222
  # Submits a request to perform the following operations:
1496
2223
  #
1497
- # * Add or delete `DnsRecords` configurations
1498
- #
1499
2224
  # * Update the TTL setting for existing `DnsRecords` configurations
1500
2225
  #
1501
2226
  # * Add, update, or delete `HealthCheckConfig` for a specified service
1502
2227
  #
1503
- # For public and private DNS namespaces, you must specify all
1504
- # `DnsRecords` configurations (and, optionally, `HealthCheckConfig`)
1505
- # that you want to appear in the updated service. Any current
1506
- # configurations that don't appear in an `UpdateService` request are
1507
- # deleted.
2228
+ # <note markdown="1"> You can't add, update, or delete a `HealthCheckCustomConfig`
2229
+ # configuration.
2230
+ #
2231
+ # </note>
1508
2232
  #
1509
- # When you update the TTL setting for a service, AWS Cloud Map also
1510
- # updates the corresponding settings in all the records and health
1511
- # checks that were created by using the specified service.
2233
+ # For public and private DNS namespaces, note the following:
2234
+ #
2235
+ # * If you omit any existing `DnsRecords` or `HealthCheckConfig`
2236
+ # configurations from an `UpdateService` request, the configurations
2237
+ # are deleted from the service.
2238
+ #
2239
+ # * If you omit an existing `HealthCheckCustomConfig` configuration from
2240
+ # an `UpdateService` request, the configuration is not deleted from
2241
+ # the service.
2242
+ #
2243
+ # When you update settings for a service, AWS Cloud Map also updates the
2244
+ # corresponding settings in all the records and health checks that were
2245
+ # created by using the specified service.
1512
2246
  #
1513
2247
  # @option params [required, String] :id
1514
2248
  # The ID of the service that you want to update.
@@ -1520,13 +2254,42 @@ module Aws::ServiceDiscovery
1520
2254
  #
1521
2255
  # * {Types::UpdateServiceResponse#operation_id #operation_id} => String
1522
2256
  #
2257
+ #
2258
+ # @example Example: UpdateService Example
2259
+ #
2260
+ # # This example submits a request to replace the DnsConfig and HealthCheckConfig settings of a specified service.
2261
+ #
2262
+ # resp = client.update_service({
2263
+ # id: "srv-e4anhexample0004",
2264
+ # service: {
2265
+ # dns_config: {
2266
+ # dns_records: [
2267
+ # {
2268
+ # ttl: 60,
2269
+ # type: "A",
2270
+ # },
2271
+ # ],
2272
+ # },
2273
+ # health_check_config: {
2274
+ # failure_threshold: 2,
2275
+ # resource_path: "/",
2276
+ # type: "HTTP",
2277
+ # },
2278
+ # },
2279
+ # })
2280
+ #
2281
+ # resp.to_h outputs the following:
2282
+ # {
2283
+ # operation_id: "m35hsdrkxwjffm3xef4bxyy6vc3ewakx-jdn3y5g5",
2284
+ # }
2285
+ #
1523
2286
  # @example Request syntax with placeholder values
1524
2287
  #
1525
2288
  # resp = client.update_service({
1526
2289
  # id: "ResourceId", # required
1527
2290
  # service: { # required
1528
2291
  # description: "ResourceDescription",
1529
- # dns_config: { # required
2292
+ # dns_config: {
1530
2293
  # dns_records: [ # required
1531
2294
  # {
1532
2295
  # type: "SRV", # required, accepts SRV, A, AAAA, CNAME
@@ -1568,7 +2331,7 @@ module Aws::ServiceDiscovery
1568
2331
  params: params,
1569
2332
  config: config)
1570
2333
  context[:gem_name] = 'aws-sdk-servicediscovery'
1571
- context[:gem_version] = '1.20.0'
2334
+ context[:gem_version] = '1.25.1'
1572
2335
  Seahorse::Client::Request.new(handlers, context)
1573
2336
  end
1574
2337