Update State Machine
sfn_update_state_machine | R Documentation |
Updates an existing state machine by modifying its definition, roleArn, loggingConfiguration, or EncryptionConfiguration¶
Description¶
Updates an existing state machine by modifying its definition
,
roleArn
, loggingConfiguration
, or EncryptionConfiguration
. Running
executions will continue to use the previous definition
and roleArn
.
You must include at least one of definition
or roleArn
or you will
receive a MissingRequiredParameter
error.
A qualified state machine ARN refers to a Distributed Map state
defined within a state machine. For example, the qualified state machine
ARN
arn:partition:states:region:account-id:stateMachine:stateMachineName/mapStateLabel
refers to a Distributed Map state with a label mapStateLabel
in the
state machine named stateMachineName
.
A qualified state machine ARN can either refer to a Distributed Map state defined within a state machine, a version ARN, or an alias ARN.
The following are some examples of qualified and unqualified state machine ARNs:
-
The following qualified state machine ARN refers to a Distributed Map state with a label
mapStateLabel
in a state machine namedmyStateMachine
.arn:partition:states:region:account-id:stateMachine:myStateMachine/mapStateLabel
If you provide a qualified state machine ARN that refers to a Distributed Map state, the request fails with
ValidationException
. -
The following qualified state machine ARN refers to an alias named
PROD
.arn:<partition>:states:<region>:<account-id>:stateMachine:<myStateMachine:PROD>
If you provide a qualified state machine ARN that refers to a version ARN or an alias ARN, the request starts execution for that version or alias.
-
The following unqualified state machine ARN refers to a state machine named
myStateMachine
.arn:<partition>:states:<region>:<account-id>:stateMachine:<myStateMachine>
After you update your state machine, you can set the publish
parameter
to true
in the same action to publish a new
version.
This way, you can opt-in to strict versioning of your state machine.
Step Functions assigns monotonically increasing integers for state machine versions, starting at version number 1.
All start_execution
calls within a few seconds use the updated
definition
and roleArn
. Executions started immediately after you
call update_state_machine
may use the previous state machine
definition
and roleArn
.
Usage¶
sfn_update_state_machine(stateMachineArn, definition, roleArn,
loggingConfiguration, tracingConfiguration, publish, versionDescription,
encryptionConfiguration)
Arguments¶
stateMachineArn |
[required] The Amazon Resource Name (ARN) of the state machine. |
definition |
The Amazon States Language definition of the state machine. See Amazon States Language. |
roleArn |
The Amazon Resource Name (ARN) of the IAM role of the state machine. |
loggingConfiguration |
Use the |
tracingConfiguration |
Selects whether X-Ray tracing is enabled. |
publish |
Specifies whether the state machine version is published. The
default is |
versionDescription |
An optional description of the state machine version to publish. You can only specify the |
encryptionConfiguration |
Settings to configure server-side encryption. |
Value¶
A list with the following syntax:
list(
updateDate = as.POSIXct(
"2015-01-01"
),
revisionId = "string",
stateMachineVersionArn = "string"
)
Request syntax¶
svc$update_state_machine(
stateMachineArn = "string",
definition = "string",
roleArn = "string",
loggingConfiguration = list(
level = "ALL"|"ERROR"|"FATAL"|"OFF",
includeExecutionData = TRUE|FALSE,
destinations = list(
list(
cloudWatchLogsLogGroup = list(
logGroupArn = "string"
)
)
)
),
tracingConfiguration = list(
enabled = TRUE|FALSE
),
publish = TRUE|FALSE,
versionDescription = "string",
encryptionConfiguration = list(
kmsKeyId = "string",
kmsDataKeyReusePeriodSeconds = 123,
type = "AWS_OWNED_KEY"|"CUSTOMER_MANAGED_KMS_KEY"
)
)