Spec-Zone.ru › AWS CLI v2

[ aws . iot ]

create-job

Описание

Создаёт задание.

Требуется разрешение на доступ к действию CreateJob.

См. также: AWS API Documentation

Синтаксис

  create-job
--job-id <value>
--targets <value>
[--document-source <value>]
[--document <value>]
[--description <value>]
[--presigned-url-config <value>]
[--target-selection <value>]
[--job-executions-rollout-config <value>]
[--abort-config <value>]
[--timeout-config <value>]
[--tags <value>]
[--namespace-id <value>]
[--job-template-arn <value>]
[--job-executions-retry-config <value>]
[--document-parameters <value>]
[--scheduling-config <value>]
[--destination-package-versions <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]

Параметры

--job-id (строка)

Идентификатор задания, который должен быть уникальным для вашей учетной записи. Рекомендуется использовать UUID. Буквенно-цифровые символы, «-» и «_» допустимы в данном случае.

--targets (список)

Список вещей и групп вещей, в которые должно быть отправлено задание.

(строка)

Синтаксис:

"string" "string" ...

--document-source (строка)

Ссылка S3 или URL объекта S3 на документ задания. Ссылка — это URL объекта Amazon S3 и требуется, если вы не указали значение для document .

Например, --document-source https://s3.*region-code* .amazonaws.com/example-firmware/device-firmware.1.0

Дополнительную информацию см. в Методы доступа к ведру .

--document (строка)

Документ задания. Требуется, если вы не указали значение для documentSource .

--description (строка)

Краткое текстовое описание задания.

--presigned-url-config (структура)

Конфигурационные данные для предварительно подписанных URL-адресов S3.

roleArn -> (строка)

ARN роли IAM, которая предоставляет разрешение на загрузку файлов из ведра S3, где хранятся данные/обновления задания. Роль также должна предоставить разрешение IoT на загрузку файлов.

Предупреждение

Дополнительную информацию об устранении проблемы с «запутавшимся заместителем» см. в разделе «Предотвращение проблем с запутавшимся заместителем между службами» в руководстве разработчика Amazon Web Services IoT Core.

expiresInSec -> (длинное целое число)

Время действия предварительно подписанных URL-адресов (в секундах). Допустимые значения от 60 до 3600, значение по умолчанию — 3600 секунд. Предварительно подписанные URL-адреса генерируются, когда Jobs получает запрос MQTT для документа задания.

Сокращенный синтаксис:

roleArn=string,expiresInSec=long

Синтаксис JSON:

{
  "roleArn": "string",
  "expiresInSec": long
}

--target-selection (строка)

Указывает, будет ли задание продолжаться (CONTINUOUS), или оно завершится после выполнения всех заданных целей (SNAPSHOT). При непрерывном выполнении задание может также выполняться на устройстве при обнаружении изменений в целевом объекте. Например, задание будет выполняться на устройстве, когда устройство добавляется в группу целей, даже после того, как задание было выполнено всеми устройствами, изначально входящими в группу.

Примечание

Рекомендуется использовать непрерывные задания вместо заданий «снимок» для динамических целевых групп устройств. При использовании непрерывных заданий устройства, присоединяющиеся к группе, получают выполнение задания даже после создания задания.

Возможные значения:

  • CONTINUOUS
  • SNAPSHOT

--job-executions-rollout-config (структура)

Позволяет создать поэтапный запуск задания.

maximumPerMinute -> (целое число)

Максимальное количество устройств, которые будут уведомлены о предстоящем задании в минуту. Этот параметр позволяет создать поэтапный запуск.

exponentialRate -> (структура)

Темп нарастания запуска задания. Этот параметр позволяет определить экспоненциальный темп для запуска задания.

baseRatePerMinute -> (целое число)

Минимальное количество устройств, которые будут уведомлены о предстоящем задании в минуту в начале запуска задания. Этот параметр позволяет определить начальный темп запуска.

incrementFactor -> (двойное число)

Экспоненциальный множитель для увеличения темпа запуска задания.

Amazon Web Services IoT Core поддерживает до одной цифры после запятой (например, 1,5, но не 1,55).

rateIncreaseCriteria -> (структура)

Критерии для запуска увеличения темпа запуска задания.

numberOfNotifiedThings -> (целое число)

Пороговое значение для количества уведомленных устройств, которое запустит увеличение темпа запуска.

numberOfSucceededThings -> (целое число)

Пороговое значение для количества завершенных устройств, которое запустит увеличение темпа запуска.

Сокращенный синтаксис:

maximumPerMinute=integer,exponentialRate={baseRatePerMinute=integer,incrementFactor=double,rateIncreaseCriteria={numberOfNotifiedThings=integer,numberOfSucceededThings=integer}}

Синтаксис JSON:

{
  "maximumPerMinute": integer,
  "exponentialRate": {
    "baseRatePerMinute": integer,
    "incrementFactor": double,
    "rateIncreaseCriteria": {
      "numberOfNotifiedThings": integer,
      "numberOfSucceededThings": integer
    }
  }
}

--abort-config (структура)

Позволяет создать критерии для прерывания задания.

criteriaList -> (список)

Список критериев, определяющих, когда и как прерывается задание.

(структура)

Критерии, определяющие, когда и как происходит прерывание задания.

failureType -> (строка)

Тип сбоев выполнения задания, которые могут вызвать прерывание задания.

action -> (строка)

Тип действия задания для инициализации прерывания задания.

thresholdPercentage -> (двойное число)

Минимальный процент сбоев выполнения задания, которые должны произойти для инициализации прерывания задания.

Amazon Web Services IoT Core поддерживает до двух цифр после запятой (например, 10,9 и 10,99, но не 10,999).

minNumberOfExecutedThings -> (целое число)

Минимальное количество устройств, которые должны получить уведомления о выполнении задания, прежде чем задание может быть прервано.

Сокращенный синтаксис:

criteriaList=[{failureType=string,action=string,thresholdPercentage=double,minNumberOfExecutedThings=integer},{failureType=string,action=string,thresholdPercentage=double,minNumberOfExecutedThings=integer}]

Синтаксис JSON:

{
  "criteriaList": [
    {
      "failureType": "FAILED"|"REJECTED"|"TIMED_OUT"|"ALL",
      "action": "CANCEL",
      "thresholdPercentage": double,
      "minNumberOfExecutedThings": integer
    }
    ...
  ]
}

--timeout-config (структура)

Указывает время, которое у каждого устройства есть для завершения выполнения задания. Таймер запускается, когда статус выполнения задания устанавливается в IN_PROGRESS . Если статус выполнения задания не переведен в другое конечное состояние до истечения времени, он автоматически переводится в TIMED_OUT .

inProgressTimeoutInMinutes -> (длинное целое число)

Указывает время в минутах, которое у этого устройства есть для завершения выполнения этого задания. Интервал тайм-аута может составлять от 1 минуты до 7 дней (от 1 до 10080 минут). Таймер выполнения не может быть обновлен и будет применяться ко всем выполнениям задания для задания. Всякий раз, когда выполнение задания остается в статусе IN_PROGRESS дольше этого интервала, выполнение задания завершается ошибкой и переходит в конечное состояние TIMED_OUT.

Сокращенный синтаксис:

inProgressTimeoutInMinutes=long

Синтаксис JSON:

{
  "inProgressTimeoutInMinutes": long
}

--tags (список)

Метаданные, которые могут использоваться для управления заданием.

(структура)

Набор пар «ключ-значение», используемых для управления ресурсом.

Key -> (строка)

Ключ тега.

Value -> (строка)

Значение тега.

Сокращенный синтаксис:

Key=string,Value=string ...

Синтаксис JSON:

[
  {
    "Key": "string",
    "Value": "string"
  }
  ...
]

--namespace-id (строка)

Пространство имен, используемое для обозначения задания как задания, управляемого клиентом.

При указании значения для этого параметра Amazon Web Services IoT Core отправляет уведомления о заданиях на темы MQTT, которые содержат это значение в следующем формате.

$aws/things/*THING_NAME* /jobs/*JOB_ID* /notify-namespace-*NAMESPACE_ID* /

Примечание

Функция namespaceId в настоящее время поддерживается только IoT Greengrass. Дополнительную информацию см. в разделе Настройка устройств ядра IoT Greengrass.

--job-template-arn (строка)

ARN шаблона задания, используемого для создания задания.

--job-executions-retry-config (структура)

Позволяет создать критерии для повторного выполнения задания.

criteriaList -> (список)

Список критериев, определяющих количество повторов, разрешенных для каждого типа сбоев для задания.

(структура)

Критерии, определяющие количество повторов, разрешенных для каждого типа сбоев для задания.

failureType -> (строка)

Тип сбоев выполнения задания, которые могут инициировать повторное выполнение задания.

numberOfRetries -> (целое число)

Количество повторов, разрешенных для типа сбоев для задания.

Сокращенный синтаксис:

criteriaList=[{failureType=string,numberOfRetries=integer},{failureType=string,numberOfRetries=integer}]

Синтаксис JSON:

{
  "criteriaList": [
    {
      "failureType": "FAILED"|"TIMED_OUT"|"ALL",
      "numberOfRetries": integer
    }
    ...
  ]
}

--document-parameters (отображение)

Параметры управляемого Amazon Web Services шаблона, которые вы можете указать для создания документа задания.

Примечание

documentParameters может использоваться только при создании заданий из управляемых Amazon Web Services шаблонов. Этот параметр не может использоваться с пользовательскими шаблонами заданий или для создания заданий из них.

key -> (строка)

value -> (строка)

Сокращенный синтаксис:

KeyName1=string,KeyName2=string

Синтаксис JSON:

{"string": "string"
  ...}

--scheduling-config (структура)

Конфигурация, позволяющая запланировать задание на будущую дату и время, а также указать поведение при завершении каждого выполнения задания.

startTime -> (строка)

Время начала развертывания документа задания для всех устройств в целевой группе для задания. startTime может быть запланировано до года вперед и должно быть запланировано как минимум за 30 минут до текущего времени. Формат даты и времени для startTime — ГГГГ-ММ-ДД для даты и ЧЧ:ММ для времени.

Дополнительную информацию о синтаксисе startTime при использовании команды API или командной строки см. в разделе «Отметка времени».

endTime -> (строка)

Время остановки развертывания документа задания для всех устройств в целевой группе для задания. endTime должно произойти не позднее, чем через два года от текущего времени и быть запланировано не менее чем за 30 минут до текущего времени. Минимальная продолжительность между startTime и endTime составляет 30 минут. Максимальная продолжительность между startTime и endTime составляет два года. Формат даты и времени для endTime — ГГГГ-ММ-ДД для даты и ЧЧ:ММ для времени.

Дополнительную информацию о синтаксисе endTime при использовании команды API или командной строки см. в разделе «Отметка времени».

endBehavior -> (строка)

Определяет поведение при завершении всех выполнений задания после достижения заданием выбранного состояния endTime. Если endTime не выбрано при создании задания, тогда endBehavior не применяется.

maintenanceWindows -> (список)

Необязательная конфигурация в рамках SchedulingConfig для настройки повторяющегося окна технического обслуживания с заранее определенным начальным временем и продолжительностью для развертывания документа задания для всех устройств в целевой группе для задания.

(структура)

Необязательная конфигурация в рамках SchedulingConfig для настройки повторяющегося окна технического обслуживания с заранее определенным начальным временем и продолжительностью для развертывания документа задания для всех устройств в целевой группе для задания.

startTime -> (строка)

Отображает время начала следующего окна технического обслуживания.

durationInMinutes -> (целое число)

Отображает продолжительность следующего окна технического обслуживания.

Сокращенный синтаксис:

startTime=string,endTime=string,endBehavior=string,maintenanceWindows=[{startTime=string,durationInMinutes=integer},{startTime=string,durationInMinutes=integer}]

Синтаксис JSON:

{
  "startTime": "string",
  "endTime": "string",
  "endBehavior": "STOP_ROLLOUT"|"CANCEL"|"FORCE_CANCEL",
  "maintenanceWindows": [
    {
      "startTime": "string",
      "durationInMinutes": integer
    }
    ...
  ]
}

--destination-package-versions (список)

Версия пакета Amazon Resource Names (ARN), установленная на устройстве после успешного завершения задания. Версия пакета должна быть в состоянии «Опубликовано» или «Устарело» при развертывании задания. Дополнительные сведения см. в разделе Жизненный цикл версии пакета.

Примечание: Следующие ограничения по длине относятся к одному ARN. Допускается до 25 ARN версии пакета.

(строка)

Синтаксис:

"string" "string" ...

--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 (логическое значение)

Включить отладочную запись журналов.

--endpoint-url (строка)

Переопределить стандартную URL-адрес команды на предоставленный.

--no-verify-ssl (логическое значение)

По умолчанию AWS CLI использует SSL при общении с AWS-сервисами. Для каждого подключения SSL AWS CLI будет проверять сертификаты SSL. Этот параметр переопределяет стандартное поведение проверки сертификатов SSL.

--no-paginate (логическое значение)

Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI выполнит только один вызов для первой страницы результатов.

--output (строка)

Стиль форматирования для вывода команды.

  • json
  • текст
  • таблица
  • yaml
  • yaml-поток

--query (строка)

Запрос JMESPath для фильтрации данных ответа.

--profile (строка)

Использовать конкретный профиль из файла учетных данных.

--region (строка)

Регион для использования. Переопределяет настройки конфигурации/среды.

--version (строка)

Отобразить версию этого инструмента.

--color (строка)

Включить/отключить цветной вывод.

  • включен
  • выключен
  • автоматически

--no-sign-request (логическое значение)

Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент предоставлен.

--ca-bundle (строка)

Пакет сертификатов CA для использования при проверке сертификатов SSL. Переопределяет настройки конфигурации/среды.

--cli-read-timeout (целое число)

Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет выполняться блокирующим образом без таймаута. Значение по умолчанию составляет 60 секунд.

--cli-connect-timeout (целое число)

Максимальное время подключения сокета в секундах. Если значение установлено в 0, подключение сокета будет выполняться блокирующим образом без таймаута. Значение по умолчанию составляет 60 секунд.

--cli-binary-format (строка)

Стиль форматирования, используемый для двоичных блоков. Формат по умолчанию — 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 (логическое значение)

Отключить кли-паджер для вывода.

--cli-auto-prompt (логическое значение)

Автоматически запрашивать параметры ввода CLI.

--no-cli-auto-prompt (логическое значение)

Отключить автоматическое запросы параметров ввода CLI.

Примеры

Примечание

Чтобы использовать следующие примеры, необходимо установить и настроить AWS CLI. Дополнительные сведения см. в руководстве «Начало работы» в «Руководстве пользователя AWS CLI».

Если не указано иное, все примеры используют правила цитирования, аналогичные Unix. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки. Дополнительные сведения см. в разделе «Использование кавычек со строками» в «Руководстве пользователя AWS CLI».

Пример 1: Создание задания

Следующий create-job пример создает простое задание AWS IoT, отправляющее JSON-документ на устройство MyRaspberryPi.

aws iot create-job \
    --job-id "example-job-01" \
    --targets "arn:aws:iot:us-west-2:123456789012:thing/MyRaspberryPi" \
    --document file://example-job.json \
    --description "example job test" \
    --target-selection SNAPSHOT

Вывод:

{
    "jobArn": "arn:aws:iot:us-west-2:123456789012:job/example-job-01",
    "jobId": "example-job-01",
    "description": "example job test"
}

Пример 2: Создание непрерывного задания

Следующий create-job пример создает задание, которое продолжает выполняться после того, как указанные целевые объекты завершили работу. В этом примере целевой объект — группа устройств, поэтому при добавлении новых устройств в группу непрерывное задание выполняется на этих новых устройствах.

aws iot create-job
–job-id “example-job-04” –targets “arn:aws:iot:us-west-2:123456789012:thinggroup/DeadBulbs” –document file://example-job.json –description “example continuous job” –target-selection CONTINUOUS

Вывод:

{
    "jobArn": "arn:aws:iot:us-west-2:123456789012:job/example-job-04",
    "jobId": "example-job-04",
    "description": "example continuous job"
}

Дополнительные сведения см. в разделе «Создание и управление заданиями (CLI)» в «Руководстве разработчика AWS IoT».

Вывод

jobArn -> (строка)

ARN задания.

jobId -> (строка)

Уникальный идентификатор, присвоенный этому заданию.

description -> (строка)

Описание задания.

© Copyright 2025, Amazon Web Services. Created using Sphinx.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API