aws-sdk-ssm 1.166.0 → 1.167.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3198fb88def7d777bd506c12c862399e88d33fefce1feba7af94235f8ddb2595
4
- data.tar.gz: aa2fd260f8b3888c2e375143418b7726590e5d6ee9037ee26d698c2a43b9377e
3
+ metadata.gz: 8591c1fd66cbb4f99c5842c5de472f42dca18d962c1159683ae8ced61ed04aa0
4
+ data.tar.gz: 404cfa75c2fa9451c1536dbc026445d13e91f023622d3742ee89c049059c44d8
5
5
  SHA512:
6
- metadata.gz: c3bf1a80b504cedc349858d212fc3bc1806a36d297345015878df04c215a12395afcba55ce9c3fb917e561b49bbb8e7708ad41f00ae9d6fa24ec67a447ace7cf
7
- data.tar.gz: e9bf9d6233110708ed865d8cb7114a66c956e495944364386436f625375fe861e04ac0a7398ea3af43af5f3877a522f9c5c75c9506c027ae39f989401d74de8b
6
+ metadata.gz: 5f4a565d4c57a5dfdb1c3ca999756b8ce7c3437f1a007fa5ed455acfa9385de813cad42131be7abb096d7b1efbfdf0220a08db7fb10daeff4b8ddc973692ec20
7
+ data.tar.gz: 8497d017148afd4a800ba181988b0ea4d20e663c4fc2a9718b228f5a373f9b8cb015ed6b1031ba8bce26a8941810e682c7a795d3dd24597e9a91733fd7c7fb4b
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.167.0 (2024-04-24)
5
+ ------------------
6
+
7
+ * Feature - Add SSM DescribeInstanceProperties API to public AWS SDK.
8
+
4
9
  1.166.0 (2024-03-12)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.166.0
1
+ 1.167.0
@@ -1388,6 +1388,12 @@ module Aws::SSM
1388
1388
  #
1389
1389
  # * `amzn`
1390
1390
  #
1391
+ # * `AWSEC2`
1392
+ #
1393
+ # * `AWSConfigRemediation`
1394
+ #
1395
+ # * `AWSSupport`
1396
+ #
1391
1397
  # @option params [String] :display_name
1392
1398
  # An optional field where you can specify a friendly name for the SSM
1393
1399
  # document. This value can differ for each version of the document. You
@@ -1561,6 +1567,11 @@ module Aws::SSM
1561
1567
  # maintenance window to become active. `StartDate` allows you to delay
1562
1568
  # activation of the maintenance window until the specified future date.
1563
1569
  #
1570
+ # <note markdown="1"> When using a rate schedule, if you provide a start date that occurs in
1571
+ # the past, the current date and time are used as the start date.
1572
+ #
1573
+ # </note>
1574
+ #
1564
1575
  # @option params [String] :end_date
1565
1576
  # The date and time, in ISO-8601 Extended format, for when you want the
1566
1577
  # maintenance window to become inactive. `EndDate` allows you to set a
@@ -4175,6 +4186,93 @@ module Aws::SSM
4175
4186
  req.send_request(options)
4176
4187
  end
4177
4188
 
4189
+ # An API operation used by the Systems Manager console to display
4190
+ # information about Systems Manager managed nodes.
4191
+ #
4192
+ # @option params [Array<Types::InstancePropertyFilter>] :instance_property_filter_list
4193
+ # An array of instance property filters.
4194
+ #
4195
+ # @option params [Array<Types::InstancePropertyStringFilter>] :filters_with_operator
4196
+ # The request filters to use with the operator.
4197
+ #
4198
+ # @option params [Integer] :max_results
4199
+ # The maximum number of items to return for the call. The call also
4200
+ # returns a token that you can specify in a subsequent call to get the
4201
+ # next set of results.
4202
+ #
4203
+ # @option params [String] :next_token
4204
+ # The token provided by a previous request to use to return the next set
4205
+ # of properties.
4206
+ #
4207
+ # @return [Types::DescribeInstancePropertiesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4208
+ #
4209
+ # * {Types::DescribeInstancePropertiesResult#instance_properties #instance_properties} => Array&lt;Types::InstanceProperty&gt;
4210
+ # * {Types::DescribeInstancePropertiesResult#next_token #next_token} => String
4211
+ #
4212
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4213
+ #
4214
+ # @example Request syntax with placeholder values
4215
+ #
4216
+ # resp = client.describe_instance_properties({
4217
+ # instance_property_filter_list: [
4218
+ # {
4219
+ # key: "InstanceIds", # required, accepts InstanceIds, AgentVersion, PingStatus, PlatformTypes, DocumentName, ActivationIds, IamRole, ResourceType, AssociationStatus
4220
+ # value_set: ["InstancePropertyFilterValue"], # required
4221
+ # },
4222
+ # ],
4223
+ # filters_with_operator: [
4224
+ # {
4225
+ # key: "InstancePropertyStringFilterKey", # required
4226
+ # values: ["InstancePropertyFilterValue"], # required
4227
+ # operator: "Equal", # accepts Equal, NotEqual, BeginWith, LessThan, GreaterThan
4228
+ # },
4229
+ # ],
4230
+ # max_results: 1,
4231
+ # next_token: "NextToken",
4232
+ # })
4233
+ #
4234
+ # @example Response structure
4235
+ #
4236
+ # resp.instance_properties #=> Array
4237
+ # resp.instance_properties[0].name #=> String
4238
+ # resp.instance_properties[0].instance_id #=> String
4239
+ # resp.instance_properties[0].instance_type #=> String
4240
+ # resp.instance_properties[0].instance_role #=> String
4241
+ # resp.instance_properties[0].key_name #=> String
4242
+ # resp.instance_properties[0].instance_state #=> String
4243
+ # resp.instance_properties[0].architecture #=> String
4244
+ # resp.instance_properties[0].ip_address #=> String
4245
+ # resp.instance_properties[0].launch_time #=> Time
4246
+ # resp.instance_properties[0].ping_status #=> String, one of "Online", "ConnectionLost", "Inactive"
4247
+ # resp.instance_properties[0].last_ping_date_time #=> Time
4248
+ # resp.instance_properties[0].agent_version #=> String
4249
+ # resp.instance_properties[0].platform_type #=> String, one of "Windows", "Linux", "MacOS"
4250
+ # resp.instance_properties[0].platform_name #=> String
4251
+ # resp.instance_properties[0].platform_version #=> String
4252
+ # resp.instance_properties[0].activation_id #=> String
4253
+ # resp.instance_properties[0].iam_role #=> String
4254
+ # resp.instance_properties[0].registration_date #=> Time
4255
+ # resp.instance_properties[0].resource_type #=> String
4256
+ # resp.instance_properties[0].computer_name #=> String
4257
+ # resp.instance_properties[0].association_status #=> String
4258
+ # resp.instance_properties[0].last_association_execution_date #=> Time
4259
+ # resp.instance_properties[0].last_successful_association_execution_date #=> Time
4260
+ # resp.instance_properties[0].association_overview.detailed_status #=> String
4261
+ # resp.instance_properties[0].association_overview.instance_association_status_aggregated_count #=> Hash
4262
+ # resp.instance_properties[0].association_overview.instance_association_status_aggregated_count["StatusName"] #=> Integer
4263
+ # resp.instance_properties[0].source_id #=> String
4264
+ # resp.instance_properties[0].source_type #=> String, one of "AWS::EC2::Instance", "AWS::IoT::Thing", "AWS::SSM::ManagedInstance"
4265
+ # resp.next_token #=> String
4266
+ #
4267
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstanceProperties AWS API Documentation
4268
+ #
4269
+ # @overload describe_instance_properties(params = {})
4270
+ # @param [Hash] params ({})
4271
+ def describe_instance_properties(params = {}, options = {})
4272
+ req = build_request(:describe_instance_properties, params)
4273
+ req.send_request(options)
4274
+ end
4275
+
4178
4276
  # Describes a specific delete inventory operation.
4179
4277
  #
4180
4278
  # @option params [String] :deletion_id
@@ -6851,7 +6949,12 @@ module Aws::SSM
6851
6949
  # To query by parameter label, use `"Name": "name:label"`. To query by
6852
6950
  # parameter version, use `"Name": "name:version"`.
6853
6951
  #
6854
- # For more information about shared parameters, see [Working with shared
6952
+ # <note markdown="1"> The results for `GetParameters` requests are listed in alphabetical
6953
+ # order in query responses.
6954
+ #
6955
+ # </note>
6956
+ #
6957
+ # For information about shared parameters, see [Working with shared
6855
6958
  # parameters][1] in the *Amazon Web Services Systems Manager User
6856
6959
  # Guide*.
6857
6960
  #
@@ -9317,18 +9420,21 @@ module Aws::SSM
9317
9420
  # @option params [String] :service_role_arn
9318
9421
  # The Amazon Resource Name (ARN) of the IAM service role for Amazon Web
9319
9422
  # Services Systems Manager to assume when running a maintenance window
9320
- # task. If you do not specify a service role ARN, Systems Manager uses
9321
- # your account's service-linked role. If no service-linked role for
9322
- # Systems Manager exists in your account, it is created when you run
9323
- # `RegisterTaskWithMaintenanceWindow`.
9324
- #
9325
- # For more information, see [Using service-linked roles for Systems
9326
- # Manager][1] in the in the *Amazon Web Services Systems Manager User
9327
- # Guide*:
9423
+ # task. If you do not specify a service role ARN, Systems Manager uses a
9424
+ # service-linked role in your account. If no appropriate service-linked
9425
+ # role for Systems Manager exists in your account, it is created when
9426
+ # you run `RegisterTaskWithMaintenanceWindow`.
9427
+ #
9428
+ # However, for an improved security posture, we strongly recommend
9429
+ # creating a custom policy and custom service role for running your
9430
+ # maintenance window tasks. The policy can be crafted to provide only
9431
+ # the permissions needed for your particular maintenance window tasks.
9432
+ # For more information, see [Setting up maintenance windows][1] in the
9433
+ # in the *Amazon Web Services Systems Manager User Guide*.
9328
9434
  #
9329
9435
  #
9330
9436
  #
9331
- # [1]: https://docs.aws.amazon.com/systems-manager/latest/userguide/using-service-linked-roles.html#slr-permissions
9437
+ # [1]: https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-permissions.html
9332
9438
  #
9333
9439
  # @option params [required, String] :task_type
9334
9440
  # The type of task being registered.
@@ -11258,6 +11364,11 @@ module Aws::SSM
11258
11364
  # maintenance window to become active. `StartDate` allows you to delay
11259
11365
  # activation of the maintenance window until the specified future date.
11260
11366
  #
11367
+ # <note markdown="1"> When using a rate schedule, if you provide a start date that occurs in
11368
+ # the past, the current date and time are used as the start date.
11369
+ #
11370
+ # </note>
11371
+ #
11261
11372
  # @option params [String] :end_date
11262
11373
  # The date and time, in ISO-8601 Extended format, for when you want the
11263
11374
  # maintenance window to become inactive. `EndDate` allows you to set a
@@ -11537,18 +11648,21 @@ module Aws::SSM
11537
11648
  # @option params [String] :service_role_arn
11538
11649
  # The Amazon Resource Name (ARN) of the IAM service role for Amazon Web
11539
11650
  # Services Systems Manager to assume when running a maintenance window
11540
- # task. If you do not specify a service role ARN, Systems Manager uses
11541
- # your account's service-linked role. If no service-linked role for
11542
- # Systems Manager exists in your account, it is created when you run
11543
- # `RegisterTaskWithMaintenanceWindow`.
11544
- #
11545
- # For more information, see [Using service-linked roles for Systems
11546
- # Manager][1] in the in the *Amazon Web Services Systems Manager User
11547
- # Guide*:
11651
+ # task. If you do not specify a service role ARN, Systems Manager uses a
11652
+ # service-linked role in your account. If no appropriate service-linked
11653
+ # role for Systems Manager exists in your account, it is created when
11654
+ # you run `RegisterTaskWithMaintenanceWindow`.
11655
+ #
11656
+ # However, for an improved security posture, we strongly recommend
11657
+ # creating a custom policy and custom service role for running your
11658
+ # maintenance window tasks. The policy can be crafted to provide only
11659
+ # the permissions needed for your particular maintenance window tasks.
11660
+ # For more information, see [Setting up maintenance windows][1] in the
11661
+ # in the *Amazon Web Services Systems Manager User Guide*.
11548
11662
  #
11549
11663
  #
11550
11664
  #
11551
- # [1]: https://docs.aws.amazon.com/systems-manager/latest/userguide/using-service-linked-roles.html#slr-permissions
11665
+ # [1]: https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-permissions.html
11552
11666
  #
11553
11667
  # @option params [Hash<String,Types::MaintenanceWindowTaskParameterValueExpression>] :task_parameters
11554
11668
  # The parameters to modify.
@@ -12428,7 +12542,7 @@ module Aws::SSM
12428
12542
  params: params,
12429
12543
  config: config)
12430
12544
  context[:gem_name] = 'aws-sdk-ssm'
12431
- context[:gem_version] = '1.166.0'
12545
+ context[:gem_version] = '1.167.0'
12432
12546
  Seahorse::Client::Request.new(handlers, context)
12433
12547
  end
12434
12548
 
@@ -38,6 +38,7 @@ module Aws::SSM
38
38
  AlreadyExistsException = Shapes::StructureShape.new(name: 'AlreadyExistsException')
39
39
  ApplyOnlyAtCronInterval = Shapes::BooleanShape.new(name: 'ApplyOnlyAtCronInterval')
40
40
  ApproveAfterDays = Shapes::IntegerShape.new(name: 'ApproveAfterDays')
41
+ Architecture = Shapes::StringShape.new(name: 'Architecture')
41
42
  AssociateOpsItemRelatedItemRequest = Shapes::StructureShape.new(name: 'AssociateOpsItemRelatedItemRequest')
42
43
  AssociateOpsItemRelatedItemResponse = Shapes::StructureShape.new(name: 'AssociateOpsItemRelatedItemResponse')
43
44
  AssociatedInstances = Shapes::StructureShape.new(name: 'AssociatedInstances')
@@ -289,6 +290,9 @@ module Aws::SSM
289
290
  DescribeInstancePatchStatesResult = Shapes::StructureShape.new(name: 'DescribeInstancePatchStatesResult')
290
291
  DescribeInstancePatchesRequest = Shapes::StructureShape.new(name: 'DescribeInstancePatchesRequest')
291
292
  DescribeInstancePatchesResult = Shapes::StructureShape.new(name: 'DescribeInstancePatchesResult')
293
+ DescribeInstancePropertiesMaxResults = Shapes::IntegerShape.new(name: 'DescribeInstancePropertiesMaxResults')
294
+ DescribeInstancePropertiesRequest = Shapes::StructureShape.new(name: 'DescribeInstancePropertiesRequest')
295
+ DescribeInstancePropertiesResult = Shapes::StructureShape.new(name: 'DescribeInstancePropertiesResult')
292
296
  DescribeInventoryDeletionsRequest = Shapes::StructureShape.new(name: 'DescribeInventoryDeletionsRequest')
293
297
  DescribeInventoryDeletionsResult = Shapes::StructureShape.new(name: 'DescribeInventoryDeletionsResult')
294
298
  DescribeMaintenanceWindowExecutionTaskInvocationsRequest = Shapes::StructureShape.new(name: 'DescribeMaintenanceWindowExecutionTaskInvocationsRequest')
@@ -485,6 +489,7 @@ module Aws::SSM
485
489
  InstanceInformationStringFilter = Shapes::StructureShape.new(name: 'InstanceInformationStringFilter')
486
490
  InstanceInformationStringFilterKey = Shapes::StringShape.new(name: 'InstanceInformationStringFilterKey')
487
491
  InstanceInformationStringFilterList = Shapes::ListShape.new(name: 'InstanceInformationStringFilterList')
492
+ InstanceName = Shapes::StringShape.new(name: 'InstanceName')
488
493
  InstancePatchState = Shapes::StructureShape.new(name: 'InstancePatchState')
489
494
  InstancePatchStateFilter = Shapes::StructureShape.new(name: 'InstancePatchStateFilter')
490
495
  InstancePatchStateFilterKey = Shapes::StringShape.new(name: 'InstancePatchStateFilterKey')
@@ -494,7 +499,21 @@ module Aws::SSM
494
499
  InstancePatchStateList = Shapes::ListShape.new(name: 'InstancePatchStateList')
495
500
  InstancePatchStateOperatorType = Shapes::StringShape.new(name: 'InstancePatchStateOperatorType')
496
501
  InstancePatchStatesList = Shapes::ListShape.new(name: 'InstancePatchStatesList')
502
+ InstanceProperties = Shapes::ListShape.new(name: 'InstanceProperties')
503
+ InstanceProperty = Shapes::StructureShape.new(name: 'InstanceProperty')
504
+ InstancePropertyFilter = Shapes::StructureShape.new(name: 'InstancePropertyFilter')
505
+ InstancePropertyFilterKey = Shapes::StringShape.new(name: 'InstancePropertyFilterKey')
506
+ InstancePropertyFilterList = Shapes::ListShape.new(name: 'InstancePropertyFilterList')
507
+ InstancePropertyFilterOperator = Shapes::StringShape.new(name: 'InstancePropertyFilterOperator')
508
+ InstancePropertyFilterValue = Shapes::StringShape.new(name: 'InstancePropertyFilterValue')
509
+ InstancePropertyFilterValueSet = Shapes::ListShape.new(name: 'InstancePropertyFilterValueSet')
510
+ InstancePropertyStringFilter = Shapes::StructureShape.new(name: 'InstancePropertyStringFilter')
511
+ InstancePropertyStringFilterKey = Shapes::StringShape.new(name: 'InstancePropertyStringFilterKey')
512
+ InstancePropertyStringFilterList = Shapes::ListShape.new(name: 'InstancePropertyStringFilterList')
513
+ InstanceRole = Shapes::StringShape.new(name: 'InstanceRole')
514
+ InstanceState = Shapes::StringShape.new(name: 'InstanceState')
497
515
  InstanceTagName = Shapes::StringShape.new(name: 'InstanceTagName')
516
+ InstanceType = Shapes::StringShape.new(name: 'InstanceType')
498
517
  InstancesCount = Shapes::IntegerShape.new(name: 'InstancesCount')
499
518
  Integer = Shapes::IntegerShape.new(name: 'Integer')
500
519
  InternalServerError = Shapes::StructureShape.new(name: 'InternalServerError')
@@ -522,6 +541,7 @@ module Aws::SSM
522
541
  InvalidFilterValue = Shapes::StructureShape.new(name: 'InvalidFilterValue')
523
542
  InvalidInstanceId = Shapes::StructureShape.new(name: 'InvalidInstanceId')
524
543
  InvalidInstanceInformationFilterValue = Shapes::StructureShape.new(name: 'InvalidInstanceInformationFilterValue')
544
+ InvalidInstancePropertyFilterValue = Shapes::StructureShape.new(name: 'InvalidInstancePropertyFilterValue')
525
545
  InvalidInventoryGroupException = Shapes::StructureShape.new(name: 'InvalidInventoryGroupException')
526
546
  InvalidInventoryItemContextException = Shapes::StructureShape.new(name: 'InvalidInventoryItemContextException')
527
547
  InvalidInventoryRequestException = Shapes::StructureShape.new(name: 'InvalidInventoryRequestException')
@@ -598,6 +618,7 @@ module Aws::SSM
598
618
  ItemContentMismatchException = Shapes::StructureShape.new(name: 'ItemContentMismatchException')
599
619
  ItemSizeLimitExceededException = Shapes::StructureShape.new(name: 'ItemSizeLimitExceededException')
600
620
  KeyList = Shapes::ListShape.new(name: 'KeyList')
621
+ KeyName = Shapes::StringShape.new(name: 'KeyName')
601
622
  LabelParameterVersionRequest = Shapes::StructureShape.new(name: 'LabelParameterVersionRequest')
602
623
  LabelParameterVersionResult = Shapes::StructureShape.new(name: 'LabelParameterVersionResult')
603
624
  LastResourceDataSyncMessage = Shapes::StringShape.new(name: 'LastResourceDataSyncMessage')
@@ -958,8 +979,10 @@ module Aws::SSM
958
979
  PatchVendor = Shapes::StringShape.new(name: 'PatchVendor')
959
980
  PatchVersion = Shapes::StringShape.new(name: 'PatchVersion')
960
981
  PingStatus = Shapes::StringShape.new(name: 'PingStatus')
982
+ PlatformName = Shapes::StringShape.new(name: 'PlatformName')
961
983
  PlatformType = Shapes::StringShape.new(name: 'PlatformType')
962
984
  PlatformTypeList = Shapes::ListShape.new(name: 'PlatformTypeList')
985
+ PlatformVersion = Shapes::StringShape.new(name: 'PlatformVersion')
963
986
  PoliciesLimitExceededException = Shapes::StructureShape.new(name: 'PoliciesLimitExceededException')
964
987
  Policy = Shapes::StringShape.new(name: 'Policy')
965
988
  PolicyHash = Shapes::StringShape.new(name: 'PolicyHash')
@@ -2132,6 +2155,16 @@ module Aws::SSM
2132
2155
  DescribeInstancePatchesResult.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
2133
2156
  DescribeInstancePatchesResult.struct_class = Types::DescribeInstancePatchesResult
2134
2157
 
2158
+ DescribeInstancePropertiesRequest.add_member(:instance_property_filter_list, Shapes::ShapeRef.new(shape: InstancePropertyFilterList, location_name: "InstancePropertyFilterList"))
2159
+ DescribeInstancePropertiesRequest.add_member(:filters_with_operator, Shapes::ShapeRef.new(shape: InstancePropertyStringFilterList, location_name: "FiltersWithOperator"))
2160
+ DescribeInstancePropertiesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: DescribeInstancePropertiesMaxResults, location_name: "MaxResults", metadata: {"box"=>true}))
2161
+ DescribeInstancePropertiesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
2162
+ DescribeInstancePropertiesRequest.struct_class = Types::DescribeInstancePropertiesRequest
2163
+
2164
+ DescribeInstancePropertiesResult.add_member(:instance_properties, Shapes::ShapeRef.new(shape: InstanceProperties, location_name: "InstanceProperties"))
2165
+ DescribeInstancePropertiesResult.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
2166
+ DescribeInstancePropertiesResult.struct_class = Types::DescribeInstancePropertiesResult
2167
+
2135
2168
  DescribeInventoryDeletionsRequest.add_member(:deletion_id, Shapes::ShapeRef.new(shape: UUID, location_name: "DeletionId"))
2136
2169
  DescribeInventoryDeletionsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
2137
2170
  DescribeInventoryDeletionsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults", metadata: {"box"=>true}))
@@ -2915,6 +2948,51 @@ module Aws::SSM
2915
2948
 
2916
2949
  InstancePatchStatesList.member = Shapes::ShapeRef.new(shape: InstancePatchState)
2917
2950
 
2951
+ InstanceProperties.member = Shapes::ShapeRef.new(shape: InstanceProperty)
2952
+
2953
+ InstanceProperty.add_member(:name, Shapes::ShapeRef.new(shape: InstanceName, location_name: "Name"))
2954
+ InstanceProperty.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, location_name: "InstanceId"))
2955
+ InstanceProperty.add_member(:instance_type, Shapes::ShapeRef.new(shape: InstanceType, location_name: "InstanceType"))
2956
+ InstanceProperty.add_member(:instance_role, Shapes::ShapeRef.new(shape: InstanceRole, location_name: "InstanceRole"))
2957
+ InstanceProperty.add_member(:key_name, Shapes::ShapeRef.new(shape: KeyName, location_name: "KeyName"))
2958
+ InstanceProperty.add_member(:instance_state, Shapes::ShapeRef.new(shape: InstanceState, location_name: "InstanceState"))
2959
+ InstanceProperty.add_member(:architecture, Shapes::ShapeRef.new(shape: Architecture, location_name: "Architecture"))
2960
+ InstanceProperty.add_member(:ip_address, Shapes::ShapeRef.new(shape: IPAddress, location_name: "IPAddress"))
2961
+ InstanceProperty.add_member(:launch_time, Shapes::ShapeRef.new(shape: DateTime, location_name: "LaunchTime"))
2962
+ InstanceProperty.add_member(:ping_status, Shapes::ShapeRef.new(shape: PingStatus, location_name: "PingStatus"))
2963
+ InstanceProperty.add_member(:last_ping_date_time, Shapes::ShapeRef.new(shape: DateTime, location_name: "LastPingDateTime"))
2964
+ InstanceProperty.add_member(:agent_version, Shapes::ShapeRef.new(shape: Version, location_name: "AgentVersion"))
2965
+ InstanceProperty.add_member(:platform_type, Shapes::ShapeRef.new(shape: PlatformType, location_name: "PlatformType"))
2966
+ InstanceProperty.add_member(:platform_name, Shapes::ShapeRef.new(shape: PlatformName, location_name: "PlatformName"))
2967
+ InstanceProperty.add_member(:platform_version, Shapes::ShapeRef.new(shape: PlatformVersion, location_name: "PlatformVersion"))
2968
+ InstanceProperty.add_member(:activation_id, Shapes::ShapeRef.new(shape: ActivationId, location_name: "ActivationId"))
2969
+ InstanceProperty.add_member(:iam_role, Shapes::ShapeRef.new(shape: IamRole, location_name: "IamRole"))
2970
+ InstanceProperty.add_member(:registration_date, Shapes::ShapeRef.new(shape: DateTime, location_name: "RegistrationDate"))
2971
+ InstanceProperty.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, location_name: "ResourceType"))
2972
+ InstanceProperty.add_member(:computer_name, Shapes::ShapeRef.new(shape: ComputerName, location_name: "ComputerName"))
2973
+ InstanceProperty.add_member(:association_status, Shapes::ShapeRef.new(shape: StatusName, location_name: "AssociationStatus"))
2974
+ InstanceProperty.add_member(:last_association_execution_date, Shapes::ShapeRef.new(shape: DateTime, location_name: "LastAssociationExecutionDate"))
2975
+ InstanceProperty.add_member(:last_successful_association_execution_date, Shapes::ShapeRef.new(shape: DateTime, location_name: "LastSuccessfulAssociationExecutionDate"))
2976
+ InstanceProperty.add_member(:association_overview, Shapes::ShapeRef.new(shape: InstanceAggregatedAssociationOverview, location_name: "AssociationOverview"))
2977
+ InstanceProperty.add_member(:source_id, Shapes::ShapeRef.new(shape: SourceId, location_name: "SourceId"))
2978
+ InstanceProperty.add_member(:source_type, Shapes::ShapeRef.new(shape: SourceType, location_name: "SourceType"))
2979
+ InstanceProperty.struct_class = Types::InstanceProperty
2980
+
2981
+ InstancePropertyFilter.add_member(:key, Shapes::ShapeRef.new(shape: InstancePropertyFilterKey, required: true, location_name: "key"))
2982
+ InstancePropertyFilter.add_member(:value_set, Shapes::ShapeRef.new(shape: InstancePropertyFilterValueSet, required: true, location_name: "valueSet"))
2983
+ InstancePropertyFilter.struct_class = Types::InstancePropertyFilter
2984
+
2985
+ InstancePropertyFilterList.member = Shapes::ShapeRef.new(shape: InstancePropertyFilter)
2986
+
2987
+ InstancePropertyFilterValueSet.member = Shapes::ShapeRef.new(shape: InstancePropertyFilterValue)
2988
+
2989
+ InstancePropertyStringFilter.add_member(:key, Shapes::ShapeRef.new(shape: InstancePropertyStringFilterKey, required: true, location_name: "Key"))
2990
+ InstancePropertyStringFilter.add_member(:values, Shapes::ShapeRef.new(shape: InstancePropertyFilterValueSet, required: true, location_name: "Values"))
2991
+ InstancePropertyStringFilter.add_member(:operator, Shapes::ShapeRef.new(shape: InstancePropertyFilterOperator, location_name: "Operator"))
2992
+ InstancePropertyStringFilter.struct_class = Types::InstancePropertyStringFilter
2993
+
2994
+ InstancePropertyStringFilterList.member = Shapes::ShapeRef.new(shape: InstancePropertyStringFilter)
2995
+
2918
2996
  InternalServerError.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
2919
2997
  InternalServerError.struct_class = Types::InternalServerError
2920
2998
 
@@ -2988,6 +3066,9 @@ module Aws::SSM
2988
3066
  InvalidInstanceInformationFilterValue.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
2989
3067
  InvalidInstanceInformationFilterValue.struct_class = Types::InvalidInstanceInformationFilterValue
2990
3068
 
3069
+ InvalidInstancePropertyFilterValue.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
3070
+ InvalidInstancePropertyFilterValue.struct_class = Types::InvalidInstancePropertyFilterValue
3071
+
2991
3072
  InvalidInventoryGroupException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
2992
3073
  InvalidInventoryGroupException.struct_class = Types::InvalidInventoryGroupException
2993
3074
 
@@ -4753,6 +4834,7 @@ module Aws::SSM
4753
4834
  "endpointPrefix" => "ssm",
4754
4835
  "jsonVersion" => "1.1",
4755
4836
  "protocol" => "json",
4837
+ "protocols" => ["json"],
4756
4838
  "serviceAbbreviation" => "Amazon SSM",
4757
4839
  "serviceFullName" => "Amazon Simple Systems Manager (SSM)",
4758
4840
  "serviceId" => "SSM",
@@ -5373,6 +5455,27 @@ module Aws::SSM
5373
5455
  )
5374
5456
  end)
5375
5457
 
5458
+ api.add_operation(:describe_instance_properties, Seahorse::Model::Operation.new.tap do |o|
5459
+ o.name = "DescribeInstanceProperties"
5460
+ o.http_method = "POST"
5461
+ o.http_request_uri = "/"
5462
+ o.input = Shapes::ShapeRef.new(shape: DescribeInstancePropertiesRequest)
5463
+ o.output = Shapes::ShapeRef.new(shape: DescribeInstancePropertiesResult)
5464
+ o.errors << Shapes::ShapeRef.new(shape: InvalidNextToken)
5465
+ o.errors << Shapes::ShapeRef.new(shape: InvalidFilterKey)
5466
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInstanceId)
5467
+ o.errors << Shapes::ShapeRef.new(shape: InvalidActivationId)
5468
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInstancePropertyFilterValue)
5469
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
5470
+ o.errors << Shapes::ShapeRef.new(shape: InvalidDocument)
5471
+ o[:pager] = Aws::Pager.new(
5472
+ limit_key: "max_results",
5473
+ tokens: {
5474
+ "next_token" => "next_token"
5475
+ }
5476
+ )
5477
+ end)
5478
+
5376
5479
  api.add_operation(:describe_inventory_deletions, Seahorse::Model::Operation.new.tap do |o|
5377
5480
  o.name = "DescribeInventoryDeletions"
5378
5481
  o.http_method = "POST"
@@ -642,6 +642,20 @@ module Aws::SSM
642
642
  end
643
643
  end
644
644
 
645
+ class DescribeInstanceProperties
646
+ def self.build(context)
647
+ unless context.config.regional_endpoint
648
+ endpoint = context.config.endpoint.to_s
649
+ end
650
+ Aws::SSM::EndpointParameters.new(
651
+ region: context.config.region,
652
+ use_dual_stack: context.config.use_dualstack_endpoint,
653
+ use_fips: context.config.use_fips_endpoint,
654
+ endpoint: endpoint,
655
+ )
656
+ end
657
+ end
658
+
645
659
  class DescribeInventoryDeletions
646
660
  def self.build(context)
647
661
  unless context.config.regional_endpoint
@@ -80,6 +80,7 @@ module Aws::SSM
80
80
  # * {InvalidFilterValue}
81
81
  # * {InvalidInstanceId}
82
82
  # * {InvalidInstanceInformationFilterValue}
83
+ # * {InvalidInstancePropertyFilterValue}
83
84
  # * {InvalidInventoryGroupException}
84
85
  # * {InvalidInventoryItemContextException}
85
86
  # * {InvalidInventoryRequestException}
@@ -931,6 +932,21 @@ module Aws::SSM
931
932
  end
932
933
  end
933
934
 
935
+ class InvalidInstancePropertyFilterValue < ServiceError
936
+
937
+ # @param [Seahorse::Client::RequestContext] context
938
+ # @param [String] message
939
+ # @param [Aws::SSM::Types::InvalidInstancePropertyFilterValue] data
940
+ def initialize(context, message, data = Aws::EmptyStructure.new)
941
+ super(context, message, data)
942
+ end
943
+
944
+ # @return [String]
945
+ def message
946
+ @message || @data[:message]
947
+ end
948
+ end
949
+
934
950
  class InvalidInventoryGroupException < ServiceError
935
951
 
936
952
  # @param [Seahorse::Client::RequestContext] context
@@ -148,6 +148,8 @@ module Aws::SSM
148
148
  Aws::SSM::Endpoints::DescribeInstancePatchStatesForPatchGroup.build(context)
149
149
  when :describe_instance_patches
150
150
  Aws::SSM::Endpoints::DescribeInstancePatches.build(context)
151
+ when :describe_instance_properties
152
+ Aws::SSM::Endpoints::DescribeInstanceProperties.build(context)
151
153
  when :describe_inventory_deletions
152
154
  Aws::SSM::Endpoints::DescribeInventoryDeletions.build(context)
153
155
  when :describe_maintenance_window_execution_task_invocations
@@ -3359,6 +3359,12 @@ module Aws::SSM
3359
3359
  # * `amazon`
3360
3360
  #
3361
3361
  # * `amzn`
3362
+ #
3363
+ # * `AWSEC2`
3364
+ #
3365
+ # * `AWSConfigRemediation`
3366
+ #
3367
+ # * `AWSSupport`
3362
3368
  # @return [String]
3363
3369
  #
3364
3370
  # @!attribute [rw] display_name
@@ -3464,6 +3470,11 @@ module Aws::SSM
3464
3470
  # the maintenance window to become active. `StartDate` allows you to
3465
3471
  # delay activation of the maintenance window until the specified
3466
3472
  # future date.
3473
+ #
3474
+ # <note markdown="1"> When using a rate schedule, if you provide a start date that occurs
3475
+ # in the past, the current date and time are used as the start date.
3476
+ #
3477
+ # </note>
3467
3478
  # @return [String]
3468
3479
  #
3469
3480
  # @!attribute [rw] end_date
@@ -5413,6 +5424,54 @@ module Aws::SSM
5413
5424
  include Aws::Structure
5414
5425
  end
5415
5426
 
5427
+ # @!attribute [rw] instance_property_filter_list
5428
+ # An array of instance property filters.
5429
+ # @return [Array<Types::InstancePropertyFilter>]
5430
+ #
5431
+ # @!attribute [rw] filters_with_operator
5432
+ # The request filters to use with the operator.
5433
+ # @return [Array<Types::InstancePropertyStringFilter>]
5434
+ #
5435
+ # @!attribute [rw] max_results
5436
+ # The maximum number of items to return for the call. The call also
5437
+ # returns a token that you can specify in a subsequent call to get the
5438
+ # next set of results.
5439
+ # @return [Integer]
5440
+ #
5441
+ # @!attribute [rw] next_token
5442
+ # The token provided by a previous request to use to return the next
5443
+ # set of properties.
5444
+ # @return [String]
5445
+ #
5446
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstancePropertiesRequest AWS API Documentation
5447
+ #
5448
+ class DescribeInstancePropertiesRequest < Struct.new(
5449
+ :instance_property_filter_list,
5450
+ :filters_with_operator,
5451
+ :max_results,
5452
+ :next_token)
5453
+ SENSITIVE = []
5454
+ include Aws::Structure
5455
+ end
5456
+
5457
+ # @!attribute [rw] instance_properties
5458
+ # Properties for the managed instances.
5459
+ # @return [Array<Types::InstanceProperty>]
5460
+ #
5461
+ # @!attribute [rw] next_token
5462
+ # The token for the next set of properties to return. Use this token
5463
+ # to get the next set of results.
5464
+ # @return [String]
5465
+ #
5466
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstancePropertiesResult AWS API Documentation
5467
+ #
5468
+ class DescribeInstancePropertiesResult < Struct.new(
5469
+ :instance_properties,
5470
+ :next_token)
5471
+ SENSITIVE = []
5472
+ include Aws::Structure
5473
+ end
5474
+
5416
5475
  # @!attribute [rw] deletion_id
5417
5476
  # Specify the delete inventory ID for which you want information. This
5418
5477
  # ID was returned by the `DeleteInventory` operation.
@@ -8783,9 +8842,14 @@ module Aws::SSM
8783
8842
  # To query by parameter label, use `"Name": "name:label"`. To query by
8784
8843
  # parameter version, use `"Name": "name:version"`.
8785
8844
  #
8786
- # For more information about shared parameters, see [Working with
8787
- # shared parameters][1] in the *Amazon Web Services Systems Manager
8788
- # User Guide*.
8845
+ # <note markdown="1"> The results for `GetParameters` requests are listed in alphabetical
8846
+ # order in query responses.
8847
+ #
8848
+ # </note>
8849
+ #
8850
+ # For information about shared parameters, see [Working with shared
8851
+ # parameters][1] in the *Amazon Web Services Systems Manager User
8852
+ # Guide*.
8789
8853
  #
8790
8854
  #
8791
8855
  #
@@ -9805,6 +9869,200 @@ module Aws::SSM
9805
9869
  include Aws::Structure
9806
9870
  end
9807
9871
 
9872
+ # An object containing various properties of a managed node.
9873
+ #
9874
+ # @!attribute [rw] name
9875
+ # The value of the EC2 `Name` tag associated with the node. If a
9876
+ # `Name` tag hasn't been applied to the node, this value is blank.
9877
+ # @return [String]
9878
+ #
9879
+ # @!attribute [rw] instance_id
9880
+ # The ID of the managed node.
9881
+ # @return [String]
9882
+ #
9883
+ # @!attribute [rw] instance_type
9884
+ # The instance type of the managed node. For example, t3.large.
9885
+ # @return [String]
9886
+ #
9887
+ # @!attribute [rw] instance_role
9888
+ # The instance profile attached to the node. If an instance profile
9889
+ # isn't attached to the node, this value is blank.
9890
+ # @return [String]
9891
+ #
9892
+ # @!attribute [rw] key_name
9893
+ # The name of the key pair associated with the node. If a key pair
9894
+ # isnt't associated with the node, this value is blank.
9895
+ # @return [String]
9896
+ #
9897
+ # @!attribute [rw] instance_state
9898
+ # The current state of the node.
9899
+ # @return [String]
9900
+ #
9901
+ # @!attribute [rw] architecture
9902
+ # The CPU architecture of the node. For example, x86\_64.
9903
+ # @return [String]
9904
+ #
9905
+ # @!attribute [rw] ip_address
9906
+ # The public IPv4 address assigned to the node. If a public IPv4
9907
+ # address isn't assigned to the node, this value is blank.
9908
+ # @return [String]
9909
+ #
9910
+ # @!attribute [rw] launch_time
9911
+ # The timestamp for when the node was launched.
9912
+ # @return [Time]
9913
+ #
9914
+ # @!attribute [rw] ping_status
9915
+ # Connection status of the SSM Agent on the managed node.
9916
+ # @return [String]
9917
+ #
9918
+ # @!attribute [rw] last_ping_date_time
9919
+ # The date and time when the SSM Agent last pinged the Systems Manager
9920
+ # service.
9921
+ # @return [Time]
9922
+ #
9923
+ # @!attribute [rw] agent_version
9924
+ # The version of SSM Agent running on your managed node.
9925
+ # @return [String]
9926
+ #
9927
+ # @!attribute [rw] platform_type
9928
+ # The operating system platform type of the managed node. For example,
9929
+ # Windows.
9930
+ # @return [String]
9931
+ #
9932
+ # @!attribute [rw] platform_name
9933
+ # The name of the operating system platform running on your managed
9934
+ # node.
9935
+ # @return [String]
9936
+ #
9937
+ # @!attribute [rw] platform_version
9938
+ # The version of the OS platform running on your managed node.
9939
+ # @return [String]
9940
+ #
9941
+ # @!attribute [rw] activation_id
9942
+ # The activation ID created by Systems Manager when the server or
9943
+ # virtual machine (VM) was registered
9944
+ # @return [String]
9945
+ #
9946
+ # @!attribute [rw] iam_role
9947
+ # The IAM role used in the hybrid activation to register the node with
9948
+ # Systems Manager.
9949
+ # @return [String]
9950
+ #
9951
+ # @!attribute [rw] registration_date
9952
+ # The date the node was registered with Systems Manager.
9953
+ # @return [Time]
9954
+ #
9955
+ # @!attribute [rw] resource_type
9956
+ # The type of managed node.
9957
+ # @return [String]
9958
+ #
9959
+ # @!attribute [rw] computer_name
9960
+ # The fully qualified host name of the managed node.
9961
+ # @return [String]
9962
+ #
9963
+ # @!attribute [rw] association_status
9964
+ # The status of the State Manager association applied to the managed
9965
+ # node.
9966
+ # @return [String]
9967
+ #
9968
+ # @!attribute [rw] last_association_execution_date
9969
+ # The date the association was last run.
9970
+ # @return [Time]
9971
+ #
9972
+ # @!attribute [rw] last_successful_association_execution_date
9973
+ # The last date the association was successfully run.
9974
+ # @return [Time]
9975
+ #
9976
+ # @!attribute [rw] association_overview
9977
+ # Status information about the aggregated associations.
9978
+ # @return [Types::InstanceAggregatedAssociationOverview]
9979
+ #
9980
+ # @!attribute [rw] source_id
9981
+ # The ID of the source resource.
9982
+ # @return [String]
9983
+ #
9984
+ # @!attribute [rw] source_type
9985
+ # The type of the source resource.
9986
+ # @return [String]
9987
+ #
9988
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/InstanceProperty AWS API Documentation
9989
+ #
9990
+ class InstanceProperty < Struct.new(
9991
+ :name,
9992
+ :instance_id,
9993
+ :instance_type,
9994
+ :instance_role,
9995
+ :key_name,
9996
+ :instance_state,
9997
+ :architecture,
9998
+ :ip_address,
9999
+ :launch_time,
10000
+ :ping_status,
10001
+ :last_ping_date_time,
10002
+ :agent_version,
10003
+ :platform_type,
10004
+ :platform_name,
10005
+ :platform_version,
10006
+ :activation_id,
10007
+ :iam_role,
10008
+ :registration_date,
10009
+ :resource_type,
10010
+ :computer_name,
10011
+ :association_status,
10012
+ :last_association_execution_date,
10013
+ :last_successful_association_execution_date,
10014
+ :association_overview,
10015
+ :source_id,
10016
+ :source_type)
10017
+ SENSITIVE = []
10018
+ include Aws::Structure
10019
+ end
10020
+
10021
+ # Describes a filter for a specific list of managed nodes. You can
10022
+ # filter node information by using tags. You specify tags by using a
10023
+ # key-value mapping.
10024
+ #
10025
+ # @!attribute [rw] key
10026
+ # The name of the filter.
10027
+ # @return [String]
10028
+ #
10029
+ # @!attribute [rw] value_set
10030
+ # The filter values.
10031
+ # @return [Array<String>]
10032
+ #
10033
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/InstancePropertyFilter AWS API Documentation
10034
+ #
10035
+ class InstancePropertyFilter < Struct.new(
10036
+ :key,
10037
+ :value_set)
10038
+ SENSITIVE = []
10039
+ include Aws::Structure
10040
+ end
10041
+
10042
+ # The filters to describe or get information about your managed nodes.
10043
+ #
10044
+ # @!attribute [rw] key
10045
+ # The filter key name to describe your managed nodes.
10046
+ # @return [String]
10047
+ #
10048
+ # @!attribute [rw] values
10049
+ # The filter key name to describe your managed nodes.
10050
+ # @return [Array<String>]
10051
+ #
10052
+ # @!attribute [rw] operator
10053
+ # The operator used by the filter call.
10054
+ # @return [String]
10055
+ #
10056
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/InstancePropertyStringFilter AWS API Documentation
10057
+ #
10058
+ class InstancePropertyStringFilter < Struct.new(
10059
+ :key,
10060
+ :values,
10061
+ :operator)
10062
+ SENSITIVE = []
10063
+ include Aws::Structure
10064
+ end
10065
+
9808
10066
  # An error occurred on the server side.
9809
10067
  #
9810
10068
  # @!attribute [rw] message
@@ -10150,6 +10408,19 @@ module Aws::SSM
10150
10408
  include Aws::Structure
10151
10409
  end
10152
10410
 
10411
+ # The specified filter value isn't valid.
10412
+ #
10413
+ # @!attribute [rw] message
10414
+ # @return [String]
10415
+ #
10416
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/InvalidInstancePropertyFilterValue AWS API Documentation
10417
+ #
10418
+ class InvalidInstancePropertyFilterValue < Struct.new(
10419
+ :message)
10420
+ SENSITIVE = []
10421
+ include Aws::Structure
10422
+ end
10423
+
10153
10424
  # The specified inventory group isn't valid.
10154
10425
  #
10155
10426
  # @!attribute [rw] message
@@ -15426,17 +15697,21 @@ module Aws::SSM
15426
15697
  # The Amazon Resource Name (ARN) of the IAM service role for Amazon
15427
15698
  # Web Services Systems Manager to assume when running a maintenance
15428
15699
  # window task. If you do not specify a service role ARN, Systems
15429
- # Manager uses your account's service-linked role. If no
15430
- # service-linked role for Systems Manager exists in your account, it
15431
- # is created when you run `RegisterTaskWithMaintenanceWindow`.
15432
- #
15433
- # For more information, see [Using service-linked roles for Systems
15434
- # Manager][1] in the in the *Amazon Web Services Systems Manager User
15435
- # Guide*:
15700
+ # Manager uses a service-linked role in your account. If no
15701
+ # appropriate service-linked role for Systems Manager exists in your
15702
+ # account, it is created when you run
15703
+ # `RegisterTaskWithMaintenanceWindow`.
15704
+ #
15705
+ # However, for an improved security posture, we strongly recommend
15706
+ # creating a custom policy and custom service role for running your
15707
+ # maintenance window tasks. The policy can be crafted to provide only
15708
+ # the permissions needed for your particular maintenance window tasks.
15709
+ # For more information, see [Setting up maintenance windows][1] in the
15710
+ # in the *Amazon Web Services Systems Manager User Guide*.
15436
15711
  #
15437
15712
  #
15438
15713
  #
15439
- # [1]: https://docs.aws.amazon.com/systems-manager/latest/userguide/using-service-linked-roles.html#slr-permissions
15714
+ # [1]: https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-permissions.html
15440
15715
  # @return [String]
15441
15716
  #
15442
15717
  # @!attribute [rw] task_type
@@ -17660,50 +17935,51 @@ module Aws::SSM
17660
17935
  #
17661
17936
  # Supported formats include the following.
17662
17937
  #
17663
- # * `Key=InstanceIds,Values=<instance-id-1>,<instance-id-2>,<instance-id-3>`
17938
+ # **For all Systems Manager capabilities:**
17664
17939
  #
17665
- # * `Key=tag:<my-tag-key>,Values=<my-tag-value-1>,<my-tag-value-2>`
17940
+ # * `Key=tag-key,Values=tag-value-1,tag-value-2`
17666
17941
  #
17667
- # * `Key=tag-key,Values=<my-tag-key-1>,<my-tag-key-2>`
17942
+ # ^
17668
17943
  #
17669
- # * **Run Command and Maintenance window targets only**:
17670
- # `Key=resource-groups:Name,Values=<resource-group-name>`
17944
+ # **For Automation and Change Manager:**
17671
17945
  #
17672
- # * **Maintenance window targets only**:
17673
- # `Key=resource-groups:ResourceTypeFilters,Values=<resource-type-1>,<resource-type-2>`
17946
+ # * `Key=tag:tag-key,Values=tag-value`
17674
17947
  #
17675
- # * **Automation targets only**:
17676
- # `Key=ResourceGroup;Values=<resource-group-name>`
17948
+ # * `Key=ResourceGroup,Values=resource-group-name`
17677
17949
  #
17678
- # For example:
17950
+ # * `Key=ParameterValues,Values=value-1,value-2,value-3`
17679
17951
  #
17680
- # * `Key=InstanceIds,Values=i-02573cafcfEXAMPLE,i-0471e04240EXAMPLE,i-07782c72faEXAMPLE`
17952
+ # * To target all instances in the Amazon Web Services Region:
17681
17953
  #
17682
- # * `Key=tag:CostCenter,Values=CostCenter1,CostCenter2,CostCenter3`
17954
+ # * `Key=AWS::EC2::Instance,Values=*`
17683
17955
  #
17684
- # * `Key=tag-key,Values=Name,Instance-Type,CostCenter`
17956
+ # * `Key=InstanceIds,Values=*`
17685
17957
  #
17686
- # * **Run Command and Maintenance window targets only**:
17687
- # `Key=resource-groups:Name,Values=ProductionResourceGroup`
17958
+ # **For Run Command and Maintenance Windows:**
17688
17959
  #
17689
- # This example demonstrates how to target all resources in the
17690
- # resource group **ProductionResourceGroup** in your maintenance
17691
- # window.
17960
+ # * `Key=InstanceIds,Values=instance-id-1,instance-id-2,instance-id-3`
17692
17961
  #
17693
- # * **Maintenance window targets only**:
17694
- # `Key=resource-groups:ResourceTypeFilters,Values=AWS::EC2::INSTANCE,AWS::EC2::VPC`
17962
+ # * `Key=tag:tag-key,Values=tag-value-1,tag-value-2`
17695
17963
  #
17696
- # This example demonstrates how to target only Amazon Elastic Compute
17697
- # Cloud (Amazon EC2) instances and VPCs in your maintenance window.
17964
+ # * `Key=resource-groups:Name,Values=resource-group-name`
17698
17965
  #
17699
- # * **Automation targets only**:
17700
- # `Key=ResourceGroup,Values=MyResourceGroup`
17966
+ # * Additionally, Maintenance Windows support targeting resource types:
17701
17967
  #
17702
- # * **State Manager association targets only**:
17703
- # `Key=InstanceIds,Values=*`
17968
+ # * `Key=resource-groups:ResourceTypeFilters,Values=resource-type-1,resource-type-2`
17704
17969
  #
17705
- # This example demonstrates how to target all managed instances in the
17706
- # Amazon Web Services Region where the association was created.
17970
+ # ^
17971
+ #
17972
+ # **For State Manager:**
17973
+ #
17974
+ # * `Key=InstanceIds,Values=instance-id-1,instance-id-2,instance-id-3`
17975
+ #
17976
+ # * `Key=tag:tag-key,Values=tag-value-1,tag-value-2`
17977
+ #
17978
+ # * To target all instances in the Amazon Web Services Region:
17979
+ #
17980
+ # * `Key=InstanceIds,Values=*`
17981
+ #
17982
+ # ^
17707
17983
  #
17708
17984
  # For more information about how to send commands that target managed
17709
17985
  # nodes using `Key,Value` parameters, see [Targeting multiple managed
@@ -18490,6 +18766,11 @@ module Aws::SSM
18490
18766
  # the maintenance window to become active. `StartDate` allows you to
18491
18767
  # delay activation of the maintenance window until the specified
18492
18768
  # future date.
18769
+ #
18770
+ # <note markdown="1"> When using a rate schedule, if you provide a start date that occurs
18771
+ # in the past, the current date and time are used as the start date.
18772
+ #
18773
+ # </note>
18493
18774
  # @return [String]
18494
18775
  #
18495
18776
  # @!attribute [rw] end_date
@@ -18778,17 +19059,21 @@ module Aws::SSM
18778
19059
  # The Amazon Resource Name (ARN) of the IAM service role for Amazon
18779
19060
  # Web Services Systems Manager to assume when running a maintenance
18780
19061
  # window task. If you do not specify a service role ARN, Systems
18781
- # Manager uses your account's service-linked role. If no
18782
- # service-linked role for Systems Manager exists in your account, it
18783
- # is created when you run `RegisterTaskWithMaintenanceWindow`.
18784
- #
18785
- # For more information, see [Using service-linked roles for Systems
18786
- # Manager][1] in the in the *Amazon Web Services Systems Manager User
18787
- # Guide*:
19062
+ # Manager uses a service-linked role in your account. If no
19063
+ # appropriate service-linked role for Systems Manager exists in your
19064
+ # account, it is created when you run
19065
+ # `RegisterTaskWithMaintenanceWindow`.
19066
+ #
19067
+ # However, for an improved security posture, we strongly recommend
19068
+ # creating a custom policy and custom service role for running your
19069
+ # maintenance window tasks. The policy can be crafted to provide only
19070
+ # the permissions needed for your particular maintenance window tasks.
19071
+ # For more information, see [Setting up maintenance windows][1] in the
19072
+ # in the *Amazon Web Services Systems Manager User Guide*.
18788
19073
  #
18789
19074
  #
18790
19075
  #
18791
- # [1]: https://docs.aws.amazon.com/systems-manager/latest/userguide/using-service-linked-roles.html#slr-permissions
19076
+ # [1]: https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-permissions.html
18792
19077
  # @return [String]
18793
19078
  #
18794
19079
  # @!attribute [rw] task_parameters
data/lib/aws-sdk-ssm.rb CHANGED
@@ -53,6 +53,6 @@ require_relative 'aws-sdk-ssm/customizations'
53
53
  # @!group service
54
54
  module Aws::SSM
55
55
 
56
- GEM_VERSION = '1.166.0'
56
+ GEM_VERSION = '1.167.0'
57
57
 
58
58
  end
data/sig/client.rbs CHANGED
@@ -946,6 +946,31 @@ module Aws
946
946
  ) -> _DescribeInstancePatchesResponseSuccess
947
947
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeInstancePatchesResponseSuccess
948
948
 
949
+ interface _DescribeInstancePropertiesResponseSuccess
950
+ include ::Seahorse::Client::_ResponseSuccess[Types::DescribeInstancePropertiesResult]
951
+ def instance_properties: () -> ::Array[Types::InstanceProperty]
952
+ def next_token: () -> ::String
953
+ end
954
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/SSM/Client.html#describe_instance_properties-instance_method
955
+ def describe_instance_properties: (
956
+ ?instance_property_filter_list: Array[
957
+ {
958
+ key: ("InstanceIds" | "AgentVersion" | "PingStatus" | "PlatformTypes" | "DocumentName" | "ActivationIds" | "IamRole" | "ResourceType" | "AssociationStatus"),
959
+ value_set: Array[::String]
960
+ },
961
+ ],
962
+ ?filters_with_operator: Array[
963
+ {
964
+ key: ::String,
965
+ values: Array[::String],
966
+ operator: ("Equal" | "NotEqual" | "BeginWith" | "LessThan" | "GreaterThan")?
967
+ },
968
+ ],
969
+ ?max_results: ::Integer,
970
+ ?next_token: ::String
971
+ ) -> _DescribeInstancePropertiesResponseSuccess
972
+ | (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeInstancePropertiesResponseSuccess
973
+
949
974
  interface _DescribeInventoryDeletionsResponseSuccess
950
975
  include ::Seahorse::Client::_ResponseSuccess[Types::DescribeInventoryDeletionsResult]
951
976
  def inventory_deletions: () -> ::Array[Types::InventoryDeletionStatusItem]
data/sig/errors.rbs CHANGED
@@ -164,6 +164,9 @@ module Aws
164
164
  class InvalidInstanceInformationFilterValue < ::Aws::Errors::ServiceError
165
165
  def message: () -> ::String
166
166
  end
167
+ class InvalidInstancePropertyFilterValue < ::Aws::Errors::ServiceError
168
+ def message: () -> ::String
169
+ end
167
170
  class InvalidInventoryGroupException < ::Aws::Errors::ServiceError
168
171
  def message: () -> ::String
169
172
  end
data/sig/types.rbs CHANGED
@@ -1109,6 +1109,20 @@ module Aws::SSM
1109
1109
  SENSITIVE: []
1110
1110
  end
1111
1111
 
1112
+ class DescribeInstancePropertiesRequest
1113
+ attr_accessor instance_property_filter_list: ::Array[Types::InstancePropertyFilter]
1114
+ attr_accessor filters_with_operator: ::Array[Types::InstancePropertyStringFilter]
1115
+ attr_accessor max_results: ::Integer
1116
+ attr_accessor next_token: ::String
1117
+ SENSITIVE: []
1118
+ end
1119
+
1120
+ class DescribeInstancePropertiesResult
1121
+ attr_accessor instance_properties: ::Array[Types::InstanceProperty]
1122
+ attr_accessor next_token: ::String
1123
+ SENSITIVE: []
1124
+ end
1125
+
1112
1126
  class DescribeInventoryDeletionsRequest
1113
1127
  attr_accessor deletion_id: ::String
1114
1128
  attr_accessor next_token: ::String
@@ -2087,6 +2101,49 @@ module Aws::SSM
2087
2101
  SENSITIVE: []
2088
2102
  end
2089
2103
 
2104
+ class InstanceProperty
2105
+ attr_accessor name: ::String
2106
+ attr_accessor instance_id: ::String
2107
+ attr_accessor instance_type: ::String
2108
+ attr_accessor instance_role: ::String
2109
+ attr_accessor key_name: ::String
2110
+ attr_accessor instance_state: ::String
2111
+ attr_accessor architecture: ::String
2112
+ attr_accessor ip_address: ::String
2113
+ attr_accessor launch_time: ::Time
2114
+ attr_accessor ping_status: ("Online" | "ConnectionLost" | "Inactive")
2115
+ attr_accessor last_ping_date_time: ::Time
2116
+ attr_accessor agent_version: ::String
2117
+ attr_accessor platform_type: ("Windows" | "Linux" | "MacOS")
2118
+ attr_accessor platform_name: ::String
2119
+ attr_accessor platform_version: ::String
2120
+ attr_accessor activation_id: ::String
2121
+ attr_accessor iam_role: ::String
2122
+ attr_accessor registration_date: ::Time
2123
+ attr_accessor resource_type: ::String
2124
+ attr_accessor computer_name: ::String
2125
+ attr_accessor association_status: ::String
2126
+ attr_accessor last_association_execution_date: ::Time
2127
+ attr_accessor last_successful_association_execution_date: ::Time
2128
+ attr_accessor association_overview: Types::InstanceAggregatedAssociationOverview
2129
+ attr_accessor source_id: ::String
2130
+ attr_accessor source_type: ("AWS::EC2::Instance" | "AWS::IoT::Thing" | "AWS::SSM::ManagedInstance")
2131
+ SENSITIVE: []
2132
+ end
2133
+
2134
+ class InstancePropertyFilter
2135
+ attr_accessor key: ("InstanceIds" | "AgentVersion" | "PingStatus" | "PlatformTypes" | "DocumentName" | "ActivationIds" | "IamRole" | "ResourceType" | "AssociationStatus")
2136
+ attr_accessor value_set: ::Array[::String]
2137
+ SENSITIVE: []
2138
+ end
2139
+
2140
+ class InstancePropertyStringFilter
2141
+ attr_accessor key: ::String
2142
+ attr_accessor values: ::Array[::String]
2143
+ attr_accessor operator: ("Equal" | "NotEqual" | "BeginWith" | "LessThan" | "GreaterThan")
2144
+ SENSITIVE: []
2145
+ end
2146
+
2090
2147
  class InternalServerError
2091
2148
  attr_accessor message: ::String
2092
2149
  SENSITIVE: []
@@ -2208,6 +2265,11 @@ module Aws::SSM
2208
2265
  SENSITIVE: []
2209
2266
  end
2210
2267
 
2268
+ class InvalidInstancePropertyFilterValue
2269
+ attr_accessor message: ::String
2270
+ SENSITIVE: []
2271
+ end
2272
+
2211
2273
  class InvalidInventoryGroupException
2212
2274
  attr_accessor message: ::String
2213
2275
  SENSITIVE: []
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-ssm
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.166.0
4
+ version: 1.167.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: 2024-03-12 00:00:00.000000000 Z
11
+ date: 2024-04-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core