[ aws . stepfunctions ]
создать-машину-состояний
Описание
Создает машину состояний. Машина состояний состоит из набора состояний, которые могут выполнять работу (Task состояния), определять переход к последующим состояниям (Choice состояния), завершать выполнение с ошибкой (Fail состояния) и т. д. Машины состояний задаются с помощью структурированного языка на основе JSON. Дополнительную информацию см. в руководстве пользователя Step Functions в разделе Язык Amazon States.
Если вы установите параметр publish этого действия API в значение true, он опубликует версию 1 в качестве первой ревизии машины состояний.
Для дополнительного контроля безопасности вы можете зашифровать данные с помощью **ключ, управляемый клиентом**, для машин состояний Step Functions. При создании или обновлении **машины состояний** можно настроить симметричный ключ KMS и период повторного использования ключа данных. Журнал выполнения и определение машины состояний будут зашифрованы с использованием ключа, примененного к машине состояний.
Примечание
Данная операция имеет асинхронную согласованность. Результаты выполняются по принципу наилучшего результата и могут не отражать очень недавние обновления и изменения.Примечание
CreateStateMachine — это идемпотентный API. Последующие запросы не создадут дублируемый ресурс, если он уже был создан. Идемпотентная проверка CreateStateMachine основана на машине состояний name, definition, type, LoggingConfiguration, TracingConfiguration и EncryptionConfiguration. Проверка также основана на параметрах publish и versionDescription. Если последующий запрос имеет другое значение roleArn или tags, Step Functions проигнорирует эти различия и обработает его как идемпотентный запрос предыдущего. В этом случае roleArn и tags не будут обновлены, даже если они отличаются.См. также: Документация API AWS
Синтаксис
create-state-machine
--name <value>
--definition <value>
--role-arn <value>
[--type <value>]
[--logging-configuration <value>]
[--tags <value>]
[--tracing-configuration <value>]
[--publish | --no-publish]
[--version-description <value>]
[--encryption-configuration <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--name (строка)
Имя машины состояний.
Имя не должно содержать:
- пробелы
- скобки
< > { } [ ] - символы подстановки
? * - специальные символы
" # % \ ^ | ~ ` $ & , ; : / - управляющие символы (
U+0000-001F,U+007F-009F)
Для включения ведения журнала с помощью CloudWatch Logs имя должно содержать только цифры (0-9), буквы (A-Z, a-z), дефисы (-) и символы подчеркивания (_).
--definition (строка)
--role-arn (строка)
--type (строка)
Определяет, создается ли машина состояний стандартного или экспресс-типа. По умолчанию — STANDARD. Вы не можете обновить type машины состояний после ее создания.
Возможные значения:
STANDARDEXPRESS
--logging-configuration (структура)
Определяет, какие события журнала выполнения записываются и где они записываются.
Примечание
По умолчаниюlevel установлено в значение OFF. Дополнительную информацию см. в руководстве пользователя Step Functions в разделе Уровни ведения журнала.level -> (строка)
includeExecutionData -> (логическое)
false данные исключаются.destinations -> (список)
Массив объектов, описывающих место, куда будут записываться события журнала выполнения. Ограничение: размер 1. Требуется, если уровень ведения журнала не установлен в значение OFF.
(структура)
cloudWatchLogsLogGroup -> (структура)
Объект, описывающий группу журналов CloudWatch. Дополнительную информацию см. в руководстве пользователя CloudFormation в разделе AWS::Logs::LogGroup.
logGroupArn -> (строка)
:*
Синтаксис JSON:
{
"level": "ALL"|"ERROR"|"FATAL"|"OFF",
"includeExecutionData": true|false,
"destinations": [
{
"cloudWatchLogsLogGroup": {
"logGroupArn": "string"
}
}
...
]
}
--tags (список)
Теги, которые необходимо добавить при создании машины состояний.
Массив пар ключ-значение. Дополнительную информацию см. в разделе Использование тегов распределения затрат в Руководстве по выставлению счетов и управлению затратами Amazon Web Services и Управление доступом с помощью тегов IAM.
Теги могут содержать только буквы Unicode, цифры, пробелы или следующие символы: _ . : / = + - @.
(структура)
Теги представляют собой пары ключ-значение, которые можно связать с машинами состояний и действиями Step Functions.
Массив пар ключ-значение. Дополнительную информацию см. в разделе Использование тегов распределения затрат в Руководстве по выставлению счетов и управлению затратами Amazon Web Services и Управление доступом с помощью тегов IAM.
Теги могут содержать только буквы Unicode, цифры, пробелы или следующие символы: _ . : / = + - @.
key -> (строка)
value -> (строка)
Сокращенный синтаксис:
key=string,value=string ...
Синтаксис JSON:
[
{
"key": "string",
"value": "string"
}
...
]
--tracing-configuration (структура)
Выбирает, включено ли отслеживание X-Ray.
enabled -> (логическое)
true отслеживание X-Ray включено.Сокращенный синтаксис:
enabled=boolean
Синтаксис JSON:
{
"enabled": true|false
}
--publish | --no-publish (логическое)
true, чтобы опубликовать первую версию машины состояний во время создания. По умолчанию — false.--version-description (строка)
publish установлен в значение true. В противном случае, если вы установите versionDescription, но publish в значение false, это действие API вызовет ValidationException.--encryption-configuration (структура)
Настройки для конфигурации шифрования на стороне сервера.
kmsKeyId -> (строка)
kmsDataKeyReusePeriodSeconds -> (целое число)
GenerateDataKey. Применимо только к ключам, управляемым клиентом.type -> (строка)
Сокращенный синтаксис:
kmsKeyId=string,kmsDataKeyReusePeriodSeconds=integer,type=string
Синтаксис JSON:
{
"kmsKeyId": "string",
"kmsDataKeyReusePeriodSeconds": integer,
"type": "AWS_OWNED_KEY"|"CUSTOMER_MANAGED_KMS_KEY"
}
--cli-input-json | --cli-input-yaml (строка) Считывает аргументы из предоставленной строки JSON. Строка JSON соответствует формату, указанному в --generate-cli-skeleton. Если на командной строке предоставлены другие аргументы, эти значения переопределят значения, предоставленные в JSON. Невозможно передавать произвольные двоичные значения с помощью предоставленного значения JSON, так как строка будет интерпретироваться буквально. Это не может быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит каркас JSON в стандартный вывод без отправки запроса API. Если предоставлено значение по умолчанию или значение input, выводит пример входного JSON, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если предоставлено yaml-input, выводится пример входного YAML, который можно использовать с --cli-input-yaml. Если предоставлено значение output, проверяются входные данные команды и возвращается пример выходного JSON для этой команды. Сгенерированный каркас JSON не является стабильным между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном каркасе JSON.
Общие параметры
--debug (boolean)
Включить отладочную регистрацию.
--endpoint-url (string)
Переопределить URL по умолчанию команды заданным URL.
--no-verify-ssl (boolean)
По умолчанию AWS CLI использует SSL при взаимодействии с AWS-сервисами. Для каждого SSL-соединения AWS CLI проверяет сертификаты SSL. Этот параметр переопределяет поведение проверки сертификатов SSL по умолчанию.
--no-paginate (boolean)
Отключить автоматическую постраничность. Если автоматическая постраничность отключена, AWS CLI выполнит только один вызов для первой страницы результатов.
--output (string)
Стиль форматирования вывода команд.
- json
- text
- table
- yaml
- yaml-stream
--query (string)
Запрос JMESPath для фильтрации данных ответа.
--profile (string)
Использовать определённый профиль из файла учетных данных.
--region (string)
Используемый регион. Переопределяет настройки из конфигурации/окружения.
--version (string)
Отобразить версию этого инструмента.
--color (string)
Включить/выключить цветной вывод.
- on
- off
- auto
--no-sign-request (boolean)
Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент предоставлен.
--ca-bundle (string)
Файл сертификатов CA для проверки SSL-сертификатов. Переопределяет настройки из конфигурации/окружения.
--cli-read-timeout (int)
Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию составляет 60 секунд.
--cli-connect-timeout (int)
Максимальное время подключения к сокету в секундах. Если значение установлено в 0, подключение к сокету будет блокирующим и не будет иметь таймаута. Значение по умолчанию составляет 60 секунд.
--cli-binary-format (string)
Стиль форматирования, используемый для двоичных блоков. Формат по умолчанию — base64. Формат base64 ожидает, что двоичные блоки будут предоставлены в виде закодированной в base64 строки. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны быть переданы буквально. При предоставлении содержимого из файла, соответствующего двоичному блоку, fileb:// всегда будет обрабатываться как двоичный и будет использовать содержимое файла напрямую независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть должным образом отформатировано для настроенного cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (boolean)
Отключить вывод страницы CLI.
--cli-auto-prompt (boolean)
Автоматически запросить параметры ввода CLI.
--no-cli-auto-prompt (boolean)
Отключить автоматическое запросы параметров ввода CLI.
Вывод
stateMachineArn -> (string)
creationDate -> (timestamp)
stateMachineVersionArn -> (string)
publish в значение true, это поле возвращает значение null.
© Copyright 2025, Amazon Web Services. Created using Sphinx.