aws-sdk-iot 1.100.0 → 1.101.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: a2ce5d3794d27ca0e3ec42661d0cd377e460f3fce246e515606a3098a272b078
4
- data.tar.gz: 0f0cac12014418d2e4a53ff54250799a37431596acbf4fcb7b46e895ba47dc89
3
+ metadata.gz: 96636d17e491b5c5c4903497dc0c157d33547001dfac12c7bb3ffd17a9f3a737
4
+ data.tar.gz: 127d488f7ef299d5822ea0634b2f3ef679613ab28ebdca9d1dd7844247361460
5
5
  SHA512:
6
- metadata.gz: b5d9ab463fe7db463cdc4500ad683311061527103ab7fd19a7248542f39fe05d6e1729c55bd51016564b7d48886922cdfc8a070c05cc9e06775cbf830259785e
7
- data.tar.gz: 61aa63f3914268ec53b5c69401d57d10c257e63a6b6ccdc710d91789f7f1ce67c4666df944774f287c1ba13ddfe5691f8d9ae80538e369b51877adb341d07c89
6
+ metadata.gz: 59f0ac3f5b57edbf8a24583082a51e89c0d349308d7644596b2b9f94ed126cc923e9833ae8c6782013f51dda4f0da97d6532f9a82e3c018eed2f2c129b6442c7
7
+ data.tar.gz: 300bf8291fce0f89843c63df3191461b5e2fbe6bcf7e3c19f76f8a94750611c138c44cd7616b23de2cbefb8fd00f4430fbaf8b51bf58a206b27d7acaf82ea54d
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.101.0 (2023-03-02)
5
+ ------------------
6
+
7
+ * Feature - A recurring maintenance window is an optional configuration used for rolling out the job document to all devices in the target group observing a predetermined start time, duration, and frequency that the maintenance window occurs.
8
+
4
9
  1.100.0 (2023-01-31)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.100.0
1
+ 1.101.0
@@ -1201,61 +1201,63 @@ module Aws::IoT
1201
1201
  # Creates an X.509 certificate using the specified certificate signing
1202
1202
  # request.
1203
1203
  #
1204
- # **Note:** The CSR must include a public key that is either an RSA key
1205
- # with a length of at least 2048 bits or an ECC key from NIST P-256,
1206
- # NIST P-384, or NIST P-512 curves. For supported certificates, consult
1207
- # [ Certificate signing algorithms supported by IoT][1].
1204
+ # Requires permission to access the [CreateCertificateFromCsr][1]
1205
+ # action.
1208
1206
  #
1209
- # **Note:** Reusing the same certificate signing request (CSR) results
1210
- # in a distinct certificate.
1207
+ # <note markdown="1"> The CSR must include a public key that is either an RSA key with a
1208
+ # length of at least 2048 bits or an ECC key from NIST P-25 or NIST
1209
+ # P-384 curves. For supported certificates, consult [ Certificate
1210
+ # signing algorithms supported by IoT][2].
1211
1211
  #
1212
- # Requires permission to access the [CreateCertificateFromCsr][2]
1213
- # action.
1212
+ # </note>
1213
+ #
1214
+ # <note markdown="1"> Reusing the same certificate signing request (CSR) results in a
1215
+ # distinct certificate.
1216
+ #
1217
+ # </note>
1214
1218
  #
1215
1219
  # You can create multiple certificates in a batch by creating a
1216
- # directory, copying multiple .csr files into that directory, and then
1220
+ # directory, copying multiple `.csr` files into that directory, and then
1217
1221
  # specifying that directory on the command line. The following commands
1218
- # show how to create a batch of certificates given a batch of CSRs.
1219
- #
1220
- # Assuming a set of CSRs are located inside of the directory
1221
- # my-csr-directory:
1222
+ # show how to create a batch of certificates given a batch of CSRs. In
1223
+ # the following commands, we assume that a set of CSRs are located
1224
+ # inside of the directory my-csr-directory:
1222
1225
  #
1223
1226
  # On Linux and OS X, the command is:
1224
1227
  #
1225
- # $ ls my-csr-directory/ \| xargs -I \\\{\\} aws iot
1228
+ # `$ ls my-csr-directory/ | xargs -I \{\} aws iot
1226
1229
  # create-certificate-from-csr --certificate-signing-request
1227
- # file://my-csr-directory/\\\{\\}
1230
+ # file://my-csr-directory/\{\}`
1228
1231
  #
1229
1232
  # This command lists all of the CSRs in my-csr-directory and pipes each
1230
- # CSR file name to the aws iot create-certificate-from-csr Amazon Web
1233
+ # CSR file name to the `aws iot create-certificate-from-csr` Amazon Web
1231
1234
  # Services CLI command to create a certificate for the corresponding
1232
1235
  # CSR.
1233
1236
  #
1234
- # The aws iot create-certificate-from-csr part of the command can also
1235
- # be run in parallel to speed up the certificate creation process:
1237
+ # You can also run the `aws iot create-certificate-from-csr` part of the
1238
+ # command in parallel to speed up the certificate creation process:
1236
1239
  #
1237
- # $ ls my-csr-directory/ \| xargs -P 10 -I \\\{\\} aws iot
1240
+ # `$ ls my-csr-directory/ | xargs -P 10 -I \{\} aws iot
1238
1241
  # create-certificate-from-csr --certificate-signing-request
1239
- # file://my-csr-directory/\\\{\\}
1242
+ # file://my-csr-directory/\{\} `
1240
1243
  #
1241
1244
  # On Windows PowerShell, the command to create certificates for all CSRs
1242
1245
  # in my-csr-directory is:
1243
1246
  #
1244
- # &gt; ls -Name my-csr-directory \| %\\\{aws iot
1245
- # create-certificate-from-csr --certificate-signing-request
1246
- # file://my-csr-directory/$\_\\}
1247
+ # `> ls -Name my-csr-directory | %\{aws iot create-certificate-from-csr
1248
+ # --certificate-signing-request file://my-csr-directory/$_\} `
1247
1249
  #
1248
1250
  # On a Windows command prompt, the command to create certificates for
1249
1251
  # all CSRs in my-csr-directory is:
1250
1252
  #
1251
- # &gt; forfiles /p my-csr-directory /c "cmd /c aws iot
1253
+ # `> forfiles /p my-csr-directory /c "cmd /c aws iot
1252
1254
  # create-certificate-from-csr --certificate-signing-request
1253
- # file://@path"
1255
+ # file://@path" `
1254
1256
  #
1255
1257
  #
1256
1258
  #
1257
- # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html#x509-cert-algorithms
1258
- # [2]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
1259
+ # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
1260
+ # [2]: https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html#x509-cert-algorithms
1259
1261
  #
1260
1262
  # @option params [required, String] :certificate_signing_request
1261
1263
  # The certificate signing request (CSR).
@@ -1646,7 +1648,7 @@ module Aws::IoT
1646
1648
  #
1647
1649
  #
1648
1650
  #
1649
- # [1]: https://docs.aws.amazon.com/https:/docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
1651
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
1650
1652
  #
1651
1653
  # @option params [Array<Types::Tag>] :tags
1652
1654
  # Metadata, which can be used to manage the fleet metric.
@@ -1864,6 +1866,12 @@ module Aws::IoT
1864
1866
  # start_time: "StringDateTime",
1865
1867
  # end_time: "StringDateTime",
1866
1868
  # end_behavior: "STOP_ROLLOUT", # accepts STOP_ROLLOUT, CANCEL, FORCE_CANCEL
1869
+ # maintenance_windows: [
1870
+ # {
1871
+ # start_time: "CronExpression", # required
1872
+ # duration_in_minutes: 1, # required
1873
+ # },
1874
+ # ],
1867
1875
  # },
1868
1876
  # })
1869
1877
  #
@@ -1940,6 +1948,10 @@ module Aws::IoT
1940
1948
  # @option params [Types::JobExecutionsRetryConfig] :job_executions_retry_config
1941
1949
  # Allows you to create the criteria to retry a job.
1942
1950
  #
1951
+ # @option params [Array<Types::MaintenanceWindow>] :maintenance_windows
1952
+ # Allows you to configure an optional maintenance window for the rollout
1953
+ # of a job document to all devices in the target group for a job.
1954
+ #
1943
1955
  # @return [Types::CreateJobTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1944
1956
  #
1945
1957
  # * {Types::CreateJobTemplateResponse#job_template_arn #job_template_arn} => String
@@ -1995,6 +2007,12 @@ module Aws::IoT
1995
2007
  # },
1996
2008
  # ],
1997
2009
  # },
2010
+ # maintenance_windows: [
2011
+ # {
2012
+ # start_time: "CronExpression", # required
2013
+ # duration_in_minutes: 1, # required
2014
+ # },
2015
+ # ],
1998
2016
  # })
1999
2017
  #
2000
2018
  # @example Response structure
@@ -5672,6 +5690,11 @@ module Aws::IoT
5672
5690
  # resp.job.scheduling_config.start_time #=> String
5673
5691
  # resp.job.scheduling_config.end_time #=> String
5674
5692
  # resp.job.scheduling_config.end_behavior #=> String, one of "STOP_ROLLOUT", "CANCEL", "FORCE_CANCEL"
5693
+ # resp.job.scheduling_config.maintenance_windows #=> Array
5694
+ # resp.job.scheduling_config.maintenance_windows[0].start_time #=> String
5695
+ # resp.job.scheduling_config.maintenance_windows[0].duration_in_minutes #=> Integer
5696
+ # resp.job.scheduled_job_rollouts #=> Array
5697
+ # resp.job.scheduled_job_rollouts[0].start_time #=> String
5675
5698
  #
5676
5699
  # @overload describe_job(params = {})
5677
5700
  # @param [Hash] params ({})
@@ -5750,6 +5773,7 @@ module Aws::IoT
5750
5773
  # * {Types::DescribeJobTemplateResponse#abort_config #abort_config} => Types::AbortConfig
5751
5774
  # * {Types::DescribeJobTemplateResponse#timeout_config #timeout_config} => Types::TimeoutConfig
5752
5775
  # * {Types::DescribeJobTemplateResponse#job_executions_retry_config #job_executions_retry_config} => Types::JobExecutionsRetryConfig
5776
+ # * {Types::DescribeJobTemplateResponse#maintenance_windows #maintenance_windows} => Array&lt;Types::MaintenanceWindow&gt;
5753
5777
  #
5754
5778
  # @example Request syntax with placeholder values
5755
5779
  #
@@ -5781,6 +5805,9 @@ module Aws::IoT
5781
5805
  # resp.job_executions_retry_config.criteria_list #=> Array
5782
5806
  # resp.job_executions_retry_config.criteria_list[0].failure_type #=> String, one of "FAILED", "TIMED_OUT", "ALL"
5783
5807
  # resp.job_executions_retry_config.criteria_list[0].number_of_retries #=> Integer
5808
+ # resp.maintenance_windows #=> Array
5809
+ # resp.maintenance_windows[0].start_time #=> String
5810
+ # resp.maintenance_windows[0].duration_in_minutes #=> Integer
5784
5811
  #
5785
5812
  # @overload describe_job_template(params = {})
5786
5813
  # @param [Hash] params ({})
@@ -14067,7 +14094,7 @@ module Aws::IoT
14067
14094
  params: params,
14068
14095
  config: config)
14069
14096
  context[:gem_name] = 'aws-sdk-iot'
14070
- context[:gem_version] = '1.100.0'
14097
+ context[:gem_version] = '1.101.0'
14071
14098
  Seahorse::Client::Request.new(handlers, context)
14072
14099
  end
14073
14100
 
@@ -293,6 +293,7 @@ module Aws::IoT
293
293
  CreatedAtDate = Shapes::TimestampShape.new(name: 'CreatedAtDate')
294
294
  CreationDate = Shapes::TimestampShape.new(name: 'CreationDate')
295
295
  CredentialDurationSeconds = Shapes::IntegerShape.new(name: 'CredentialDurationSeconds')
296
+ CronExpression = Shapes::StringShape.new(name: 'CronExpression')
296
297
  CustomCodeSigning = Shapes::StructureShape.new(name: 'CustomCodeSigning')
297
298
  CustomMetricArn = Shapes::StringShape.new(name: 'CustomMetricArn')
298
299
  CustomMetricDisplayName = Shapes::StringShape.new(name: 'CustomMetricDisplayName')
@@ -475,6 +476,7 @@ module Aws::IoT
475
476
  DomainConfigurations = Shapes::ListShape.new(name: 'DomainConfigurations')
476
477
  DomainName = Shapes::StringShape.new(name: 'DomainName')
477
478
  DomainType = Shapes::StringShape.new(name: 'DomainType')
479
+ DurationInMinutes = Shapes::IntegerShape.new(name: 'DurationInMinutes')
478
480
  DurationSeconds = Shapes::IntegerShape.new(name: 'DurationSeconds')
479
481
  DynamicGroupStatus = Shapes::StringShape.new(name: 'DynamicGroupStatus')
480
482
  DynamoDBAction = Shapes::StructureShape.new(name: 'DynamoDBAction')
@@ -788,6 +790,8 @@ module Aws::IoT
788
790
  LogTargetType = Shapes::StringShape.new(name: 'LogTargetType')
789
791
  LoggingOptionsPayload = Shapes::StructureShape.new(name: 'LoggingOptionsPayload')
790
792
  MachineLearningDetectionConfig = Shapes::StructureShape.new(name: 'MachineLearningDetectionConfig')
793
+ MaintenanceWindow = Shapes::StructureShape.new(name: 'MaintenanceWindow')
794
+ MaintenanceWindows = Shapes::ListShape.new(name: 'MaintenanceWindows')
791
795
  MalformedPolicyException = Shapes::StructureShape.new(name: 'MalformedPolicyException')
792
796
  ManagedJobTemplateName = Shapes::StringShape.new(name: 'ManagedJobTemplateName')
793
797
  ManagedJobTemplateSummary = Shapes::StructureShape.new(name: 'ManagedJobTemplateSummary')
@@ -1006,6 +1010,8 @@ module Aws::IoT
1006
1010
  ScheduledAuditMetadata = Shapes::StructureShape.new(name: 'ScheduledAuditMetadata')
1007
1011
  ScheduledAuditMetadataList = Shapes::ListShape.new(name: 'ScheduledAuditMetadataList')
1008
1012
  ScheduledAuditName = Shapes::StringShape.new(name: 'ScheduledAuditName')
1013
+ ScheduledJobRollout = Shapes::StructureShape.new(name: 'ScheduledJobRollout')
1014
+ ScheduledJobRolloutList = Shapes::ListShape.new(name: 'ScheduledJobRolloutList')
1009
1015
  SchedulingConfig = Shapes::StructureShape.new(name: 'SchedulingConfig')
1010
1016
  SearchIndexRequest = Shapes::StructureShape.new(name: 'SearchIndexRequest')
1011
1017
  SearchIndexResponse = Shapes::StructureShape.new(name: 'SearchIndexResponse')
@@ -1944,6 +1950,7 @@ module Aws::IoT
1944
1950
  CreateJobTemplateRequest.add_member(:timeout_config, Shapes::ShapeRef.new(shape: TimeoutConfig, location_name: "timeoutConfig"))
1945
1951
  CreateJobTemplateRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
1946
1952
  CreateJobTemplateRequest.add_member(:job_executions_retry_config, Shapes::ShapeRef.new(shape: JobExecutionsRetryConfig, location_name: "jobExecutionsRetryConfig"))
1953
+ CreateJobTemplateRequest.add_member(:maintenance_windows, Shapes::ShapeRef.new(shape: MaintenanceWindows, location_name: "maintenanceWindows"))
1947
1954
  CreateJobTemplateRequest.struct_class = Types::CreateJobTemplateRequest
1948
1955
 
1949
1956
  CreateJobTemplateResponse.add_member(:job_template_arn, Shapes::ShapeRef.new(shape: JobTemplateArn, location_name: "jobTemplateArn"))
@@ -2506,6 +2513,7 @@ module Aws::IoT
2506
2513
  DescribeJobTemplateResponse.add_member(:abort_config, Shapes::ShapeRef.new(shape: AbortConfig, location_name: "abortConfig"))
2507
2514
  DescribeJobTemplateResponse.add_member(:timeout_config, Shapes::ShapeRef.new(shape: TimeoutConfig, location_name: "timeoutConfig"))
2508
2515
  DescribeJobTemplateResponse.add_member(:job_executions_retry_config, Shapes::ShapeRef.new(shape: JobExecutionsRetryConfig, location_name: "jobExecutionsRetryConfig"))
2516
+ DescribeJobTemplateResponse.add_member(:maintenance_windows, Shapes::ShapeRef.new(shape: MaintenanceWindows, location_name: "maintenanceWindows"))
2509
2517
  DescribeJobTemplateResponse.struct_class = Types::DescribeJobTemplateResponse
2510
2518
 
2511
2519
  DescribeManagedJobTemplateRequest.add_member(:template_name, Shapes::ShapeRef.new(shape: ManagedJobTemplateName, required: true, location: "uri", location_name: "templateName"))
@@ -3064,6 +3072,7 @@ module Aws::IoT
3064
3072
  Job.add_member(:document_parameters, Shapes::ShapeRef.new(shape: ParameterMap, location_name: "documentParameters"))
3065
3073
  Job.add_member(:is_concurrent, Shapes::ShapeRef.new(shape: BooleanWrapperObject, location_name: "isConcurrent"))
3066
3074
  Job.add_member(:scheduling_config, Shapes::ShapeRef.new(shape: SchedulingConfig, location_name: "schedulingConfig"))
3075
+ Job.add_member(:scheduled_job_rollouts, Shapes::ShapeRef.new(shape: ScheduledJobRolloutList, location_name: "scheduledJobRollouts"))
3067
3076
  Job.struct_class = Types::Job
3068
3077
 
3069
3078
  JobExecution.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, location_name: "jobId"))
@@ -3756,6 +3765,12 @@ module Aws::IoT
3756
3765
  MachineLearningDetectionConfig.add_member(:confidence_level, Shapes::ShapeRef.new(shape: ConfidenceLevel, required: true, location_name: "confidenceLevel"))
3757
3766
  MachineLearningDetectionConfig.struct_class = Types::MachineLearningDetectionConfig
3758
3767
 
3768
+ MaintenanceWindow.add_member(:start_time, Shapes::ShapeRef.new(shape: CronExpression, required: true, location_name: "startTime"))
3769
+ MaintenanceWindow.add_member(:duration_in_minutes, Shapes::ShapeRef.new(shape: DurationInMinutes, required: true, location_name: "durationInMinutes"))
3770
+ MaintenanceWindow.struct_class = Types::MaintenanceWindow
3771
+
3772
+ MaintenanceWindows.member = Shapes::ShapeRef.new(shape: MaintenanceWindow)
3773
+
3759
3774
  MalformedPolicyException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
3760
3775
  MalformedPolicyException.struct_class = Types::MalformedPolicyException
3761
3776
 
@@ -4162,9 +4177,15 @@ module Aws::IoT
4162
4177
 
4163
4178
  ScheduledAuditMetadataList.member = Shapes::ShapeRef.new(shape: ScheduledAuditMetadata)
4164
4179
 
4180
+ ScheduledJobRollout.add_member(:start_time, Shapes::ShapeRef.new(shape: StringDateTime, location_name: "startTime"))
4181
+ ScheduledJobRollout.struct_class = Types::ScheduledJobRollout
4182
+
4183
+ ScheduledJobRolloutList.member = Shapes::ShapeRef.new(shape: ScheduledJobRollout)
4184
+
4165
4185
  SchedulingConfig.add_member(:start_time, Shapes::ShapeRef.new(shape: StringDateTime, location_name: "startTime"))
4166
4186
  SchedulingConfig.add_member(:end_time, Shapes::ShapeRef.new(shape: StringDateTime, location_name: "endTime"))
4167
4187
  SchedulingConfig.add_member(:end_behavior, Shapes::ShapeRef.new(shape: JobEndBehavior, location_name: "endBehavior"))
4188
+ SchedulingConfig.add_member(:maintenance_windows, Shapes::ShapeRef.new(shape: MaintenanceWindows, location_name: "maintenanceWindows"))
4168
4189
  SchedulingConfig.struct_class = Types::SchedulingConfig
4169
4190
 
4170
4191
  SearchIndexRequest.add_member(:index_name, Shapes::ShapeRef.new(shape: IndexName, location_name: "indexName"))
@@ -50,9 +50,6 @@ module Aws::IoT
50
50
 
51
51
  def initialize(options = {})
52
52
  self[:region] = options[:region]
53
- if self[:region].nil?
54
- raise ArgumentError, "Missing required EndpointParameter: :region"
55
- end
56
53
  self[:use_dual_stack] = options[:use_dual_stack]
57
54
  self[:use_dual_stack] = false if self[:use_dual_stack].nil?
58
55
  if self[:use_dual_stack].nil?
@@ -14,36 +14,48 @@ module Aws::IoT
14
14
  use_dual_stack = parameters.use_dual_stack
15
15
  use_fips = parameters.use_fips
16
16
  endpoint = parameters.endpoint
17
- if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
18
- if Aws::Endpoints::Matchers.set?(endpoint)
17
+ if Aws::Endpoints::Matchers.set?(endpoint)
18
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
19
+ raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
20
+ end
21
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
22
+ raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
23
+ end
24
+ return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
25
+ end
26
+ if Aws::Endpoints::Matchers.set?(region)
27
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
28
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
29
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
30
+ return Aws::Endpoints::Endpoint.new(url: "https://iot-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
31
+ end
32
+ raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
+ end
19
34
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
20
- raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
35
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
36
+ return Aws::Endpoints::Endpoint.new(url: "https://iot-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
37
+ end
38
+ raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
21
39
  end
22
40
  if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
23
- raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
41
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
42
+ return Aws::Endpoints::Endpoint.new(url: "https://iot.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
43
+ end
44
+ raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
24
45
  end
25
- return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
26
- end
27
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
28
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
29
- return Aws::Endpoints::Endpoint.new(url: "https://iot-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
46
+ if Aws::Endpoints::Matchers.string_equals?("aws", Aws::Endpoints::Matchers.attr(partition_result, "name"))
47
+ return Aws::Endpoints::Endpoint.new(url: "https://iot.#{region}.amazonaws.com", headers: {}, properties: {})
30
48
  end
31
- raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
32
- end
33
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
34
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
- return Aws::Endpoints::Endpoint.new(url: "https://iot-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
49
+ if Aws::Endpoints::Matchers.string_equals?("aws-cn", Aws::Endpoints::Matchers.attr(partition_result, "name"))
50
+ return Aws::Endpoints::Endpoint.new(url: "https://iot.#{region}.amazonaws.com.cn", headers: {}, properties: {})
36
51
  end
37
- raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
38
- end
39
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
40
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
41
- return Aws::Endpoints::Endpoint.new(url: "https://iot.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
52
+ if Aws::Endpoints::Matchers.string_equals?("aws-us-gov", Aws::Endpoints::Matchers.attr(partition_result, "name"))
53
+ return Aws::Endpoints::Endpoint.new(url: "https://iot.#{region}.amazonaws.com", headers: {}, properties: {})
42
54
  end
43
- raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
55
+ return Aws::Endpoints::Endpoint.new(url: "https://iot.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
44
56
  end
45
- return Aws::Endpoints::Endpoint.new(url: "https://iot.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
46
57
  end
58
+ raise ArgumentError, "Invalid Configuration: Missing Region"
47
59
  raise ArgumentError, 'No endpoint could be resolved'
48
60
 
49
61
  end
@@ -2659,7 +2659,7 @@ module Aws::IoT
2659
2659
  #
2660
2660
  #
2661
2661
  #
2662
- # [1]: https://docs.aws.amazon.com/https:/docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
2662
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
2663
2663
  # @return [String]
2664
2664
  #
2665
2665
  # @!attribute [rw] tags
@@ -2915,6 +2915,12 @@ module Aws::IoT
2915
2915
  # Allows you to create the criteria to retry a job.
2916
2916
  # @return [Types::JobExecutionsRetryConfig]
2917
2917
  #
2918
+ # @!attribute [rw] maintenance_windows
2919
+ # Allows you to configure an optional maintenance window for the
2920
+ # rollout of a job document to all devices in the target group for a
2921
+ # job.
2922
+ # @return [Array<Types::MaintenanceWindow>]
2923
+ #
2918
2924
  class CreateJobTemplateRequest < Struct.new(
2919
2925
  :job_template_id,
2920
2926
  :job_arn,
@@ -2926,7 +2932,8 @@ module Aws::IoT
2926
2932
  :abort_config,
2927
2933
  :timeout_config,
2928
2934
  :tags,
2929
- :job_executions_retry_config)
2935
+ :job_executions_retry_config,
2936
+ :maintenance_windows)
2930
2937
  SENSITIVE = []
2931
2938
  include Aws::Structure
2932
2939
  end
@@ -5159,7 +5166,7 @@ module Aws::IoT
5159
5166
  #
5160
5167
  #
5161
5168
  #
5162
- # [1]: https://docs.aws.amazon.com/https:/docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
5169
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
5163
5170
  # @return [String]
5164
5171
  #
5165
5172
  # @!attribute [rw] version
@@ -5354,6 +5361,12 @@ module Aws::IoT
5354
5361
  # each failure type for a job.
5355
5362
  # @return [Types::JobExecutionsRetryConfig]
5356
5363
  #
5364
+ # @!attribute [rw] maintenance_windows
5365
+ # Allows you to configure an optional maintenance window for the
5366
+ # rollout of a job document to all devices in the target group for a
5367
+ # job.
5368
+ # @return [Array<Types::MaintenanceWindow>]
5369
+ #
5357
5370
  class DescribeJobTemplateResponse < Struct.new(
5358
5371
  :job_template_arn,
5359
5372
  :job_template_id,
@@ -5365,7 +5378,8 @@ module Aws::IoT
5365
5378
  :job_executions_rollout_config,
5366
5379
  :abort_config,
5367
5380
  :timeout_config,
5368
- :job_executions_retry_config)
5381
+ :job_executions_retry_config,
5382
+ :maintenance_windows)
5369
5383
  SENSITIVE = []
5370
5384
  include Aws::Structure
5371
5385
  end
@@ -7816,6 +7830,11 @@ module Aws::IoT
7816
7830
  # job execution.
7817
7831
  # @return [Types::SchedulingConfig]
7818
7832
  #
7833
+ # @!attribute [rw] scheduled_job_rollouts
7834
+ # Displays the next seven maintenance window occurrences and their
7835
+ # start times.
7836
+ # @return [Array<Types::ScheduledJobRollout>]
7837
+ #
7819
7838
  class Job < Struct.new(
7820
7839
  :job_arn,
7821
7840
  :job_id,
@@ -7839,7 +7858,8 @@ module Aws::IoT
7839
7858
  :job_executions_retry_config,
7840
7859
  :document_parameters,
7841
7860
  :is_concurrent,
7842
- :scheduling_config)
7861
+ :scheduling_config,
7862
+ :scheduled_job_rollouts)
7843
7863
  SENSITIVE = []
7844
7864
  include Aws::Structure
7845
7865
  end
@@ -10917,6 +10937,26 @@ module Aws::IoT
10917
10937
  include Aws::Structure
10918
10938
  end
10919
10939
 
10940
+ # An optional configuration within the `SchedulingConfig` to setup a
10941
+ # recurring maintenance window with a predetermined start time and
10942
+ # duration for the rollout of a job document to all devices in a target
10943
+ # group for a job.
10944
+ #
10945
+ # @!attribute [rw] start_time
10946
+ # Displays the start time of the next maintenance window.
10947
+ # @return [String]
10948
+ #
10949
+ # @!attribute [rw] duration_in_minutes
10950
+ # Displays the duration of the next maintenance window.
10951
+ # @return [Integer]
10952
+ #
10953
+ class MaintenanceWindow < Struct.new(
10954
+ :start_time,
10955
+ :duration_in_minutes)
10956
+ SENSITIVE = []
10957
+ include Aws::Structure
10958
+ end
10959
+
10920
10960
  # The policy documentation is not valid.
10921
10961
  #
10922
10962
  # @!attribute [rw] message
@@ -12556,6 +12596,20 @@ module Aws::IoT
12556
12596
  include Aws::Structure
12557
12597
  end
12558
12598
 
12599
+ # Displays the next seven maintenance window occurrences and their start
12600
+ # times.
12601
+ #
12602
+ # @!attribute [rw] start_time
12603
+ # Displays the start times of the next seven maintenance window
12604
+ # occurrences.
12605
+ # @return [String]
12606
+ #
12607
+ class ScheduledJobRollout < Struct.new(
12608
+ :start_time)
12609
+ SENSITIVE = []
12610
+ include Aws::Structure
12611
+ end
12612
+
12559
12613
  # Specifies the date and time that a job will begin the rollout of the
12560
12614
  # job document to all devices in the target group. Additionally, you can
12561
12615
  # specify the end behavior for each job execution when it reaches the
@@ -12565,7 +12619,8 @@ module Aws::IoT
12565
12619
  # The time a job will begin rollout of the job document to all devices
12566
12620
  # in the target group for a job. The `startTime` can be scheduled up
12567
12621
  # to a year in advance and must be scheduled a minimum of thirty
12568
- # minutes from the current time.
12622
+ # minutes from the current time. The date and time format for the
12623
+ # `startTime` is YYYY-MM-DD for the date and HH:MM for the time.
12569
12624
  # @return [String]
12570
12625
  #
12571
12626
  # @!attribute [rw] end_time
@@ -12574,7 +12629,9 @@ module Aws::IoT
12574
12629
  # later than two years from the current time and be scheduled a
12575
12630
  # minimum of thirty minutes from the current time. The minimum
12576
12631
  # duration between `startTime` and `endTime` is thirty minutes. The
12577
- # maximum duration between `startTime` and `endTime` is two years.
12632
+ # maximum duration between `startTime` and `endTime` is two years. The
12633
+ # date and time format for the `endTime` is YYYY-MM-DD for the date
12634
+ # and HH:MM for the time.
12578
12635
  # @return [String]
12579
12636
  #
12580
12637
  # @!attribute [rw] end_behavior
@@ -12583,10 +12640,18 @@ module Aws::IoT
12583
12640
  # creating the job, then `endBehavior` does not apply.
12584
12641
  # @return [String]
12585
12642
  #
12643
+ # @!attribute [rw] maintenance_windows
12644
+ # An optional configuration within the `SchedulingConfig` to setup a
12645
+ # recurring maintenance window with a predetermined start time and
12646
+ # duration for the rollout of a job document to all devices in a
12647
+ # target group for a job.
12648
+ # @return [Array<Types::MaintenanceWindow>]
12649
+ #
12586
12650
  class SchedulingConfig < Struct.new(
12587
12651
  :start_time,
12588
12652
  :end_time,
12589
- :end_behavior)
12653
+ :end_behavior,
12654
+ :maintenance_windows)
12590
12655
  SENSITIVE = []
12591
12656
  include Aws::Structure
12592
12657
  end
data/lib/aws-sdk-iot.rb CHANGED
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-iot/customizations'
52
52
  # @!group service
53
53
  module Aws::IoT
54
54
 
55
- GEM_VERSION = '1.100.0'
55
+ GEM_VERSION = '1.101.0'
56
56
 
57
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-iot
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.100.0
4
+ version: 1.101.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: 2023-01-31 00:00:00.000000000 Z
11
+ date: 2023-03-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core