aws-sdk-iotjobsdataplane 1.61.0 → 1.63.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-iotjobsdataplane/client.rb +116 -9
- data/lib/aws-sdk-iotjobsdataplane/client_api.rb +71 -0
- data/lib/aws-sdk-iotjobsdataplane/endpoint_parameters.rb +9 -6
- data/lib/aws-sdk-iotjobsdataplane/endpoint_provider.rb +1 -1
- data/lib/aws-sdk-iotjobsdataplane/endpoints.rb +2 -42
- data/lib/aws-sdk-iotjobsdataplane/errors.rb +69 -0
- data/lib/aws-sdk-iotjobsdataplane/plugins/endpoints.rb +1 -14
- data/lib/aws-sdk-iotjobsdataplane/types.rb +197 -26
- data/lib/aws-sdk-iotjobsdataplane.rb +1 -1
- data/sig/client.rbs +22 -0
- data/sig/errors.rbs +13 -0
- data/sig/types.rbs +46 -0
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 216651e6bc3484b20ed9d18328087219e9b914fc6912f4c26368b69fc651d379
|
4
|
+
data.tar.gz: 473f9b82954b885739ebe76b6dd03eb4b459a537f10b1c0221f63e8d560b914e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c26233eb61ce5745a5c2dab455dbd447aa584afe34f7953cc16983ddcee04885b821de5121f9c6349920a55f9f520f6691e40d9cfd6b813f499125b61f62a155
|
7
|
+
data.tar.gz: fea38238e35a1545637c2bf1a7a89ab44ded8ac614e407025dbf1774ce0f2ec56f04868bbbcfc3b23888f3de7782ed1fa5c0bc68e03b1ab3a478e59a2840fb7c
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,16 @@
|
|
1
1
|
Unreleased Changes
|
2
2
|
------------------
|
3
3
|
|
4
|
+
1.63.0 (2024-11-21)
|
5
|
+
------------------
|
6
|
+
|
7
|
+
* Feature - General Availability (GA) release of AWS IoT Device Management - Commands, to trigger light-weight remote actions on targeted devices
|
8
|
+
|
9
|
+
1.62.0 (2024-10-18)
|
10
|
+
------------------
|
11
|
+
|
12
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
13
|
+
|
4
14
|
1.61.0 (2024-09-24)
|
5
15
|
------------------
|
6
16
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.63.0
|
@@ -449,6 +449,12 @@ module Aws::IoTJobsDataPlane
|
|
449
449
|
|
450
450
|
# Gets details of a job execution.
|
451
451
|
#
|
452
|
+
# Requires permission to access the [DescribeJobExecution][1] action.
|
453
|
+
#
|
454
|
+
#
|
455
|
+
#
|
456
|
+
# [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
|
457
|
+
#
|
452
458
|
# @option params [required, String] :job_id
|
453
459
|
# The unique identifier assigned to this job when it was created.
|
454
460
|
#
|
@@ -457,8 +463,8 @@ module Aws::IoTJobsDataPlane
|
|
457
463
|
# on.
|
458
464
|
#
|
459
465
|
# @option params [Boolean] :include_job_document
|
460
|
-
# Optional.
|
461
|
-
# The default is
|
466
|
+
# Optional. Unless set to false, the response contains the job document.
|
467
|
+
# The default is true.
|
462
468
|
#
|
463
469
|
# @option params [Integer] :execution_number
|
464
470
|
# Optional. A number that identifies a particular job execution on a
|
@@ -503,6 +509,12 @@ module Aws::IoTJobsDataPlane
|
|
503
509
|
# Gets the list of all jobs for a thing that are not in a terminal
|
504
510
|
# status.
|
505
511
|
#
|
512
|
+
# Requires permission to access the [GetPendingJobExecutions][1] action.
|
513
|
+
#
|
514
|
+
#
|
515
|
+
#
|
516
|
+
# [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
|
517
|
+
#
|
506
518
|
# @option params [required, String] :thing_name
|
507
519
|
# The name of the thing that is executing the job.
|
508
520
|
#
|
@@ -541,9 +553,85 @@ module Aws::IoTJobsDataPlane
|
|
541
553
|
req.send_request(options)
|
542
554
|
end
|
543
555
|
|
556
|
+
# Using the command created with the `CreateCommand` API, start a
|
557
|
+
# command execution on a specific device.
|
558
|
+
#
|
559
|
+
# @option params [required, String] :target_arn
|
560
|
+
# The Amazon Resource Number (ARN) of the device where the command
|
561
|
+
# execution is occurring.
|
562
|
+
#
|
563
|
+
# @option params [required, String] :command_arn
|
564
|
+
# The Amazon Resource Number (ARN) of the command. For example,
|
565
|
+
# `arn:aws:iot:<region>:<accountid>:command/<commandName>`
|
566
|
+
#
|
567
|
+
# @option params [Hash<String,Types::CommandParameterValue>] :parameters
|
568
|
+
# A list of parameters that are required by the `StartCommandExecution`
|
569
|
+
# API when performing the command on a device.
|
570
|
+
#
|
571
|
+
# @option params [Integer] :execution_timeout_seconds
|
572
|
+
# Specifies the amount of time in second the device has to finish the
|
573
|
+
# command execution. A timer is started as soon as the command execution
|
574
|
+
# is created. If the command execution status is not set to another
|
575
|
+
# terminal state before the timer expires, it will automatically update
|
576
|
+
# to `TIMED_OUT`.
|
577
|
+
#
|
578
|
+
# @option params [String] :client_token
|
579
|
+
# The client token is used to implement idempotency. It ensures that the
|
580
|
+
# request completes no more than one time. If you retry a request with
|
581
|
+
# the same token and the same parameters, the request will complete
|
582
|
+
# successfully. However, if you retry the request using the same token
|
583
|
+
# but different parameters, an HTTP 409 conflict occurs. If you omit
|
584
|
+
# this value, Amazon Web Services SDKs will automatically generate a
|
585
|
+
# unique client request.
|
586
|
+
#
|
587
|
+
# **A suitable default value is auto-generated.** You should normally
|
588
|
+
# not need to pass this option.**
|
589
|
+
#
|
590
|
+
# @return [Types::StartCommandExecutionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
591
|
+
#
|
592
|
+
# * {Types::StartCommandExecutionResponse#execution_id #execution_id} => String
|
593
|
+
#
|
594
|
+
# @example Request syntax with placeholder values
|
595
|
+
#
|
596
|
+
# resp = client.start_command_execution({
|
597
|
+
# target_arn: "TargetArn", # required
|
598
|
+
# command_arn: "CommandArn", # required
|
599
|
+
# parameters: {
|
600
|
+
# "CommandParameterName" => {
|
601
|
+
# s: "StringParameterValue",
|
602
|
+
# b: false,
|
603
|
+
# i: 1,
|
604
|
+
# l: 1,
|
605
|
+
# d: 1.0,
|
606
|
+
# bin: "data",
|
607
|
+
# ul: "UnsignedLongParameterValue",
|
608
|
+
# },
|
609
|
+
# },
|
610
|
+
# execution_timeout_seconds: 1,
|
611
|
+
# client_token: "ClientRequestTokenV2",
|
612
|
+
# })
|
613
|
+
#
|
614
|
+
# @example Response structure
|
615
|
+
#
|
616
|
+
# resp.execution_id #=> String
|
617
|
+
#
|
618
|
+
# @overload start_command_execution(params = {})
|
619
|
+
# @param [Hash] params ({})
|
620
|
+
def start_command_execution(params = {}, options = {})
|
621
|
+
req = build_request(:start_command_execution, params)
|
622
|
+
req.send_request(options)
|
623
|
+
end
|
624
|
+
|
544
625
|
# Gets and starts the next pending (status IN\_PROGRESS or QUEUED) job
|
545
626
|
# execution for a thing.
|
546
627
|
#
|
628
|
+
# Requires permission to access the [StartNextPendingJobExecution][1]
|
629
|
+
# action.
|
630
|
+
#
|
631
|
+
#
|
632
|
+
#
|
633
|
+
# [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
|
634
|
+
#
|
547
635
|
# @option params [required, String] :thing_name
|
548
636
|
# The name of the thing associated with the device.
|
549
637
|
#
|
@@ -551,17 +639,23 @@ module Aws::IoTJobsDataPlane
|
|
551
639
|
# A collection of name/value pairs that describe the status of the job
|
552
640
|
# execution. If not specified, the statusDetails are unchanged.
|
553
641
|
#
|
642
|
+
# The maximum length of the value in the name/value pair is 1,024
|
643
|
+
# characters.
|
644
|
+
#
|
554
645
|
# @option params [Integer] :step_timeout_in_minutes
|
555
646
|
# Specifies the amount of time this device has to finish execution of
|
556
647
|
# this job. If the job execution status is not set to a terminal state
|
557
648
|
# before this timer expires, or before the timer is reset (by calling
|
558
|
-
# `UpdateJobExecution`, setting the status to `IN_PROGRESS
|
649
|
+
# `UpdateJobExecution`, setting the status to `IN_PROGRESS`, and
|
559
650
|
# specifying a new timeout value in field `stepTimeoutInMinutes`) the
|
560
651
|
# job execution status will be automatically set to `TIMED_OUT`. Note
|
561
|
-
# that setting
|
562
|
-
#
|
652
|
+
# that setting the step timeout has no effect on the in progress timeout
|
653
|
+
# that may have been specified when the job was created (`CreateJob`
|
563
654
|
# using field `timeoutConfig`).
|
564
655
|
#
|
656
|
+
# Valid values for this parameter range from 1 to 10080 (1 minute to 7
|
657
|
+
# days).
|
658
|
+
#
|
565
659
|
# @return [Types::StartNextPendingJobExecutionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
566
660
|
#
|
567
661
|
# * {Types::StartNextPendingJobExecutionResponse#execution #execution} => Types::JobExecution
|
@@ -600,6 +694,12 @@ module Aws::IoTJobsDataPlane
|
|
600
694
|
|
601
695
|
# Updates the status of a job execution.
|
602
696
|
#
|
697
|
+
# Requires permission to access the [UpdateJobExecution][1] action.
|
698
|
+
#
|
699
|
+
#
|
700
|
+
#
|
701
|
+
# [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotjobsdataplane.html
|
702
|
+
#
|
603
703
|
# @option params [required, String] :job_id
|
604
704
|
# The unique identifier assigned to this job when it was created.
|
605
705
|
#
|
@@ -614,17 +714,24 @@ module Aws::IoTJobsDataPlane
|
|
614
714
|
# Optional. A collection of name/value pairs that describe the status of
|
615
715
|
# the job execution. If not specified, the statusDetails are unchanged.
|
616
716
|
#
|
717
|
+
# The maximum length of the value in the name/value pair is 1,024
|
718
|
+
# characters.
|
719
|
+
#
|
617
720
|
# @option params [Integer] :step_timeout_in_minutes
|
618
721
|
# Specifies the amount of time this device has to finish execution of
|
619
722
|
# this job. If the job execution status is not set to a terminal state
|
620
723
|
# before this timer expires, or before the timer is reset (by again
|
621
|
-
# calling `UpdateJobExecution`, setting the status to `IN_PROGRESS
|
724
|
+
# calling `UpdateJobExecution`, setting the status to `IN_PROGRESS`, and
|
622
725
|
# specifying a new timeout value in this field) the job execution status
|
623
726
|
# will be automatically set to `TIMED_OUT`. Note that setting or
|
624
|
-
# resetting
|
625
|
-
#
|
727
|
+
# resetting the step timeout has no effect on the in progress timeout
|
728
|
+
# that may have been specified when the job was created (`CreateJob`
|
626
729
|
# using field `timeoutConfig`).
|
627
730
|
#
|
731
|
+
# Valid values for this parameter range from 1 to 10080 (1 minute to 7
|
732
|
+
# days). A value of -1 is also valid and will cancel the current step
|
733
|
+
# timer (created by an earlier use of `UpdateJobExecutionRequest`).
|
734
|
+
#
|
628
735
|
# @option params [Integer] :expected_version
|
629
736
|
# Optional. The expected current version of the job execution. Each time
|
630
737
|
# you update the job execution, its version is incremented. If the
|
@@ -700,7 +807,7 @@ module Aws::IoTJobsDataPlane
|
|
700
807
|
tracer: tracer
|
701
808
|
)
|
702
809
|
context[:gem_name] = 'aws-sdk-iotjobsdataplane'
|
703
|
-
context[:gem_version] = '1.
|
810
|
+
context[:gem_version] = '1.63.0'
|
704
811
|
Seahorse::Client::Request.new(handlers, context)
|
705
812
|
end
|
706
813
|
|
@@ -16,19 +16,32 @@ module Aws::IoTJobsDataPlane
|
|
16
16
|
|
17
17
|
ApproximateSecondsBeforeTimedOut = Shapes::IntegerShape.new(name: 'ApproximateSecondsBeforeTimedOut')
|
18
18
|
BinaryBlob = Shapes::BlobShape.new(name: 'BinaryBlob')
|
19
|
+
BinaryParameterValue = Shapes::BlobShape.new(name: 'BinaryParameterValue')
|
20
|
+
BooleanParameterValue = Shapes::BooleanShape.new(name: 'BooleanParameterValue')
|
19
21
|
CertificateValidationException = Shapes::StructureShape.new(name: 'CertificateValidationException')
|
22
|
+
ClientRequestTokenV2 = Shapes::StringShape.new(name: 'ClientRequestTokenV2')
|
23
|
+
CommandArn = Shapes::StringShape.new(name: 'CommandArn')
|
24
|
+
CommandExecutionId = Shapes::StringShape.new(name: 'CommandExecutionId')
|
25
|
+
CommandExecutionParameterMap = Shapes::MapShape.new(name: 'CommandExecutionParameterMap')
|
26
|
+
CommandExecutionTimeoutInSeconds = Shapes::IntegerShape.new(name: 'CommandExecutionTimeoutInSeconds')
|
27
|
+
CommandParameterName = Shapes::StringShape.new(name: 'CommandParameterName')
|
28
|
+
CommandParameterValue = Shapes::StructureShape.new(name: 'CommandParameterValue')
|
29
|
+
ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
|
20
30
|
DescribeJobExecutionJobId = Shapes::StringShape.new(name: 'DescribeJobExecutionJobId')
|
21
31
|
DescribeJobExecutionRequest = Shapes::StructureShape.new(name: 'DescribeJobExecutionRequest')
|
22
32
|
DescribeJobExecutionResponse = Shapes::StructureShape.new(name: 'DescribeJobExecutionResponse')
|
23
33
|
DetailsKey = Shapes::StringShape.new(name: 'DetailsKey')
|
24
34
|
DetailsMap = Shapes::MapShape.new(name: 'DetailsMap')
|
25
35
|
DetailsValue = Shapes::StringShape.new(name: 'DetailsValue')
|
36
|
+
DoubleParameterValue = Shapes::FloatShape.new(name: 'DoubleParameterValue')
|
26
37
|
ExecutionNumber = Shapes::IntegerShape.new(name: 'ExecutionNumber')
|
27
38
|
ExpectedVersion = Shapes::IntegerShape.new(name: 'ExpectedVersion')
|
28
39
|
GetPendingJobExecutionsRequest = Shapes::StructureShape.new(name: 'GetPendingJobExecutionsRequest')
|
29
40
|
GetPendingJobExecutionsResponse = Shapes::StructureShape.new(name: 'GetPendingJobExecutionsResponse')
|
30
41
|
IncludeExecutionState = Shapes::BooleanShape.new(name: 'IncludeExecutionState')
|
31
42
|
IncludeJobDocument = Shapes::BooleanShape.new(name: 'IncludeJobDocument')
|
43
|
+
IntegerParameterValue = Shapes::IntegerShape.new(name: 'IntegerParameterValue')
|
44
|
+
InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
|
32
45
|
InvalidRequestException = Shapes::StructureShape.new(name: 'InvalidRequestException')
|
33
46
|
InvalidStateTransitionException = Shapes::StructureShape.new(name: 'InvalidStateTransitionException')
|
34
47
|
JobDocument = Shapes::StringShape.new(name: 'JobDocument')
|
@@ -39,24 +52,49 @@ module Aws::IoTJobsDataPlane
|
|
39
52
|
JobExecutionSummaryList = Shapes::ListShape.new(name: 'JobExecutionSummaryList')
|
40
53
|
JobId = Shapes::StringShape.new(name: 'JobId')
|
41
54
|
LastUpdatedAt = Shapes::IntegerShape.new(name: 'LastUpdatedAt')
|
55
|
+
LongParameterValue = Shapes::IntegerShape.new(name: 'LongParameterValue')
|
42
56
|
QueuedAt = Shapes::IntegerShape.new(name: 'QueuedAt')
|
43
57
|
ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
|
58
|
+
ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
|
44
59
|
ServiceUnavailableException = Shapes::StructureShape.new(name: 'ServiceUnavailableException')
|
60
|
+
StartCommandExecutionRequest = Shapes::StructureShape.new(name: 'StartCommandExecutionRequest')
|
61
|
+
StartCommandExecutionResponse = Shapes::StructureShape.new(name: 'StartCommandExecutionResponse')
|
45
62
|
StartNextPendingJobExecutionRequest = Shapes::StructureShape.new(name: 'StartNextPendingJobExecutionRequest')
|
46
63
|
StartNextPendingJobExecutionResponse = Shapes::StructureShape.new(name: 'StartNextPendingJobExecutionResponse')
|
47
64
|
StartedAt = Shapes::IntegerShape.new(name: 'StartedAt')
|
48
65
|
StepTimeoutInMinutes = Shapes::IntegerShape.new(name: 'StepTimeoutInMinutes')
|
66
|
+
StringParameterValue = Shapes::StringShape.new(name: 'StringParameterValue')
|
67
|
+
TargetArn = Shapes::StringShape.new(name: 'TargetArn')
|
49
68
|
TerminalStateException = Shapes::StructureShape.new(name: 'TerminalStateException')
|
50
69
|
ThingName = Shapes::StringShape.new(name: 'ThingName')
|
51
70
|
ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
|
71
|
+
UnsignedLongParameterValue = Shapes::StringShape.new(name: 'UnsignedLongParameterValue')
|
52
72
|
UpdateJobExecutionRequest = Shapes::StructureShape.new(name: 'UpdateJobExecutionRequest')
|
53
73
|
UpdateJobExecutionResponse = Shapes::StructureShape.new(name: 'UpdateJobExecutionResponse')
|
74
|
+
ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
|
54
75
|
VersionNumber = Shapes::IntegerShape.new(name: 'VersionNumber')
|
55
76
|
errorMessage = Shapes::StringShape.new(name: 'errorMessage')
|
77
|
+
resourceId = Shapes::StringShape.new(name: 'resourceId')
|
56
78
|
|
57
79
|
CertificateValidationException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
|
58
80
|
CertificateValidationException.struct_class = Types::CertificateValidationException
|
59
81
|
|
82
|
+
CommandExecutionParameterMap.key = Shapes::ShapeRef.new(shape: CommandParameterName)
|
83
|
+
CommandExecutionParameterMap.value = Shapes::ShapeRef.new(shape: CommandParameterValue)
|
84
|
+
|
85
|
+
CommandParameterValue.add_member(:s, Shapes::ShapeRef.new(shape: StringParameterValue, location_name: "S"))
|
86
|
+
CommandParameterValue.add_member(:b, Shapes::ShapeRef.new(shape: BooleanParameterValue, location_name: "B"))
|
87
|
+
CommandParameterValue.add_member(:i, Shapes::ShapeRef.new(shape: IntegerParameterValue, location_name: "I"))
|
88
|
+
CommandParameterValue.add_member(:l, Shapes::ShapeRef.new(shape: LongParameterValue, location_name: "L"))
|
89
|
+
CommandParameterValue.add_member(:d, Shapes::ShapeRef.new(shape: DoubleParameterValue, location_name: "D"))
|
90
|
+
CommandParameterValue.add_member(:bin, Shapes::ShapeRef.new(shape: BinaryParameterValue, location_name: "BIN"))
|
91
|
+
CommandParameterValue.add_member(:ul, Shapes::ShapeRef.new(shape: UnsignedLongParameterValue, location_name: "UL"))
|
92
|
+
CommandParameterValue.struct_class = Types::CommandParameterValue
|
93
|
+
|
94
|
+
ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
|
95
|
+
ConflictException.add_member(:resource_id, Shapes::ShapeRef.new(shape: resourceId, location_name: "resourceId"))
|
96
|
+
ConflictException.struct_class = Types::ConflictException
|
97
|
+
|
60
98
|
DescribeJobExecutionRequest.add_member(:job_id, Shapes::ShapeRef.new(shape: DescribeJobExecutionJobId, required: true, location: "uri", location_name: "jobId"))
|
61
99
|
DescribeJobExecutionRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: ThingName, required: true, location: "uri", location_name: "thingName"))
|
62
100
|
DescribeJobExecutionRequest.add_member(:include_job_document, Shapes::ShapeRef.new(shape: IncludeJobDocument, location: "querystring", location_name: "includeJobDocument"))
|
@@ -76,6 +114,9 @@ module Aws::IoTJobsDataPlane
|
|
76
114
|
GetPendingJobExecutionsResponse.add_member(:queued_jobs, Shapes::ShapeRef.new(shape: JobExecutionSummaryList, location_name: "queuedJobs"))
|
77
115
|
GetPendingJobExecutionsResponse.struct_class = Types::GetPendingJobExecutionsResponse
|
78
116
|
|
117
|
+
InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
|
118
|
+
InternalServerException.struct_class = Types::InternalServerException
|
119
|
+
|
79
120
|
InvalidRequestException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
|
80
121
|
InvalidRequestException.struct_class = Types::InvalidRequestException
|
81
122
|
|
@@ -113,9 +154,22 @@ module Aws::IoTJobsDataPlane
|
|
113
154
|
ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
|
114
155
|
ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
|
115
156
|
|
157
|
+
ServiceQuotaExceededException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
|
158
|
+
ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
|
159
|
+
|
116
160
|
ServiceUnavailableException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
|
117
161
|
ServiceUnavailableException.struct_class = Types::ServiceUnavailableException
|
118
162
|
|
163
|
+
StartCommandExecutionRequest.add_member(:target_arn, Shapes::ShapeRef.new(shape: TargetArn, required: true, location_name: "targetArn"))
|
164
|
+
StartCommandExecutionRequest.add_member(:command_arn, Shapes::ShapeRef.new(shape: CommandArn, required: true, location_name: "commandArn"))
|
165
|
+
StartCommandExecutionRequest.add_member(:parameters, Shapes::ShapeRef.new(shape: CommandExecutionParameterMap, location_name: "parameters"))
|
166
|
+
StartCommandExecutionRequest.add_member(:execution_timeout_seconds, Shapes::ShapeRef.new(shape: CommandExecutionTimeoutInSeconds, location_name: "executionTimeoutSeconds"))
|
167
|
+
StartCommandExecutionRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientRequestTokenV2, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
|
168
|
+
StartCommandExecutionRequest.struct_class = Types::StartCommandExecutionRequest
|
169
|
+
|
170
|
+
StartCommandExecutionResponse.add_member(:execution_id, Shapes::ShapeRef.new(shape: CommandExecutionId, location_name: "executionId"))
|
171
|
+
StartCommandExecutionResponse.struct_class = Types::StartCommandExecutionResponse
|
172
|
+
|
119
173
|
StartNextPendingJobExecutionRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: ThingName, required: true, location: "uri", location_name: "thingName"))
|
120
174
|
StartNextPendingJobExecutionRequest.add_member(:status_details, Shapes::ShapeRef.new(shape: DetailsMap, location_name: "statusDetails"))
|
121
175
|
StartNextPendingJobExecutionRequest.add_member(:step_timeout_in_minutes, Shapes::ShapeRef.new(shape: StepTimeoutInMinutes, location_name: "stepTimeoutInMinutes"))
|
@@ -146,6 +200,9 @@ module Aws::IoTJobsDataPlane
|
|
146
200
|
UpdateJobExecutionResponse.add_member(:job_document, Shapes::ShapeRef.new(shape: JobDocument, location_name: "jobDocument"))
|
147
201
|
UpdateJobExecutionResponse.struct_class = Types::UpdateJobExecutionResponse
|
148
202
|
|
203
|
+
ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
|
204
|
+
ValidationException.struct_class = Types::ValidationException
|
205
|
+
|
149
206
|
|
150
207
|
# @api private
|
151
208
|
API = Seahorse::Model::Api.new.tap do |api|
|
@@ -192,6 +249,20 @@ module Aws::IoTJobsDataPlane
|
|
192
249
|
o.errors << Shapes::ShapeRef.new(shape: CertificateValidationException)
|
193
250
|
end)
|
194
251
|
|
252
|
+
api.add_operation(:start_command_execution, Seahorse::Model::Operation.new.tap do |o|
|
253
|
+
o.name = "StartCommandExecution"
|
254
|
+
o.http_method = "POST"
|
255
|
+
o.http_request_uri = "/command-executions"
|
256
|
+
o.input = Shapes::ShapeRef.new(shape: StartCommandExecutionRequest)
|
257
|
+
o.output = Shapes::ShapeRef.new(shape: StartCommandExecutionResponse)
|
258
|
+
o.errors << Shapes::ShapeRef.new(shape: ValidationException)
|
259
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
260
|
+
o.errors << Shapes::ShapeRef.new(shape: ConflictException)
|
261
|
+
o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
|
262
|
+
o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
|
263
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
|
264
|
+
end)
|
265
|
+
|
195
266
|
api.add_operation(:start_next_pending_job_execution, Seahorse::Model::Operation.new.tap do |o|
|
196
267
|
o.name = "StartNextPendingJobExecution"
|
197
268
|
o.http_method = "PUT"
|
@@ -52,15 +52,18 @@ module Aws::IoTJobsDataPlane
|
|
52
52
|
self[:region] = options[:region]
|
53
53
|
self[:use_dual_stack] = options[:use_dual_stack]
|
54
54
|
self[:use_dual_stack] = false if self[:use_dual_stack].nil?
|
55
|
-
if self[:use_dual_stack].nil?
|
56
|
-
raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
|
57
|
-
end
|
58
55
|
self[:use_fips] = options[:use_fips]
|
59
56
|
self[:use_fips] = false if self[:use_fips].nil?
|
60
|
-
if self[:use_fips].nil?
|
61
|
-
raise ArgumentError, "Missing required EndpointParameter: :use_fips"
|
62
|
-
end
|
63
57
|
self[:endpoint] = options[:endpoint]
|
64
58
|
end
|
59
|
+
|
60
|
+
def self.create(config, options={})
|
61
|
+
new({
|
62
|
+
region: config.region,
|
63
|
+
use_dual_stack: config.use_dualstack_endpoint,
|
64
|
+
use_fips: config.use_fips_endpoint,
|
65
|
+
endpoint: (config.endpoint.to_s unless config.regional_endpoint),
|
66
|
+
}.merge(options))
|
67
|
+
end
|
65
68
|
end
|
66
69
|
end
|
@@ -32,7 +32,7 @@ module Aws::IoTJobsDataPlane
|
|
32
32
|
raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
|
33
33
|
end
|
34
34
|
if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
|
35
|
-
if Aws::Endpoints::Matchers.boolean_equals?(
|
35
|
+
if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
|
36
36
|
return Aws::Endpoints::Endpoint.new(url: "https://data.jobs.iot-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
|
37
37
|
end
|
38
38
|
raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
|
@@ -12,49 +12,9 @@ module Aws::IoTJobsDataPlane
|
|
12
12
|
# @api private
|
13
13
|
module Endpoints
|
14
14
|
|
15
|
-
class DescribeJobExecution
|
16
|
-
def self.build(context)
|
17
|
-
Aws::IoTJobsDataPlane::EndpointParameters.new(
|
18
|
-
region: context.config.region,
|
19
|
-
use_dual_stack: context.config.use_dualstack_endpoint,
|
20
|
-
use_fips: context.config.use_fips_endpoint,
|
21
|
-
endpoint: context.config.regional_endpoint ? nil : context.config.endpoint.to_s,
|
22
|
-
)
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
class GetPendingJobExecutions
|
27
|
-
def self.build(context)
|
28
|
-
Aws::IoTJobsDataPlane::EndpointParameters.new(
|
29
|
-
region: context.config.region,
|
30
|
-
use_dual_stack: context.config.use_dualstack_endpoint,
|
31
|
-
use_fips: context.config.use_fips_endpoint,
|
32
|
-
endpoint: context.config.regional_endpoint ? nil : context.config.endpoint.to_s,
|
33
|
-
)
|
34
|
-
end
|
35
|
-
end
|
36
15
|
|
37
|
-
|
38
|
-
|
39
|
-
Aws::IoTJobsDataPlane::EndpointParameters.new(
|
40
|
-
region: context.config.region,
|
41
|
-
use_dual_stack: context.config.use_dualstack_endpoint,
|
42
|
-
use_fips: context.config.use_fips_endpoint,
|
43
|
-
endpoint: context.config.regional_endpoint ? nil : context.config.endpoint.to_s,
|
44
|
-
)
|
45
|
-
end
|
16
|
+
def self.parameters_for_operation(context)
|
17
|
+
Aws::IoTJobsDataPlane::EndpointParameters.create(context.config)
|
46
18
|
end
|
47
|
-
|
48
|
-
class UpdateJobExecution
|
49
|
-
def self.build(context)
|
50
|
-
Aws::IoTJobsDataPlane::EndpointParameters.new(
|
51
|
-
region: context.config.region,
|
52
|
-
use_dual_stack: context.config.use_dualstack_endpoint,
|
53
|
-
use_fips: context.config.use_fips_endpoint,
|
54
|
-
endpoint: context.config.regional_endpoint ? nil : context.config.endpoint.to_s,
|
55
|
-
)
|
56
|
-
end
|
57
|
-
end
|
58
|
-
|
59
19
|
end
|
60
20
|
end
|
@@ -28,12 +28,16 @@ module Aws::IoTJobsDataPlane
|
|
28
28
|
#
|
29
29
|
# ## Error Classes
|
30
30
|
# * {CertificateValidationException}
|
31
|
+
# * {ConflictException}
|
32
|
+
# * {InternalServerException}
|
31
33
|
# * {InvalidRequestException}
|
32
34
|
# * {InvalidStateTransitionException}
|
33
35
|
# * {ResourceNotFoundException}
|
36
|
+
# * {ServiceQuotaExceededException}
|
34
37
|
# * {ServiceUnavailableException}
|
35
38
|
# * {TerminalStateException}
|
36
39
|
# * {ThrottlingException}
|
40
|
+
# * {ValidationException}
|
37
41
|
#
|
38
42
|
# Additionally, error classes are dynamically generated for service errors based on the error code
|
39
43
|
# if they are not defined above.
|
@@ -56,6 +60,41 @@ module Aws::IoTJobsDataPlane
|
|
56
60
|
end
|
57
61
|
end
|
58
62
|
|
63
|
+
class ConflictException < ServiceError
|
64
|
+
|
65
|
+
# @param [Seahorse::Client::RequestContext] context
|
66
|
+
# @param [String] message
|
67
|
+
# @param [Aws::IoTJobsDataPlane::Types::ConflictException] data
|
68
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
69
|
+
super(context, message, data)
|
70
|
+
end
|
71
|
+
|
72
|
+
# @return [String]
|
73
|
+
def message
|
74
|
+
@message || @data[:message]
|
75
|
+
end
|
76
|
+
|
77
|
+
# @return [String]
|
78
|
+
def resource_id
|
79
|
+
@data[:resource_id]
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
class InternalServerException < ServiceError
|
84
|
+
|
85
|
+
# @param [Seahorse::Client::RequestContext] context
|
86
|
+
# @param [String] message
|
87
|
+
# @param [Aws::IoTJobsDataPlane::Types::InternalServerException] data
|
88
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
89
|
+
super(context, message, data)
|
90
|
+
end
|
91
|
+
|
92
|
+
# @return [String]
|
93
|
+
def message
|
94
|
+
@message || @data[:message]
|
95
|
+
end
|
96
|
+
end
|
97
|
+
|
59
98
|
class InvalidRequestException < ServiceError
|
60
99
|
|
61
100
|
# @param [Seahorse::Client::RequestContext] context
|
@@ -101,6 +140,21 @@ module Aws::IoTJobsDataPlane
|
|
101
140
|
end
|
102
141
|
end
|
103
142
|
|
143
|
+
class ServiceQuotaExceededException < ServiceError
|
144
|
+
|
145
|
+
# @param [Seahorse::Client::RequestContext] context
|
146
|
+
# @param [String] message
|
147
|
+
# @param [Aws::IoTJobsDataPlane::Types::ServiceQuotaExceededException] data
|
148
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
149
|
+
super(context, message, data)
|
150
|
+
end
|
151
|
+
|
152
|
+
# @return [String]
|
153
|
+
def message
|
154
|
+
@message || @data[:message]
|
155
|
+
end
|
156
|
+
end
|
157
|
+
|
104
158
|
class ServiceUnavailableException < ServiceError
|
105
159
|
|
106
160
|
# @param [Seahorse::Client::RequestContext] context
|
@@ -151,5 +205,20 @@ module Aws::IoTJobsDataPlane
|
|
151
205
|
end
|
152
206
|
end
|
153
207
|
|
208
|
+
class ValidationException < ServiceError
|
209
|
+
|
210
|
+
# @param [Seahorse::Client::RequestContext] context
|
211
|
+
# @param [String] message
|
212
|
+
# @param [Aws::IoTJobsDataPlane::Types::ValidationException] data
|
213
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
214
|
+
super(context, message, data)
|
215
|
+
end
|
216
|
+
|
217
|
+
# @return [String]
|
218
|
+
def message
|
219
|
+
@message || @data[:message]
|
220
|
+
end
|
221
|
+
end
|
222
|
+
|
154
223
|
end
|
155
224
|
end
|
@@ -27,7 +27,7 @@ The endpoint provider used to resolve endpoints. Any object that responds to
|
|
27
27
|
class Handler < Seahorse::Client::Handler
|
28
28
|
def call(context)
|
29
29
|
unless context[:discovered_endpoint]
|
30
|
-
params = parameters_for_operation(context)
|
30
|
+
params = Aws::IoTJobsDataPlane::Endpoints.parameters_for_operation(context)
|
31
31
|
endpoint = context.config.endpoint_provider.resolve_endpoint(params)
|
32
32
|
|
33
33
|
context.http_request.endpoint = endpoint.url
|
@@ -67,19 +67,6 @@ The endpoint provider used to resolve endpoints. Any object that responds to
|
|
67
67
|
context.http_request.headers[key] = value
|
68
68
|
end
|
69
69
|
end
|
70
|
-
|
71
|
-
def parameters_for_operation(context)
|
72
|
-
case context.operation_name
|
73
|
-
when :describe_job_execution
|
74
|
-
Aws::IoTJobsDataPlane::Endpoints::DescribeJobExecution.build(context)
|
75
|
-
when :get_pending_job_executions
|
76
|
-
Aws::IoTJobsDataPlane::Endpoints::GetPendingJobExecutions.build(context)
|
77
|
-
when :start_next_pending_job_execution
|
78
|
-
Aws::IoTJobsDataPlane::Endpoints::StartNextPendingJobExecution.build(context)
|
79
|
-
when :update_job_execution
|
80
|
-
Aws::IoTJobsDataPlane::Endpoints::UpdateJobExecution.build(context)
|
81
|
-
end
|
82
|
-
end
|
83
70
|
end
|
84
71
|
|
85
72
|
def add_handlers(handlers, _config)
|
@@ -22,6 +22,69 @@ module Aws::IoTJobsDataPlane
|
|
22
22
|
include Aws::Structure
|
23
23
|
end
|
24
24
|
|
25
|
+
# The list of values used to describe a specific command parameter.
|
26
|
+
#
|
27
|
+
# @!attribute [rw] s
|
28
|
+
# An attribute of type String. For example:
|
29
|
+
#
|
30
|
+
# `"S": "Hello"`
|
31
|
+
# @return [String]
|
32
|
+
#
|
33
|
+
# @!attribute [rw] b
|
34
|
+
# An attribute of type Boolean. For example:
|
35
|
+
#
|
36
|
+
# `"BOOL": true`
|
37
|
+
# @return [Boolean]
|
38
|
+
#
|
39
|
+
# @!attribute [rw] i
|
40
|
+
# An attribute of type Integer (Thirty-Two Bits).
|
41
|
+
# @return [Integer]
|
42
|
+
#
|
43
|
+
# @!attribute [rw] l
|
44
|
+
# An attribute of type Long.
|
45
|
+
# @return [Integer]
|
46
|
+
#
|
47
|
+
# @!attribute [rw] d
|
48
|
+
# An attribute of type Double (Sixty-Four Bits).
|
49
|
+
# @return [Float]
|
50
|
+
#
|
51
|
+
# @!attribute [rw] bin
|
52
|
+
# An attribute of type Binary.
|
53
|
+
# @return [String]
|
54
|
+
#
|
55
|
+
# @!attribute [rw] ul
|
56
|
+
# An attribute of type Unsigned Long.
|
57
|
+
# @return [String]
|
58
|
+
#
|
59
|
+
class CommandParameterValue < Struct.new(
|
60
|
+
:s,
|
61
|
+
:b,
|
62
|
+
:i,
|
63
|
+
:l,
|
64
|
+
:d,
|
65
|
+
:bin,
|
66
|
+
:ul)
|
67
|
+
SENSITIVE = []
|
68
|
+
include Aws::Structure
|
69
|
+
end
|
70
|
+
|
71
|
+
# A conflict has occurred when performing the API request.
|
72
|
+
#
|
73
|
+
# @!attribute [rw] message
|
74
|
+
# @return [String]
|
75
|
+
#
|
76
|
+
# @!attribute [rw] resource_id
|
77
|
+
# A conflict occurred while performing the API request on the resource
|
78
|
+
# ID.
|
79
|
+
# @return [String]
|
80
|
+
#
|
81
|
+
class ConflictException < Struct.new(
|
82
|
+
:message,
|
83
|
+
:resource_id)
|
84
|
+
SENSITIVE = []
|
85
|
+
include Aws::Structure
|
86
|
+
end
|
87
|
+
|
25
88
|
# @!attribute [rw] job_id
|
26
89
|
# The unique identifier assigned to this job when it was created.
|
27
90
|
# @return [String]
|
@@ -32,8 +95,8 @@ module Aws::IoTJobsDataPlane
|
|
32
95
|
# @return [String]
|
33
96
|
#
|
34
97
|
# @!attribute [rw] include_job_document
|
35
|
-
# Optional.
|
36
|
-
# The default is
|
98
|
+
# Optional. Unless set to false, the response contains the job
|
99
|
+
# document. The default is true.
|
37
100
|
# @return [Boolean]
|
38
101
|
#
|
39
102
|
# @!attribute [rw] execution_number
|
@@ -86,9 +149,18 @@ module Aws::IoTJobsDataPlane
|
|
86
149
|
include Aws::Structure
|
87
150
|
end
|
88
151
|
|
89
|
-
#
|
90
|
-
#
|
91
|
-
#
|
152
|
+
# An internal server error occurred when performing the API request.
|
153
|
+
#
|
154
|
+
# @!attribute [rw] message
|
155
|
+
# @return [String]
|
156
|
+
#
|
157
|
+
class InternalServerException < Struct.new(
|
158
|
+
:message)
|
159
|
+
SENSITIVE = []
|
160
|
+
include Aws::Structure
|
161
|
+
end
|
162
|
+
|
163
|
+
# The contents of the request were invalid.
|
92
164
|
#
|
93
165
|
# @!attribute [rw] message
|
94
166
|
# The message for the exception.
|
@@ -128,32 +200,37 @@ module Aws::IoTJobsDataPlane
|
|
128
200
|
# @!attribute [rw] status
|
129
201
|
# The status of the job execution. Can be one of: "QUEUED",
|
130
202
|
# "IN\_PROGRESS", "FAILED", "SUCCESS", "CANCELED",
|
131
|
-
# "REJECTED", or "REMOVED".
|
203
|
+
# "TIMED\_OUT", "REJECTED", or "REMOVED".
|
132
204
|
# @return [String]
|
133
205
|
#
|
134
206
|
# @!attribute [rw] status_details
|
135
207
|
# A collection of name/value pairs that describe the status of the job
|
136
208
|
# execution.
|
209
|
+
#
|
210
|
+
# The maximum length of the value in the name/value pair is 1,024
|
211
|
+
# characters.
|
137
212
|
# @return [Hash<String,String>]
|
138
213
|
#
|
139
214
|
# @!attribute [rw] queued_at
|
140
|
-
# The time, in
|
141
|
-
#
|
215
|
+
# The time, in seconds since the epoch, when the job execution was
|
216
|
+
# enqueued.
|
142
217
|
# @return [Integer]
|
143
218
|
#
|
144
219
|
# @!attribute [rw] started_at
|
145
|
-
# The time, in
|
146
|
-
#
|
220
|
+
# The time, in seconds since the epoch, when the job execution was
|
221
|
+
# started.
|
147
222
|
# @return [Integer]
|
148
223
|
#
|
149
224
|
# @!attribute [rw] last_updated_at
|
150
|
-
# The time, in
|
151
|
-
#
|
225
|
+
# The time, in seconds since the epoch, when the job execution was
|
226
|
+
# last updated.
|
152
227
|
# @return [Integer]
|
153
228
|
#
|
154
229
|
# @!attribute [rw] approximate_seconds_before_timed_out
|
155
230
|
# The estimated number of seconds that remain before the job execution
|
156
|
-
# status will be changed to `TIMED_OUT`.
|
231
|
+
# status will be changed to `TIMED_OUT`. The actual job execution
|
232
|
+
# timeout can occur up to 60 seconds later than the estimated
|
233
|
+
# duration.
|
157
234
|
# @return [Integer]
|
158
235
|
#
|
159
236
|
# @!attribute [rw] version_number
|
@@ -192,12 +269,15 @@ module Aws::IoTJobsDataPlane
|
|
192
269
|
# @!attribute [rw] status
|
193
270
|
# The status of the job execution. Can be one of: "QUEUED",
|
194
271
|
# "IN\_PROGRESS", "FAILED", "SUCCESS", "CANCELED",
|
195
|
-
# "REJECTED", or "REMOVED".
|
272
|
+
# "TIMED\_OUT", "REJECTED", or "REMOVED".
|
196
273
|
# @return [String]
|
197
274
|
#
|
198
275
|
# @!attribute [rw] status_details
|
199
276
|
# A collection of name/value pairs that describe the status of the job
|
200
277
|
# execution.
|
278
|
+
#
|
279
|
+
# The maximum length of the value in the name/value pair is 1,024
|
280
|
+
# characters.
|
201
281
|
# @return [Hash<String,String>]
|
202
282
|
#
|
203
283
|
# @!attribute [rw] version_number
|
@@ -220,23 +300,23 @@ module Aws::IoTJobsDataPlane
|
|
220
300
|
# @return [String]
|
221
301
|
#
|
222
302
|
# @!attribute [rw] queued_at
|
223
|
-
# The time, in
|
224
|
-
#
|
303
|
+
# The time, in seconds since the epoch, when the job execution was
|
304
|
+
# enqueued.
|
225
305
|
# @return [Integer]
|
226
306
|
#
|
227
307
|
# @!attribute [rw] started_at
|
228
|
-
# The time, in
|
308
|
+
# The time, in seconds since the epoch, when the job execution
|
229
309
|
# started.
|
230
310
|
# @return [Integer]
|
231
311
|
#
|
232
312
|
# @!attribute [rw] last_updated_at
|
233
|
-
# The time, in
|
234
|
-
#
|
313
|
+
# The time, in seconds since the epoch, when the job execution was
|
314
|
+
# last updated.
|
235
315
|
# @return [Integer]
|
236
316
|
#
|
237
317
|
# @!attribute [rw] version_number
|
238
318
|
# The version of the job execution. Job execution versions are
|
239
|
-
# incremented each time
|
319
|
+
# incremented each time IoT Jobs receives an update from a device.
|
240
320
|
# @return [Integer]
|
241
321
|
#
|
242
322
|
# @!attribute [rw] execution_number
|
@@ -267,6 +347,17 @@ module Aws::IoTJobsDataPlane
|
|
267
347
|
include Aws::Structure
|
268
348
|
end
|
269
349
|
|
350
|
+
# The service quota has been exceeded for this request.
|
351
|
+
#
|
352
|
+
# @!attribute [rw] message
|
353
|
+
# @return [String]
|
354
|
+
#
|
355
|
+
class ServiceQuotaExceededException < Struct.new(
|
356
|
+
:message)
|
357
|
+
SENSITIVE = []
|
358
|
+
include Aws::Structure
|
359
|
+
end
|
360
|
+
|
270
361
|
# The service is temporarily unavailable.
|
271
362
|
#
|
272
363
|
# @!attribute [rw] message
|
@@ -279,6 +370,62 @@ module Aws::IoTJobsDataPlane
|
|
279
370
|
include Aws::Structure
|
280
371
|
end
|
281
372
|
|
373
|
+
# @!attribute [rw] target_arn
|
374
|
+
# The Amazon Resource Number (ARN) of the device where the command
|
375
|
+
# execution is occurring.
|
376
|
+
# @return [String]
|
377
|
+
#
|
378
|
+
# @!attribute [rw] command_arn
|
379
|
+
# The Amazon Resource Number (ARN) of the command. For example,
|
380
|
+
# `arn:aws:iot:<region>:<accountid>:command/<commandName>`
|
381
|
+
# @return [String]
|
382
|
+
#
|
383
|
+
# @!attribute [rw] parameters
|
384
|
+
# A list of parameters that are required by the
|
385
|
+
# `StartCommandExecution` API when performing the command on a device.
|
386
|
+
# @return [Hash<String,Types::CommandParameterValue>]
|
387
|
+
#
|
388
|
+
# @!attribute [rw] execution_timeout_seconds
|
389
|
+
# Specifies the amount of time in second the device has to finish the
|
390
|
+
# command execution. A timer is started as soon as the command
|
391
|
+
# execution is created. If the command execution status is not set to
|
392
|
+
# another terminal state before the timer expires, it will
|
393
|
+
# automatically update to `TIMED_OUT`.
|
394
|
+
# @return [Integer]
|
395
|
+
#
|
396
|
+
# @!attribute [rw] client_token
|
397
|
+
# The client token is used to implement idempotency. It ensures that
|
398
|
+
# the request completes no more than one time. If you retry a request
|
399
|
+
# with the same token and the same parameters, the request will
|
400
|
+
# complete successfully. However, if you retry the request using the
|
401
|
+
# same token but different parameters, an HTTP 409 conflict occurs. If
|
402
|
+
# you omit this value, Amazon Web Services SDKs will automatically
|
403
|
+
# generate a unique client request.
|
404
|
+
#
|
405
|
+
# **A suitable default value is auto-generated.** You should normally
|
406
|
+
# not need to pass this option.
|
407
|
+
# @return [String]
|
408
|
+
#
|
409
|
+
class StartCommandExecutionRequest < Struct.new(
|
410
|
+
:target_arn,
|
411
|
+
:command_arn,
|
412
|
+
:parameters,
|
413
|
+
:execution_timeout_seconds,
|
414
|
+
:client_token)
|
415
|
+
SENSITIVE = []
|
416
|
+
include Aws::Structure
|
417
|
+
end
|
418
|
+
|
419
|
+
# @!attribute [rw] execution_id
|
420
|
+
# A unique identifier for the command execution.
|
421
|
+
# @return [String]
|
422
|
+
#
|
423
|
+
class StartCommandExecutionResponse < Struct.new(
|
424
|
+
:execution_id)
|
425
|
+
SENSITIVE = []
|
426
|
+
include Aws::Structure
|
427
|
+
end
|
428
|
+
|
282
429
|
# @!attribute [rw] thing_name
|
283
430
|
# The name of the thing associated with the device.
|
284
431
|
# @return [String]
|
@@ -286,18 +433,24 @@ module Aws::IoTJobsDataPlane
|
|
286
433
|
# @!attribute [rw] status_details
|
287
434
|
# A collection of name/value pairs that describe the status of the job
|
288
435
|
# execution. If not specified, the statusDetails are unchanged.
|
436
|
+
#
|
437
|
+
# The maximum length of the value in the name/value pair is 1,024
|
438
|
+
# characters.
|
289
439
|
# @return [Hash<String,String>]
|
290
440
|
#
|
291
441
|
# @!attribute [rw] step_timeout_in_minutes
|
292
442
|
# Specifies the amount of time this device has to finish execution of
|
293
443
|
# this job. If the job execution status is not set to a terminal state
|
294
444
|
# before this timer expires, or before the timer is reset (by calling
|
295
|
-
# `UpdateJobExecution`, setting the status to `IN_PROGRESS
|
445
|
+
# `UpdateJobExecution`, setting the status to `IN_PROGRESS`, and
|
296
446
|
# specifying a new timeout value in field `stepTimeoutInMinutes`) the
|
297
447
|
# job execution status will be automatically set to `TIMED_OUT`. Note
|
298
|
-
# that setting
|
299
|
-
# timeout
|
448
|
+
# that setting the step timeout has no effect on the in progress
|
449
|
+
# timeout that may have been specified when the job was created
|
300
450
|
# (`CreateJob` using field `timeoutConfig`).
|
451
|
+
#
|
452
|
+
# Valid values for this parameter range from 1 to 10080 (1 minute to 7
|
453
|
+
# days).
|
301
454
|
# @return [Integer]
|
302
455
|
#
|
303
456
|
class StartNextPendingJobExecutionRequest < Struct.new(
|
@@ -363,18 +516,25 @@ module Aws::IoTJobsDataPlane
|
|
363
516
|
# Optional. A collection of name/value pairs that describe the status
|
364
517
|
# of the job execution. If not specified, the statusDetails are
|
365
518
|
# unchanged.
|
519
|
+
#
|
520
|
+
# The maximum length of the value in the name/value pair is 1,024
|
521
|
+
# characters.
|
366
522
|
# @return [Hash<String,String>]
|
367
523
|
#
|
368
524
|
# @!attribute [rw] step_timeout_in_minutes
|
369
525
|
# Specifies the amount of time this device has to finish execution of
|
370
526
|
# this job. If the job execution status is not set to a terminal state
|
371
527
|
# before this timer expires, or before the timer is reset (by again
|
372
|
-
# calling `UpdateJobExecution`, setting the status to `IN_PROGRESS
|
528
|
+
# calling `UpdateJobExecution`, setting the status to `IN_PROGRESS`,
|
373
529
|
# and specifying a new timeout value in this field) the job execution
|
374
530
|
# status will be automatically set to `TIMED_OUT`. Note that setting
|
375
|
-
# or resetting
|
376
|
-
# timeout
|
531
|
+
# or resetting the step timeout has no effect on the in progress
|
532
|
+
# timeout that may have been specified when the job was created
|
377
533
|
# (`CreateJob` using field `timeoutConfig`).
|
534
|
+
#
|
535
|
+
# Valid values for this parameter range from 1 to 10080 (1 minute to 7
|
536
|
+
# days). A value of -1 is also valid and will cancel the current step
|
537
|
+
# timer (created by an earlier use of `UpdateJobExecutionRequest`).
|
378
538
|
# @return [Integer]
|
379
539
|
#
|
380
540
|
# @!attribute [rw] expected_version
|
@@ -432,6 +592,17 @@ module Aws::IoTJobsDataPlane
|
|
432
592
|
include Aws::Structure
|
433
593
|
end
|
434
594
|
|
595
|
+
# A validation error occurred when performing the API request.
|
596
|
+
#
|
597
|
+
# @!attribute [rw] message
|
598
|
+
# @return [String]
|
599
|
+
#
|
600
|
+
class ValidationException < Struct.new(
|
601
|
+
:message)
|
602
|
+
SENSITIVE = []
|
603
|
+
include Aws::Structure
|
604
|
+
end
|
605
|
+
|
435
606
|
end
|
436
607
|
end
|
437
608
|
|
data/sig/client.rbs
CHANGED
@@ -99,6 +99,28 @@ module Aws
|
|
99
99
|
) -> _GetPendingJobExecutionsResponseSuccess
|
100
100
|
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetPendingJobExecutionsResponseSuccess
|
101
101
|
|
102
|
+
interface _StartCommandExecutionResponseSuccess
|
103
|
+
include ::Seahorse::Client::_ResponseSuccess[Types::StartCommandExecutionResponse]
|
104
|
+
def execution_id: () -> ::String
|
105
|
+
end
|
106
|
+
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IoTJobsDataPlane/Client.html#start_command_execution-instance_method
|
107
|
+
def start_command_execution: (
|
108
|
+
target_arn: ::String,
|
109
|
+
command_arn: ::String,
|
110
|
+
?parameters: Hash[::String, {
|
111
|
+
s: ::String?,
|
112
|
+
b: bool?,
|
113
|
+
i: ::Integer?,
|
114
|
+
l: ::Integer?,
|
115
|
+
d: ::Float?,
|
116
|
+
bin: ::String?,
|
117
|
+
ul: ::String?
|
118
|
+
}],
|
119
|
+
?execution_timeout_seconds: ::Integer,
|
120
|
+
?client_token: ::String
|
121
|
+
) -> _StartCommandExecutionResponseSuccess
|
122
|
+
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _StartCommandExecutionResponseSuccess
|
123
|
+
|
102
124
|
interface _StartNextPendingJobExecutionResponseSuccess
|
103
125
|
include ::Seahorse::Client::_ResponseSuccess[Types::StartNextPendingJobExecutionResponse]
|
104
126
|
def execution: () -> Types::JobExecution
|
data/sig/errors.rbs
CHANGED
@@ -14,6 +14,13 @@ module Aws
|
|
14
14
|
class CertificateValidationException < ::Aws::Errors::ServiceError
|
15
15
|
def message: () -> ::String
|
16
16
|
end
|
17
|
+
class ConflictException < ::Aws::Errors::ServiceError
|
18
|
+
def message: () -> ::String
|
19
|
+
def resource_id: () -> ::String
|
20
|
+
end
|
21
|
+
class InternalServerException < ::Aws::Errors::ServiceError
|
22
|
+
def message: () -> ::String
|
23
|
+
end
|
17
24
|
class InvalidRequestException < ::Aws::Errors::ServiceError
|
18
25
|
def message: () -> ::String
|
19
26
|
end
|
@@ -23,6 +30,9 @@ module Aws
|
|
23
30
|
class ResourceNotFoundException < ::Aws::Errors::ServiceError
|
24
31
|
def message: () -> ::String
|
25
32
|
end
|
33
|
+
class ServiceQuotaExceededException < ::Aws::Errors::ServiceError
|
34
|
+
def message: () -> ::String
|
35
|
+
end
|
26
36
|
class ServiceUnavailableException < ::Aws::Errors::ServiceError
|
27
37
|
def message: () -> ::String
|
28
38
|
end
|
@@ -33,6 +43,9 @@ module Aws
|
|
33
43
|
def message: () -> ::String
|
34
44
|
def payload: () -> ::String
|
35
45
|
end
|
46
|
+
class ValidationException < ::Aws::Errors::ServiceError
|
47
|
+
def message: () -> ::String
|
48
|
+
end
|
36
49
|
end
|
37
50
|
end
|
38
51
|
end
|
data/sig/types.rbs
CHANGED
@@ -13,6 +13,23 @@ module Aws::IoTJobsDataPlane
|
|
13
13
|
SENSITIVE: []
|
14
14
|
end
|
15
15
|
|
16
|
+
class CommandParameterValue
|
17
|
+
attr_accessor s: ::String
|
18
|
+
attr_accessor b: bool
|
19
|
+
attr_accessor i: ::Integer
|
20
|
+
attr_accessor l: ::Integer
|
21
|
+
attr_accessor d: ::Float
|
22
|
+
attr_accessor bin: ::String
|
23
|
+
attr_accessor ul: ::String
|
24
|
+
SENSITIVE: []
|
25
|
+
end
|
26
|
+
|
27
|
+
class ConflictException
|
28
|
+
attr_accessor message: ::String
|
29
|
+
attr_accessor resource_id: ::String
|
30
|
+
SENSITIVE: []
|
31
|
+
end
|
32
|
+
|
16
33
|
class DescribeJobExecutionRequest
|
17
34
|
attr_accessor job_id: ::String
|
18
35
|
attr_accessor thing_name: ::String
|
@@ -37,6 +54,11 @@ module Aws::IoTJobsDataPlane
|
|
37
54
|
SENSITIVE: []
|
38
55
|
end
|
39
56
|
|
57
|
+
class InternalServerException
|
58
|
+
attr_accessor message: ::String
|
59
|
+
SENSITIVE: []
|
60
|
+
end
|
61
|
+
|
40
62
|
class InvalidRequestException
|
41
63
|
attr_accessor message: ::String
|
42
64
|
SENSITIVE: []
|
@@ -84,11 +106,30 @@ module Aws::IoTJobsDataPlane
|
|
84
106
|
SENSITIVE: []
|
85
107
|
end
|
86
108
|
|
109
|
+
class ServiceQuotaExceededException
|
110
|
+
attr_accessor message: ::String
|
111
|
+
SENSITIVE: []
|
112
|
+
end
|
113
|
+
|
87
114
|
class ServiceUnavailableException
|
88
115
|
attr_accessor message: ::String
|
89
116
|
SENSITIVE: []
|
90
117
|
end
|
91
118
|
|
119
|
+
class StartCommandExecutionRequest
|
120
|
+
attr_accessor target_arn: ::String
|
121
|
+
attr_accessor command_arn: ::String
|
122
|
+
attr_accessor parameters: ::Hash[::String, Types::CommandParameterValue]
|
123
|
+
attr_accessor execution_timeout_seconds: ::Integer
|
124
|
+
attr_accessor client_token: ::String
|
125
|
+
SENSITIVE: []
|
126
|
+
end
|
127
|
+
|
128
|
+
class StartCommandExecutionResponse
|
129
|
+
attr_accessor execution_id: ::String
|
130
|
+
SENSITIVE: []
|
131
|
+
end
|
132
|
+
|
92
133
|
class StartNextPendingJobExecutionRequest
|
93
134
|
attr_accessor thing_name: ::String
|
94
135
|
attr_accessor status_details: ::Hash[::String, ::String]
|
@@ -130,5 +171,10 @@ module Aws::IoTJobsDataPlane
|
|
130
171
|
attr_accessor job_document: ::String
|
131
172
|
SENSITIVE: []
|
132
173
|
end
|
174
|
+
|
175
|
+
class ValidationException
|
176
|
+
attr_accessor message: ::String
|
177
|
+
SENSITIVE: []
|
178
|
+
end
|
133
179
|
end
|
134
180
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws-sdk-iotjobsdataplane
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.63.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-
|
11
|
+
date: 2024-11-21 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.
|
22
|
+
version: 3.210.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.
|
32
|
+
version: 3.210.0
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: aws-sigv4
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|