Вопрос: AWS Lambda boto3, но не delete_job не реализован? - PullRequest
0 голосов
/ 07 июня 2018

В документации boto3 описана функция удаления задания.См .: https://boto3.readthedocs.io/en/latest/reference/services/iot.html#IoT.Client.delete_job

Я написал лямбду, которая может успешно создавать create_job, cancel_job и list_job_executions_for_thing.Функция delete_job не работает.

Используя пример из документации boto3:

client=boto3.client('iot')
    response = client.delete_job(
    jobId='Upgrade00003',
    force=True
)

Выдает следующую ошибку:

{
  "errorMessage": "'IoT' object has no attribute 'delete_job'",
  "errorType": "AttributeError",
  "stackTrace": [
    [
      "/var/task/lambda_function.py",
      162,
      "lambda_handler",
      "response = client.delete_job("
    ],
    [
      "/var/runtime/botocore/client.py",
      555,
      "__getattr__",
      "self.__class__.__name__, item)"
    ]
  ]
}

"iot: DeleteJob"также не отображается в качестве параметра в разрешениях роли IAM.

Не является ли функция delete_job boto3 не реализованной в AWS?

Ответы [ 2 ]

0 голосов
/ 28 июня 2018

Добавление нового boto3 в лямбда-код активировало delete_job (), но, к сожалению, пакет теперь слишком большой, чтобы поддерживать встроенное редактирование.

0 голосов
/ 08 июня 2018

Я попробовал и получил ту же ошибку, но затем обновил boto3:

pip install boto3 --upgrade

Получилась версия:

Successfully installed boto3-1.7.34 botocore-1.10.34

Команда delete_job() теперь работает.

...