aws-sdk-greengrassv2 1.10.0 → 1.14.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: 8785911fc45803c6896f3371505e8da554c530bae251723a4e33bc533d823680
4
- data.tar.gz: 0f0473a65c19205ad1dd8392cbcf251290f8a39082bf8d96e9a7c6e1854300a7
3
+ metadata.gz: 41307ecf4c587a44d027b8c3880d2065787baeeaf3f92d2b3a1aa758ddd189c9
4
+ data.tar.gz: ac01298f87cce86f2e93eacaac428b023a10d108adc2a5d6fafee4d3a0f91fe8
5
5
  SHA512:
6
- metadata.gz: 6ca55d5fb0a2abc52acc5920699ec7e085d1c8c495eb682c911cb0f704b5c8fc9d66927394c4ad2c2d85e7295488bfd0c9c93002eb247fbb97f4a889e39b25ce
7
- data.tar.gz: 50ea625f8c5fe703c8446eb817a9b22c930822def7bc06ca38b1b892acb1dbb8ffb0dd9e1b0d0bcc397c4a6333289d975f13d6a4a3a318d5cd23d490a18e5231
6
+ metadata.gz: ea775f81ade890b01f74b9492a622188d9a21081f713acd838ada2bfa78281a66c0d7e205f2065e85a39db73af202ddcf275a702d4f329d854c02b111a7bbfa7
7
+ data.tar.gz: 88390025c82ebe0578d8efb8cf1827850e58da46496648ab73d268074174e1d1979f0c870b430365f8851f13afb4d1ff1be14789d7a2b703f11bf2d8801af7cf
data/CHANGELOG.md CHANGED
@@ -1,6 +1,26 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.14.0 (2022-01-03)
5
+ ------------------
6
+
7
+ * Feature - This release adds the API operations to manage the Greengrass role associated with your account and to manage the core device connectivity information. Greengrass V2 customers can now depend solely on Greengrass V2 SDK for all the API operations needed to manage their fleets.
8
+
9
+ 1.13.0 (2021-12-21)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
14
+ 1.12.0 (2021-11-30)
15
+ ------------------
16
+
17
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
18
+
19
+ 1.11.0 (2021-11-09)
20
+ ------------------
21
+
22
+ * Feature - This release adds support for Greengrass core devices running Windows. You can now specify name of a Windows user to run a component.
23
+
4
24
  1.10.0 (2021-11-04)
5
25
  ------------------
6
26
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.10.0
1
+ 1.14.0
@@ -27,6 +27,7 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
30
31
  require 'aws-sdk-core/plugins/signature_v4.rb'
31
32
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
32
33
 
@@ -73,6 +74,7 @@ module Aws::GreengrassV2
73
74
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
74
75
  add_plugin(Aws::Plugins::TransferEncoding)
75
76
  add_plugin(Aws::Plugins::HttpChecksum)
77
+ add_plugin(Aws::Plugins::DefaultsMode)
76
78
  add_plugin(Aws::Plugins::SignatureV4)
77
79
  add_plugin(Aws::Plugins::Protocols::RestJson)
78
80
 
@@ -119,7 +121,9 @@ module Aws::GreengrassV2
119
121
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
122
  # are very aggressive. Construct and pass an instance of
121
123
  # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
- # enable retries and extended timeouts.
124
+ # enable retries and extended timeouts. Instance profile credential
125
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
126
+ # to true.
123
127
  #
124
128
  # @option options [required, String] :region
125
129
  # The AWS region to connect to. The configured `:region` is
@@ -173,6 +177,10 @@ module Aws::GreengrassV2
173
177
  # Used only in `standard` and adaptive retry modes. Specifies whether to apply
174
178
  # a clock skew correction and retry requests with skewed client clocks.
175
179
  #
180
+ # @option options [String] :defaults_mode ("legacy")
181
+ # See {Aws::DefaultsModeConfiguration} for a list of the
182
+ # accepted modes and the configuration defaults that are included.
183
+ #
176
184
  # @option options [Boolean] :disable_host_prefix_injection (false)
177
185
  # Set to true to disable SDK automatically adding host prefix
178
186
  # to default service endpoint when available.
@@ -295,7 +303,7 @@ module Aws::GreengrassV2
295
303
  # seconds to wait when opening a HTTP session before raising a
296
304
  # `Timeout::Error`.
297
305
  #
298
- # @option options [Integer] :http_read_timeout (60) The default
306
+ # @option options [Float] :http_read_timeout (60) The default
299
307
  # number of seconds to wait for response data. This value can
300
308
  # safely be set per-request on the session.
301
309
  #
@@ -311,6 +319,9 @@ module Aws::GreengrassV2
311
319
  # disables this behaviour. This value can safely be set per
312
320
  # request on the session.
313
321
  #
322
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
323
+ # in seconds.
324
+ #
314
325
  # @option options [Boolean] :http_wire_trace (false) When `true`,
315
326
  # HTTP debug output will be sent to the `:logger`.
316
327
  #
@@ -336,7 +347,49 @@ module Aws::GreengrassV2
336
347
 
337
348
  # @!group API Operations
338
349
 
339
- # Associate a list of client devices with a core device. Use this API
350
+ # Associates a Greengrass service role with IoT Greengrass for your
351
+ # Amazon Web Services account in this Amazon Web Services Region. IoT
352
+ # Greengrass uses this role to verify the identity of client devices and
353
+ # manage core device connectivity information. The role must include the
354
+ # [AWSGreengrassResourceAccessRolePolicy][1] managed policy or a custom
355
+ # policy that defines equivalent permissions for the IoT Greengrass
356
+ # features that you use. For more information, see [Greengrass service
357
+ # role][2] in the *IoT Greengrass Version 2 Developer Guide*.
358
+ #
359
+ #
360
+ #
361
+ # [1]: https://console.aws.amazon.com/iam/home#/policies/arn:awsiam::aws:policy/service-role/AWSGreengrassResourceAccessRolePolicy
362
+ # [2]: https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-service-role.html
363
+ #
364
+ # @option params [required, String] :role_arn
365
+ # The Amazon Resource Name (ARN) of the service role to associate with
366
+ # IoT Greengrass for your Amazon Web Services account in this Amazon Web
367
+ # Services Region.
368
+ #
369
+ # @return [Types::AssociateServiceRoleToAccountResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
370
+ #
371
+ # * {Types::AssociateServiceRoleToAccountResponse#associated_at #associated_at} => String
372
+ #
373
+ # @example Request syntax with placeholder values
374
+ #
375
+ # resp = client.associate_service_role_to_account({
376
+ # role_arn: "String", # required
377
+ # })
378
+ #
379
+ # @example Response structure
380
+ #
381
+ # resp.associated_at #=> String
382
+ #
383
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/AssociateServiceRoleToAccount AWS API Documentation
384
+ #
385
+ # @overload associate_service_role_to_account(params = {})
386
+ # @param [Hash] params ({})
387
+ def associate_service_role_to_account(params = {}, options = {})
388
+ req = build_request(:associate_service_role_to_account, params)
389
+ req.send_request(options)
390
+ end
391
+
392
+ # Associates a list of client devices with a core device. Use this API
340
393
  # operation to specify which client devices can discover a core device
341
394
  # through cloud discovery. With cloud discovery, client devices connect
342
395
  # to IoT Greengrass to retrieve associated core devices' connectivity
@@ -394,7 +447,7 @@ module Aws::GreengrassV2
394
447
  req.send_request(options)
395
448
  end
396
449
 
397
- # Disassociate a list of client devices from a core device. After you
450
+ # Disassociates a list of client devices from a core device. After you
398
451
  # disassociate a client device from a core device, the client device
399
452
  # won't be able to use cloud discovery to retrieve the core device's
400
453
  # connectivity information and certificates.
@@ -511,6 +564,11 @@ module Aws::GreengrassV2
511
564
  # To create a component from a Lambda function, specify
512
565
  # `lambdaFunction` when you call this operation.
513
566
  #
567
+ # <note markdown="1"> IoT Greengrass currently supports Lambda functions on only Linux
568
+ # core devices.
569
+ #
570
+ # </note>
571
+ #
514
572
  #
515
573
  #
516
574
  # [1]: https://docs.aws.amazon.com/greengrass/v2/developerguide/component-recipe-reference.html
@@ -739,6 +797,7 @@ module Aws::GreengrassV2
739
797
  # memory: 1,
740
798
  # cpus: 1.0,
741
799
  # },
800
+ # windows_user: "NonEmptyString",
742
801
  # },
743
802
  # },
744
803
  # },
@@ -918,6 +977,34 @@ module Aws::GreengrassV2
918
977
  req.send_request(options)
919
978
  end
920
979
 
980
+ # Disassociates the Greengrass service role from IoT Greengrass for your
981
+ # Amazon Web Services account in this Amazon Web Services Region.
982
+ # Without a service role, IoT Greengrass can't verify the identity of
983
+ # client devices or manage core device connectivity information. For
984
+ # more information, see [Greengrass service role][1] in the *IoT
985
+ # Greengrass Version 2 Developer Guide*.
986
+ #
987
+ #
988
+ #
989
+ # [1]: https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-service-role.html
990
+ #
991
+ # @return [Types::DisassociateServiceRoleFromAccountResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
992
+ #
993
+ # * {Types::DisassociateServiceRoleFromAccountResponse#disassociated_at #disassociated_at} => String
994
+ #
995
+ # @example Response structure
996
+ #
997
+ # resp.disassociated_at #=> String
998
+ #
999
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/DisassociateServiceRoleFromAccount AWS API Documentation
1000
+ #
1001
+ # @overload disassociate_service_role_from_account(params = {})
1002
+ # @param [Hash] params ({})
1003
+ def disassociate_service_role_from_account(params = {}, options = {})
1004
+ req = build_request(:disassociate_service_role_from_account, params)
1005
+ req.send_request(options)
1006
+ end
1007
+
921
1008
  # Gets the recipe for a version of a component. Core devices can call
922
1009
  # this operation to identify the artifacts and requirements to install a
923
1010
  # component.
@@ -1010,6 +1097,53 @@ module Aws::GreengrassV2
1010
1097
  req.send_request(options)
1011
1098
  end
1012
1099
 
1100
+ # Retrieves connectivity information for a Greengrass core device.
1101
+ #
1102
+ # Connectivity information includes endpoints and ports where client
1103
+ # devices can connect to an MQTT broker on the core device. When a
1104
+ # client device calls the [Greengrass discovery API][1], IoT Greengrass
1105
+ # returns connectivity information for all of the core devices where the
1106
+ # client device can connect. For more information, see [Connect client
1107
+ # devices to core devices][2] in the *IoT Greengrass Version 2 Developer
1108
+ # Guide*.
1109
+ #
1110
+ #
1111
+ #
1112
+ # [1]: https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-discover-api.html
1113
+ # [2]: https://docs.aws.amazon.com/greengrass/v2/developerguide/connect-client-devices.html
1114
+ #
1115
+ # @option params [required, String] :thing_name
1116
+ # The name of the core device. This is also the name of the IoT thing.
1117
+ #
1118
+ # @return [Types::GetConnectivityInfoResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1119
+ #
1120
+ # * {Types::GetConnectivityInfoResponse#connectivity_info #connectivity_info} => Array&lt;Types::ConnectivityInfo&gt;
1121
+ # * {Types::GetConnectivityInfoResponse#message #message} => String
1122
+ #
1123
+ # @example Request syntax with placeholder values
1124
+ #
1125
+ # resp = client.get_connectivity_info({
1126
+ # thing_name: "CoreDeviceThingName", # required
1127
+ # })
1128
+ #
1129
+ # @example Response structure
1130
+ #
1131
+ # resp.connectivity_info #=> Array
1132
+ # resp.connectivity_info[0].id #=> String
1133
+ # resp.connectivity_info[0].host_address #=> String
1134
+ # resp.connectivity_info[0].port_number #=> Integer
1135
+ # resp.connectivity_info[0].metadata #=> String
1136
+ # resp.message #=> String
1137
+ #
1138
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/GetConnectivityInfo AWS API Documentation
1139
+ #
1140
+ # @overload get_connectivity_info(params = {})
1141
+ # @param [Hash] params ({})
1142
+ def get_connectivity_info(params = {}, options = {})
1143
+ req = build_request(:get_connectivity_info, params)
1144
+ req.send_request(options)
1145
+ end
1146
+
1013
1147
  # Retrieves metadata for a Greengrass core device.
1014
1148
  #
1015
1149
  # @option params [required, String] :core_device_thing_name
@@ -1096,6 +1230,7 @@ module Aws::GreengrassV2
1096
1230
  # resp.components["NonEmptyString"].run_with.posix_user #=> String
1097
1231
  # resp.components["NonEmptyString"].run_with.system_resource_limits.memory #=> Integer
1098
1232
  # resp.components["NonEmptyString"].run_with.system_resource_limits.cpus #=> Float
1233
+ # resp.components["NonEmptyString"].run_with.windows_user #=> String
1099
1234
  # resp.deployment_policies.failure_handling_policy #=> String, one of "ROLLBACK", "DO_NOTHING"
1100
1235
  # resp.deployment_policies.component_update_policy.timeout_in_seconds #=> Integer
1101
1236
  # resp.deployment_policies.component_update_policy.action #=> String, one of "NOTIFY_COMPONENTS", "SKIP_NOTIFY_COMPONENTS"
@@ -1125,6 +1260,36 @@ module Aws::GreengrassV2
1125
1260
  req.send_request(options)
1126
1261
  end
1127
1262
 
1263
+ # Gets the service role associated with IoT Greengrass for your Amazon
1264
+ # Web Services account in this Amazon Web Services Region. IoT
1265
+ # Greengrass uses this role to verify the identity of client devices and
1266
+ # manage core device connectivity information. For more information, see
1267
+ # [Greengrass service role][1] in the *IoT Greengrass Version 2
1268
+ # Developer Guide*.
1269
+ #
1270
+ #
1271
+ #
1272
+ # [1]: https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-service-role.html
1273
+ #
1274
+ # @return [Types::GetServiceRoleForAccountResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1275
+ #
1276
+ # * {Types::GetServiceRoleForAccountResponse#associated_at #associated_at} => String
1277
+ # * {Types::GetServiceRoleForAccountResponse#role_arn #role_arn} => String
1278
+ #
1279
+ # @example Response structure
1280
+ #
1281
+ # resp.associated_at #=> String
1282
+ # resp.role_arn #=> String
1283
+ #
1284
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/GetServiceRoleForAccount AWS API Documentation
1285
+ #
1286
+ # @overload get_service_role_for_account(params = {})
1287
+ # @param [Hash] params ({})
1288
+ def get_service_role_for_account(params = {}, options = {})
1289
+ req = build_request(:get_service_role_for_account, params)
1290
+ req.send_request(options)
1291
+ end
1292
+
1128
1293
  # Retrieves a paginated list of client devices that are associated with
1129
1294
  # a core device.
1130
1295
  #
@@ -1665,6 +1830,60 @@ module Aws::GreengrassV2
1665
1830
  req.send_request(options)
1666
1831
  end
1667
1832
 
1833
+ # Updates connectivity information for a Greengrass core device.
1834
+ #
1835
+ # Connectivity information includes endpoints and ports where client
1836
+ # devices can connect to an MQTT broker on the core device. When a
1837
+ # client device calls the [Greengrass discovery API][1], IoT Greengrass
1838
+ # returns connectivity information for all of the core devices where the
1839
+ # client device can connect. For more information, see [Connect client
1840
+ # devices to core devices][2] in the *IoT Greengrass Version 2 Developer
1841
+ # Guide*.
1842
+ #
1843
+ #
1844
+ #
1845
+ # [1]: https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-discover-api.html
1846
+ # [2]: https://docs.aws.amazon.com/greengrass/v2/developerguide/connect-client-devices.html
1847
+ #
1848
+ # @option params [required, String] :thing_name
1849
+ # The name of the core device. This is also the name of the IoT thing.
1850
+ #
1851
+ # @option params [required, Array<Types::ConnectivityInfo>] :connectivity_info
1852
+ # The connectivity information for the core device.
1853
+ #
1854
+ # @return [Types::UpdateConnectivityInfoResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1855
+ #
1856
+ # * {Types::UpdateConnectivityInfoResponse#version #version} => String
1857
+ # * {Types::UpdateConnectivityInfoResponse#message #message} => String
1858
+ #
1859
+ # @example Request syntax with placeholder values
1860
+ #
1861
+ # resp = client.update_connectivity_info({
1862
+ # thing_name: "CoreDeviceThingName", # required
1863
+ # connectivity_info: [ # required
1864
+ # {
1865
+ # id: "String",
1866
+ # host_address: "String",
1867
+ # port_number: 1,
1868
+ # metadata: "String",
1869
+ # },
1870
+ # ],
1871
+ # })
1872
+ #
1873
+ # @example Response structure
1874
+ #
1875
+ # resp.version #=> String
1876
+ # resp.message #=> String
1877
+ #
1878
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/UpdateConnectivityInfo AWS API Documentation
1879
+ #
1880
+ # @overload update_connectivity_info(params = {})
1881
+ # @param [Hash] params ({})
1882
+ def update_connectivity_info(params = {}, options = {})
1883
+ req = build_request(:update_connectivity_info, params)
1884
+ req.send_request(options)
1885
+ end
1886
+
1668
1887
  # @!endgroup
1669
1888
 
1670
1889
  # @param params ({})
@@ -1678,7 +1897,7 @@ module Aws::GreengrassV2
1678
1897
  params: params,
1679
1898
  config: config)
1680
1899
  context[:gem_name] = 'aws-sdk-greengrassv2'
1681
- context[:gem_version] = '1.10.0'
1900
+ context[:gem_version] = '1.14.0'
1682
1901
  Seahorse::Client::Request.new(handlers, context)
1683
1902
  end
1684
1903
 
@@ -18,6 +18,8 @@ module Aws::GreengrassV2
18
18
  AssociateClientDeviceWithCoreDeviceEntryList = Shapes::ListShape.new(name: 'AssociateClientDeviceWithCoreDeviceEntryList')
19
19
  AssociateClientDeviceWithCoreDeviceErrorEntry = Shapes::StructureShape.new(name: 'AssociateClientDeviceWithCoreDeviceErrorEntry')
20
20
  AssociateClientDeviceWithCoreDeviceErrorList = Shapes::ListShape.new(name: 'AssociateClientDeviceWithCoreDeviceErrorList')
21
+ AssociateServiceRoleToAccountRequest = Shapes::StructureShape.new(name: 'AssociateServiceRoleToAccountRequest')
22
+ AssociateServiceRoleToAccountResponse = Shapes::StructureShape.new(name: 'AssociateServiceRoleToAccountResponse')
21
23
  AssociatedClientDevice = Shapes::StructureShape.new(name: 'AssociatedClientDevice')
22
24
  AssociatedClientDeviceList = Shapes::ListShape.new(name: 'AssociatedClientDeviceList')
23
25
  BatchAssociateClientDeviceWithCoreDeviceRequest = Shapes::StructureShape.new(name: 'BatchAssociateClientDeviceWithCoreDeviceRequest')
@@ -56,6 +58,7 @@ module Aws::GreengrassV2
56
58
  ComponentVersionString = Shapes::StringShape.new(name: 'ComponentVersionString')
57
59
  ComponentVisibilityScope = Shapes::StringShape.new(name: 'ComponentVisibilityScope')
58
60
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
61
+ ConnectivityInfo = Shapes::StructureShape.new(name: 'ConnectivityInfo')
59
62
  CoreDevice = Shapes::StructureShape.new(name: 'CoreDevice')
60
63
  CoreDeviceArchitectureString = Shapes::StringShape.new(name: 'CoreDeviceArchitectureString')
61
64
  CoreDevicePlatformString = Shapes::StringShape.new(name: 'CoreDevicePlatformString')
@@ -89,6 +92,8 @@ module Aws::GreengrassV2
89
92
  DisassociateClientDeviceFromCoreDeviceEntryList = Shapes::ListShape.new(name: 'DisassociateClientDeviceFromCoreDeviceEntryList')
90
93
  DisassociateClientDeviceFromCoreDeviceErrorEntry = Shapes::StructureShape.new(name: 'DisassociateClientDeviceFromCoreDeviceErrorEntry')
91
94
  DisassociateClientDeviceFromCoreDeviceErrorList = Shapes::ListShape.new(name: 'DisassociateClientDeviceFromCoreDeviceErrorList')
95
+ DisassociateServiceRoleFromAccountRequest = Shapes::StructureShape.new(name: 'DisassociateServiceRoleFromAccountRequest')
96
+ DisassociateServiceRoleFromAccountResponse = Shapes::StructureShape.new(name: 'DisassociateServiceRoleFromAccountResponse')
92
97
  EffectiveDeployment = Shapes::StructureShape.new(name: 'EffectiveDeployment')
93
98
  EffectiveDeploymentExecutionStatus = Shapes::StringShape.new(name: 'EffectiveDeploymentExecutionStatus')
94
99
  EffectiveDeploymentsList = Shapes::ListShape.new(name: 'EffectiveDeploymentsList')
@@ -99,10 +104,14 @@ module Aws::GreengrassV2
99
104
  GetComponentResponse = Shapes::StructureShape.new(name: 'GetComponentResponse')
100
105
  GetComponentVersionArtifactRequest = Shapes::StructureShape.new(name: 'GetComponentVersionArtifactRequest')
101
106
  GetComponentVersionArtifactResponse = Shapes::StructureShape.new(name: 'GetComponentVersionArtifactResponse')
107
+ GetConnectivityInfoRequest = Shapes::StructureShape.new(name: 'GetConnectivityInfoRequest')
108
+ GetConnectivityInfoResponse = Shapes::StructureShape.new(name: 'GetConnectivityInfoResponse')
102
109
  GetCoreDeviceRequest = Shapes::StructureShape.new(name: 'GetCoreDeviceRequest')
103
110
  GetCoreDeviceResponse = Shapes::StructureShape.new(name: 'GetCoreDeviceResponse')
104
111
  GetDeploymentRequest = Shapes::StructureShape.new(name: 'GetDeploymentRequest')
105
112
  GetDeploymentResponse = Shapes::StructureShape.new(name: 'GetDeploymentResponse')
113
+ GetServiceRoleForAccountRequest = Shapes::StructureShape.new(name: 'GetServiceRoleForAccountRequest')
114
+ GetServiceRoleForAccountResponse = Shapes::StructureShape.new(name: 'GetServiceRoleForAccountResponse')
106
115
  InstalledComponent = Shapes::StructureShape.new(name: 'InstalledComponent')
107
116
  InstalledComponentLifecycleState = Shapes::StringShape.new(name: 'InstalledComponentLifecycleState')
108
117
  InstalledComponentList = Shapes::ListShape.new(name: 'InstalledComponentList')
@@ -170,6 +179,7 @@ module Aws::GreengrassV2
170
179
  OptionalBoolean = Shapes::BooleanShape.new(name: 'OptionalBoolean')
171
180
  OptionalInteger = Shapes::IntegerShape.new(name: 'OptionalInteger')
172
181
  PlatformAttributesMap = Shapes::MapShape.new(name: 'PlatformAttributesMap')
182
+ PortNumberInt = Shapes::IntegerShape.new(name: 'PortNumberInt')
173
183
  PublisherString = Shapes::StringShape.new(name: 'PublisherString')
174
184
  Reason = Shapes::StringShape.new(name: 'Reason')
175
185
  RecipeBlob = Shapes::BlobShape.new(name: 'RecipeBlob')
@@ -198,10 +208,13 @@ module Aws::GreengrassV2
198
208
  TopicString = Shapes::StringShape.new(name: 'TopicString')
199
209
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
200
210
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
211
+ UpdateConnectivityInfoRequest = Shapes::StructureShape.new(name: 'UpdateConnectivityInfoRequest')
212
+ UpdateConnectivityInfoResponse = Shapes::StructureShape.new(name: 'UpdateConnectivityInfoResponse')
201
213
  ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
202
214
  ValidationExceptionField = Shapes::StructureShape.new(name: 'ValidationExceptionField')
203
215
  ValidationExceptionFieldList = Shapes::ListShape.new(name: 'ValidationExceptionFieldList')
204
216
  ValidationExceptionReason = Shapes::StringShape.new(name: 'ValidationExceptionReason')
217
+ connectivityInfoList = Shapes::ListShape.new(name: 'connectivityInfoList')
205
218
 
206
219
  AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
207
220
  AccessDeniedException.struct_class = Types::AccessDeniedException
@@ -218,6 +231,12 @@ module Aws::GreengrassV2
218
231
 
219
232
  AssociateClientDeviceWithCoreDeviceErrorList.member = Shapes::ShapeRef.new(shape: AssociateClientDeviceWithCoreDeviceErrorEntry)
220
233
 
234
+ AssociateServiceRoleToAccountRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: String, required: true, location_name: "RoleArn"))
235
+ AssociateServiceRoleToAccountRequest.struct_class = Types::AssociateServiceRoleToAccountRequest
236
+
237
+ AssociateServiceRoleToAccountResponse.add_member(:associated_at, Shapes::ShapeRef.new(shape: String, location_name: "AssociatedAt"))
238
+ AssociateServiceRoleToAccountResponse.struct_class = Types::AssociateServiceRoleToAccountResponse
239
+
221
240
  AssociatedClientDevice.add_member(:thing_name, Shapes::ShapeRef.new(shape: IoTThingName, location_name: "thingName"))
222
241
  AssociatedClientDevice.add_member(:association_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "associationTimestamp"))
223
242
  AssociatedClientDevice.struct_class = Types::AssociatedClientDevice
@@ -300,6 +319,7 @@ module Aws::GreengrassV2
300
319
 
301
320
  ComponentRunWith.add_member(:posix_user, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "posixUser"))
302
321
  ComponentRunWith.add_member(:system_resource_limits, Shapes::ShapeRef.new(shape: SystemResourceLimits, location_name: "systemResourceLimits"))
322
+ ComponentRunWith.add_member(:windows_user, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "windowsUser"))
303
323
  ComponentRunWith.struct_class = Types::ComponentRunWith
304
324
 
305
325
  ComponentVersionList.member = Shapes::ShapeRef.new(shape: ComponentVersionListItem)
@@ -317,6 +337,12 @@ module Aws::GreengrassV2
317
337
  ConflictException.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, required: true, location_name: "resourceType"))
318
338
  ConflictException.struct_class = Types::ConflictException
319
339
 
340
+ ConnectivityInfo.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "Id"))
341
+ ConnectivityInfo.add_member(:host_address, Shapes::ShapeRef.new(shape: String, location_name: "HostAddress"))
342
+ ConnectivityInfo.add_member(:port_number, Shapes::ShapeRef.new(shape: PortNumberInt, location_name: "PortNumber"))
343
+ ConnectivityInfo.add_member(:metadata, Shapes::ShapeRef.new(shape: String, location_name: "Metadata"))
344
+ ConnectivityInfo.struct_class = Types::ConnectivityInfo
345
+
320
346
  CoreDevice.add_member(:core_device_thing_name, Shapes::ShapeRef.new(shape: CoreDeviceThingName, location_name: "coreDeviceThingName"))
321
347
  CoreDevice.add_member(:status, Shapes::ShapeRef.new(shape: CoreDeviceStatus, location_name: "status"))
322
348
  CoreDevice.add_member(:last_status_update_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastStatusUpdateTimestamp"))
@@ -411,6 +437,11 @@ module Aws::GreengrassV2
411
437
 
412
438
  DisassociateClientDeviceFromCoreDeviceErrorList.member = Shapes::ShapeRef.new(shape: DisassociateClientDeviceFromCoreDeviceErrorEntry)
413
439
 
440
+ DisassociateServiceRoleFromAccountRequest.struct_class = Types::DisassociateServiceRoleFromAccountRequest
441
+
442
+ DisassociateServiceRoleFromAccountResponse.add_member(:disassociated_at, Shapes::ShapeRef.new(shape: String, location_name: "DisassociatedAt"))
443
+ DisassociateServiceRoleFromAccountResponse.struct_class = Types::DisassociateServiceRoleFromAccountResponse
444
+
414
445
  EffectiveDeployment.add_member(:deployment_id, Shapes::ShapeRef.new(shape: DeploymentID, required: true, location_name: "deploymentId"))
415
446
  EffectiveDeployment.add_member(:deployment_name, Shapes::ShapeRef.new(shape: DeploymentName, required: true, location_name: "deploymentName"))
416
447
  EffectiveDeployment.add_member(:iot_job_id, Shapes::ShapeRef.new(shape: IoTJobId, location_name: "iotJobId"))
@@ -441,6 +472,13 @@ module Aws::GreengrassV2
441
472
  GetComponentVersionArtifactResponse.add_member(:pre_signed_url, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "preSignedUrl"))
442
473
  GetComponentVersionArtifactResponse.struct_class = Types::GetComponentVersionArtifactResponse
443
474
 
475
+ GetConnectivityInfoRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: CoreDeviceThingName, required: true, location: "uri", location_name: "thingName"))
476
+ GetConnectivityInfoRequest.struct_class = Types::GetConnectivityInfoRequest
477
+
478
+ GetConnectivityInfoResponse.add_member(:connectivity_info, Shapes::ShapeRef.new(shape: connectivityInfoList, location_name: "ConnectivityInfo"))
479
+ GetConnectivityInfoResponse.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
480
+ GetConnectivityInfoResponse.struct_class = Types::GetConnectivityInfoResponse
481
+
444
482
  GetCoreDeviceRequest.add_member(:core_device_thing_name, Shapes::ShapeRef.new(shape: CoreDeviceThingName, required: true, location: "uri", location_name: "coreDeviceThingName"))
445
483
  GetCoreDeviceRequest.struct_class = Types::GetCoreDeviceRequest
446
484
 
@@ -471,6 +509,12 @@ module Aws::GreengrassV2
471
509
  GetDeploymentResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
472
510
  GetDeploymentResponse.struct_class = Types::GetDeploymentResponse
473
511
 
512
+ GetServiceRoleForAccountRequest.struct_class = Types::GetServiceRoleForAccountRequest
513
+
514
+ GetServiceRoleForAccountResponse.add_member(:associated_at, Shapes::ShapeRef.new(shape: String, location_name: "AssociatedAt"))
515
+ GetServiceRoleForAccountResponse.add_member(:role_arn, Shapes::ShapeRef.new(shape: String, location_name: "RoleArn"))
516
+ GetServiceRoleForAccountResponse.struct_class = Types::GetServiceRoleForAccountResponse
517
+
474
518
  InstalledComponent.add_member(:component_name, Shapes::ShapeRef.new(shape: ComponentNameString, location_name: "componentName"))
475
519
  InstalledComponent.add_member(:component_version, Shapes::ShapeRef.new(shape: ComponentVersionString, location_name: "componentVersion"))
476
520
  InstalledComponent.add_member(:lifecycle_state, Shapes::ShapeRef.new(shape: InstalledComponentLifecycleState, location_name: "lifecycleState"))
@@ -702,6 +746,14 @@ module Aws::GreengrassV2
702
746
 
703
747
  UntagResourceResponse.struct_class = Types::UntagResourceResponse
704
748
 
749
+ UpdateConnectivityInfoRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: CoreDeviceThingName, required: true, location: "uri", location_name: "thingName"))
750
+ UpdateConnectivityInfoRequest.add_member(:connectivity_info, Shapes::ShapeRef.new(shape: connectivityInfoList, required: true, location_name: "ConnectivityInfo"))
751
+ UpdateConnectivityInfoRequest.struct_class = Types::UpdateConnectivityInfoRequest
752
+
753
+ UpdateConnectivityInfoResponse.add_member(:version, Shapes::ShapeRef.new(shape: String, location_name: "Version"))
754
+ UpdateConnectivityInfoResponse.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
755
+ UpdateConnectivityInfoResponse.struct_class = Types::UpdateConnectivityInfoResponse
756
+
705
757
  ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
706
758
  ValidationException.add_member(:reason, Shapes::ShapeRef.new(shape: ValidationExceptionReason, location_name: "reason"))
707
759
  ValidationException.add_member(:fields, Shapes::ShapeRef.new(shape: ValidationExceptionFieldList, location_name: "fields"))
@@ -713,6 +765,8 @@ module Aws::GreengrassV2
713
765
 
714
766
  ValidationExceptionFieldList.member = Shapes::ShapeRef.new(shape: ValidationExceptionField)
715
767
 
768
+ connectivityInfoList.member = Shapes::ShapeRef.new(shape: ConnectivityInfo)
769
+
716
770
 
717
771
  # @api private
718
772
  API = Seahorse::Model::Api.new.tap do |api|
@@ -722,7 +776,6 @@ module Aws::GreengrassV2
722
776
  api.metadata = {
723
777
  "apiVersion" => "2020-11-30",
724
778
  "endpointPrefix" => "greengrass",
725
- "jsonVersion" => "1.1",
726
779
  "protocol" => "rest-json",
727
780
  "serviceAbbreviation" => "AWS GreengrassV2",
728
781
  "serviceFullName" => "AWS IoT Greengrass V2",
@@ -731,6 +784,16 @@ module Aws::GreengrassV2
731
784
  "uid" => "greengrassv2-2020-11-30",
732
785
  }
733
786
 
787
+ api.add_operation(:associate_service_role_to_account, Seahorse::Model::Operation.new.tap do |o|
788
+ o.name = "AssociateServiceRoleToAccount"
789
+ o.http_method = "PUT"
790
+ o.http_request_uri = "/greengrass/servicerole"
791
+ o.input = Shapes::ShapeRef.new(shape: AssociateServiceRoleToAccountRequest)
792
+ o.output = Shapes::ShapeRef.new(shape: AssociateServiceRoleToAccountResponse)
793
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
794
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
795
+ end)
796
+
734
797
  api.add_operation(:batch_associate_client_device_with_core_device, Seahorse::Model::Operation.new.tap do |o|
735
798
  o.name = "BatchAssociateClientDeviceWithCoreDevice"
736
799
  o.http_method = "POST"
@@ -841,6 +904,15 @@ module Aws::GreengrassV2
841
904
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
842
905
  end)
843
906
 
907
+ api.add_operation(:disassociate_service_role_from_account, Seahorse::Model::Operation.new.tap do |o|
908
+ o.name = "DisassociateServiceRoleFromAccount"
909
+ o.http_method = "DELETE"
910
+ o.http_request_uri = "/greengrass/servicerole"
911
+ o.input = Shapes::ShapeRef.new(shape: DisassociateServiceRoleFromAccountRequest)
912
+ o.output = Shapes::ShapeRef.new(shape: DisassociateServiceRoleFromAccountResponse)
913
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
914
+ end)
915
+
844
916
  api.add_operation(:get_component, Seahorse::Model::Operation.new.tap do |o|
845
917
  o.name = "GetComponent"
846
918
  o.http_method = "GET"
@@ -867,6 +939,16 @@ module Aws::GreengrassV2
867
939
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
868
940
  end)
869
941
 
942
+ api.add_operation(:get_connectivity_info, Seahorse::Model::Operation.new.tap do |o|
943
+ o.name = "GetConnectivityInfo"
944
+ o.http_method = "GET"
945
+ o.http_request_uri = "/greengrass/things/{thingName}/connectivityInfo"
946
+ o.input = Shapes::ShapeRef.new(shape: GetConnectivityInfoRequest)
947
+ o.output = Shapes::ShapeRef.new(shape: GetConnectivityInfoResponse)
948
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
949
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
950
+ end)
951
+
870
952
  api.add_operation(:get_core_device, Seahorse::Model::Operation.new.tap do |o|
871
953
  o.name = "GetCoreDevice"
872
954
  o.http_method = "GET"
@@ -893,6 +975,15 @@ module Aws::GreengrassV2
893
975
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
894
976
  end)
895
977
 
978
+ api.add_operation(:get_service_role_for_account, Seahorse::Model::Operation.new.tap do |o|
979
+ o.name = "GetServiceRoleForAccount"
980
+ o.http_method = "GET"
981
+ o.http_request_uri = "/greengrass/servicerole"
982
+ o.input = Shapes::ShapeRef.new(shape: GetServiceRoleForAccountRequest)
983
+ o.output = Shapes::ShapeRef.new(shape: GetServiceRoleForAccountResponse)
984
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
985
+ end)
986
+
896
987
  api.add_operation(:list_client_devices_associated_with_core_device, Seahorse::Model::Operation.new.tap do |o|
897
988
  o.name = "ListClientDevicesAssociatedWithCoreDevice"
898
989
  o.http_method = "GET"
@@ -1069,6 +1160,16 @@ module Aws::GreengrassV2
1069
1160
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1070
1161
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1071
1162
  end)
1163
+
1164
+ api.add_operation(:update_connectivity_info, Seahorse::Model::Operation.new.tap do |o|
1165
+ o.name = "UpdateConnectivityInfo"
1166
+ o.http_method = "PUT"
1167
+ o.http_request_uri = "/greengrass/things/{thingName}/connectivityInfo"
1168
+ o.input = Shapes::ShapeRef.new(shape: UpdateConnectivityInfoRequest)
1169
+ o.output = Shapes::ShapeRef.new(shape: UpdateConnectivityInfoResponse)
1170
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1171
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1172
+ end)
1072
1173
  end
1073
1174
 
1074
1175
  end
@@ -82,6 +82,41 @@ module Aws::GreengrassV2
82
82
  include Aws::Structure
83
83
  end
84
84
 
85
+ # @note When making an API call, you may pass AssociateServiceRoleToAccountRequest
86
+ # data as a hash:
87
+ #
88
+ # {
89
+ # role_arn: "String", # required
90
+ # }
91
+ #
92
+ # @!attribute [rw] role_arn
93
+ # The Amazon Resource Name (ARN) of the service role to associate with
94
+ # IoT Greengrass for your Amazon Web Services account in this Amazon
95
+ # Web Services Region.
96
+ # @return [String]
97
+ #
98
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/AssociateServiceRoleToAccountRequest AWS API Documentation
99
+ #
100
+ class AssociateServiceRoleToAccountRequest < Struct.new(
101
+ :role_arn)
102
+ SENSITIVE = []
103
+ include Aws::Structure
104
+ end
105
+
106
+ # @!attribute [rw] associated_at
107
+ # The time when the service role was associated with IoT Greengrass
108
+ # for your Amazon Web Services account in this Amazon Web Services
109
+ # Region.
110
+ # @return [String]
111
+ #
112
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/AssociateServiceRoleToAccountResponse AWS API Documentation
113
+ #
114
+ class AssociateServiceRoleToAccountResponse < Struct.new(
115
+ :associated_at)
116
+ SENSITIVE = []
117
+ include Aws::Structure
118
+ end
119
+
85
120
  # Contains information about a client device that is associated to a
86
121
  # core device for cloud discovery.
87
122
  #
@@ -176,8 +211,8 @@ module Aws::GreengrassV2
176
211
  end
177
212
 
178
213
  # @!attribute [rw] error_entries
179
- # The list of errors (if any) for the entries in the request. Each
180
- # error entry contains the name of the IoT thing that failed to
214
+ # The list of any errors for the entries in the request. Each error
215
+ # entry contains the name of the IoT thing that failed to
181
216
  # disassociate.
182
217
  # @return [Array<Types::DisassociateClientDeviceFromCoreDeviceErrorEntry>]
183
218
  #
@@ -436,6 +471,7 @@ module Aws::GreengrassV2
436
471
  # memory: 1,
437
472
  # cpus: 1.0,
438
473
  # },
474
+ # windows_user: "NonEmptyString",
439
475
  # },
440
476
  # }
441
477
  #
@@ -585,14 +621,16 @@ module Aws::GreengrassV2
585
621
  # memory: 1,
586
622
  # cpus: 1.0,
587
623
  # },
624
+ # windows_user: "NonEmptyString",
588
625
  # }
589
626
  #
590
627
  # @!attribute [rw] posix_user
591
- # The POSIX system user and (optional) group to use to run this
592
- # component. Specify the user and group separated by a colon (`:`) in
593
- # the following format: `user:group`. The group is optional. If you
594
- # don't specify a group, the IoT Greengrass Core software uses the
595
- # primary user for the group.
628
+ # The POSIX system user and, optionally, group to use to run this
629
+ # component on Linux core devices. The user, and group if specified,
630
+ # must exist on each Linux core device. Specify the user and group
631
+ # separated by a colon (`:`) in the following format: `user:group`.
632
+ # The group is optional. If you don't specify a group, the IoT
633
+ # Greengrass Core software uses the primary user for the group.
596
634
  #
597
635
  # If you omit this parameter, the IoT Greengrass Core software uses
598
636
  # the default system user and group that you configure on the
@@ -606,7 +644,8 @@ module Aws::GreengrassV2
606
644
  #
607
645
  # @!attribute [rw] system_resource_limits
608
646
  # The system resource limits to apply to this component's process on
609
- # the core device.
647
+ # the core device. IoT Greengrass currently supports this feature on
648
+ # only Linux core devices.
610
649
  #
611
650
  # If you omit this parameter, the IoT Greengrass Core software uses
612
651
  # the default system resource limits that you configure on the
@@ -618,11 +657,28 @@ module Aws::GreengrassV2
618
657
  # [1]: https://docs.aws.amazon.com/greengrass/v2/developerguide/configure-greengrass-core-v2.html#configure-component-system-resource-limits
619
658
  # @return [Types::SystemResourceLimits]
620
659
  #
660
+ # @!attribute [rw] windows_user
661
+ # The Windows user to use to run this component on Windows core
662
+ # devices. The user must exist on each Windows core device, and its
663
+ # name and password must be in the LocalSystem account's Credentials
664
+ # Manager instance.
665
+ #
666
+ # If you omit this parameter, the IoT Greengrass Core software uses
667
+ # the default Windows user that you configure on the Greengrass
668
+ # nucleus component. For more information, see [Configure the user and
669
+ # group that run components][1].
670
+ #
671
+ #
672
+ #
673
+ # [1]: https://docs.aws.amazon.com/greengrass/v2/developerguide/configure-greengrass-core-v2.html#configure-component-user
674
+ # @return [String]
675
+ #
621
676
  # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/ComponentRunWith AWS API Documentation
622
677
  #
623
678
  class ComponentRunWith < Struct.new(
624
679
  :posix_user,
625
- :system_resource_limits)
680
+ :system_resource_limits,
681
+ :windows_user)
626
682
  SENSITIVE = []
627
683
  include Aws::Structure
628
684
  end
@@ -680,6 +736,50 @@ module Aws::GreengrassV2
680
736
  include Aws::Structure
681
737
  end
682
738
 
739
+ # Contains information about an endpoint and port where client devices
740
+ # can connect to an MQTT broker on a Greengrass core device.
741
+ #
742
+ # @note When making an API call, you may pass ConnectivityInfo
743
+ # data as a hash:
744
+ #
745
+ # {
746
+ # id: "String",
747
+ # host_address: "String",
748
+ # port_number: 1,
749
+ # metadata: "String",
750
+ # }
751
+ #
752
+ # @!attribute [rw] id
753
+ # An ID for the connectivity information.
754
+ # @return [String]
755
+ #
756
+ # @!attribute [rw] host_address
757
+ # The IP address or DNS address where client devices can connect to an
758
+ # MQTT broker on the Greengrass core device.
759
+ # @return [String]
760
+ #
761
+ # @!attribute [rw] port_number
762
+ # The port where the MQTT broker operates on the core device. This
763
+ # port is typically 8883, which is the default port for the MQTT
764
+ # broker component that runs on core devices.
765
+ # @return [Integer]
766
+ #
767
+ # @!attribute [rw] metadata
768
+ # Additional metadata to provide to client devices that connect to
769
+ # this core device.
770
+ # @return [String]
771
+ #
772
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/ConnectivityInfo AWS API Documentation
773
+ #
774
+ class ConnectivityInfo < Struct.new(
775
+ :id,
776
+ :host_address,
777
+ :port_number,
778
+ :metadata)
779
+ SENSITIVE = []
780
+ include Aws::Structure
781
+ end
782
+
683
783
  # Contains information about a Greengrass core device, which is an IoT
684
784
  # thing that runs the IoT Greengrass Core software.
685
785
  #
@@ -891,6 +991,7 @@ module Aws::GreengrassV2
891
991
  # memory: 1,
892
992
  # cpus: 1.0,
893
993
  # },
994
+ # windows_user: "NonEmptyString",
894
995
  # },
895
996
  # },
896
997
  # },
@@ -1468,6 +1569,26 @@ module Aws::GreengrassV2
1468
1569
  include Aws::Structure
1469
1570
  end
1470
1571
 
1572
+ # @api private
1573
+ #
1574
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/DisassociateServiceRoleFromAccountRequest AWS API Documentation
1575
+ #
1576
+ class DisassociateServiceRoleFromAccountRequest < Aws::EmptyStructure; end
1577
+
1578
+ # @!attribute [rw] disassociated_at
1579
+ # The time when the service role was disassociated from IoT Greengrass
1580
+ # for your Amazon Web Services account in this Amazon Web Services
1581
+ # Region.
1582
+ # @return [String]
1583
+ #
1584
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/DisassociateServiceRoleFromAccountResponse AWS API Documentation
1585
+ #
1586
+ class DisassociateServiceRoleFromAccountResponse < Struct.new(
1587
+ :disassociated_at)
1588
+ SENSITIVE = []
1589
+ include Aws::Structure
1590
+ end
1591
+
1471
1592
  # Contains information about a deployment job that IoT Greengrass sends
1472
1593
  # to a Greengrass core device.
1473
1594
  #
@@ -1648,6 +1769,42 @@ module Aws::GreengrassV2
1648
1769
  include Aws::Structure
1649
1770
  end
1650
1771
 
1772
+ # @note When making an API call, you may pass GetConnectivityInfoRequest
1773
+ # data as a hash:
1774
+ #
1775
+ # {
1776
+ # thing_name: "CoreDeviceThingName", # required
1777
+ # }
1778
+ #
1779
+ # @!attribute [rw] thing_name
1780
+ # The name of the core device. This is also the name of the IoT thing.
1781
+ # @return [String]
1782
+ #
1783
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/GetConnectivityInfoRequest AWS API Documentation
1784
+ #
1785
+ class GetConnectivityInfoRequest < Struct.new(
1786
+ :thing_name)
1787
+ SENSITIVE = []
1788
+ include Aws::Structure
1789
+ end
1790
+
1791
+ # @!attribute [rw] connectivity_info
1792
+ # The connectivity information for the core device.
1793
+ # @return [Array<Types::ConnectivityInfo>]
1794
+ #
1795
+ # @!attribute [rw] message
1796
+ # A message about the connectivity information request.
1797
+ # @return [String]
1798
+ #
1799
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/GetConnectivityInfoResponse AWS API Documentation
1800
+ #
1801
+ class GetConnectivityInfoResponse < Struct.new(
1802
+ :connectivity_info,
1803
+ :message)
1804
+ SENSITIVE = []
1805
+ include Aws::Structure
1806
+ end
1807
+
1651
1808
  # @note When making an API call, you may pass GetCoreDeviceRequest
1652
1809
  # data as a hash:
1653
1810
  #
@@ -1842,6 +1999,33 @@ module Aws::GreengrassV2
1842
1999
  include Aws::Structure
1843
2000
  end
1844
2001
 
2002
+ # @api private
2003
+ #
2004
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/GetServiceRoleForAccountRequest AWS API Documentation
2005
+ #
2006
+ class GetServiceRoleForAccountRequest < Aws::EmptyStructure; end
2007
+
2008
+ # @!attribute [rw] associated_at
2009
+ # The time when the service role was associated with IoT Greengrass
2010
+ # for your Amazon Web Services account in this Amazon Web Services
2011
+ # Region.
2012
+ # @return [String]
2013
+ #
2014
+ # @!attribute [rw] role_arn
2015
+ # The ARN of the service role that is associated with IoT Greengrass
2016
+ # for your Amazon Web Services account in this Amazon Web Services
2017
+ # Region.
2018
+ # @return [String]
2019
+ #
2020
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/GetServiceRoleForAccountResponse AWS API Documentation
2021
+ #
2022
+ class GetServiceRoleForAccountResponse < Struct.new(
2023
+ :associated_at,
2024
+ :role_arn)
2025
+ SENSITIVE = []
2026
+ include Aws::Structure
2027
+ end
2028
+
1845
2029
  # Contains information about a component on a Greengrass core device.
1846
2030
  #
1847
2031
  # @!attribute [rw] component_name
@@ -3351,6 +3535,55 @@ module Aws::GreengrassV2
3351
3535
  #
3352
3536
  class UntagResourceResponse < Aws::EmptyStructure; end
3353
3537
 
3538
+ # @note When making an API call, you may pass UpdateConnectivityInfoRequest
3539
+ # data as a hash:
3540
+ #
3541
+ # {
3542
+ # thing_name: "CoreDeviceThingName", # required
3543
+ # connectivity_info: [ # required
3544
+ # {
3545
+ # id: "String",
3546
+ # host_address: "String",
3547
+ # port_number: 1,
3548
+ # metadata: "String",
3549
+ # },
3550
+ # ],
3551
+ # }
3552
+ #
3553
+ # @!attribute [rw] thing_name
3554
+ # The name of the core device. This is also the name of the IoT thing.
3555
+ # @return [String]
3556
+ #
3557
+ # @!attribute [rw] connectivity_info
3558
+ # The connectivity information for the core device.
3559
+ # @return [Array<Types::ConnectivityInfo>]
3560
+ #
3561
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/UpdateConnectivityInfoRequest AWS API Documentation
3562
+ #
3563
+ class UpdateConnectivityInfoRequest < Struct.new(
3564
+ :thing_name,
3565
+ :connectivity_info)
3566
+ SENSITIVE = []
3567
+ include Aws::Structure
3568
+ end
3569
+
3570
+ # @!attribute [rw] version
3571
+ # The new version of the connectivity information for the core device.
3572
+ # @return [String]
3573
+ #
3574
+ # @!attribute [rw] message
3575
+ # A message about the connectivity information update request.
3576
+ # @return [String]
3577
+ #
3578
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/UpdateConnectivityInfoResponse AWS API Documentation
3579
+ #
3580
+ class UpdateConnectivityInfoResponse < Struct.new(
3581
+ :version,
3582
+ :message)
3583
+ SENSITIVE = []
3584
+ include Aws::Structure
3585
+ end
3586
+
3354
3587
  # The request isn't valid. This can occur if your request contains
3355
3588
  # malformed JSON or unsupported characters.
3356
3589
  #
@@ -28,7 +28,7 @@ require_relative 'aws-sdk-greengrassv2/customizations'
28
28
  # structure.
29
29
  #
30
30
  # greengrass_v2 = Aws::GreengrassV2::Client.new
31
- # resp = greengrass_v2.batch_associate_client_device_with_core_device(params)
31
+ # resp = greengrass_v2.associate_service_role_to_account(params)
32
32
  #
33
33
  # See {Client} for more information.
34
34
  #
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-greengrassv2/customizations'
48
48
  # @!group service
49
49
  module Aws::GreengrassV2
50
50
 
51
- GEM_VERSION = '1.10.0'
51
+ GEM_VERSION = '1.14.0'
52
52
 
53
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-greengrassv2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.10.0
4
+ version: 1.14.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-11-04 00:00:00.000000000 Z
11
+ date: 2022-01-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.122.0
22
+ version: 3.125.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.122.0
32
+ version: 3.125.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement