thefactory/marathon-python

`list_queue` doesn't like the `embed_last_unused_offers` option

Closed this issue · 0 comments

It looks like a model needs to be updated to know about the last_unused_offers parameter.

From trying to use it in paasta:

  File "/usr/bin/paasta_serviceinit", line 200, in main
    client=clients.marathon(),
  File "/opt/venvs/paasta-tools/lib/python3.6/site-packages/paasta_tools/marathon_serviceinit.py", line 459, in perform_command
    paasta_print(status_marathon_job(service, instance, app_id, normal_instance_count, client))
  File "/opt/venvs/paasta-tools/lib/python3.6/site-packages/paasta_tools/marathon_serviceinit.py", line 147, in status_marathon_job
    status = marathon_tools.get_marathon_app_deploy_status(client, app_id)
  File "/opt/venvs/paasta-tools/lib/python3.6/site-packages/paasta_tools/marathon_tools.py", line 601, in get_marathon_app_deploy_status
    is_overdue, backoff_seconds = get_app_queue_status(client, app_id)
  File "/opt/venvs/paasta-tools/lib/python3.6/site-packages/paasta_tools/marathon_tools.py", line 978, in get_app_queue_status
    app_queue = get_app_queue(client, app_id)
  File "/opt/venvs/paasta-tools/lib/python3.6/site-packages/paasta_tools/marathon_tools.py", line 962, in get_app_queue
    app_queue = client.list_queue(embed_last_unused_offers=True)
  File "/opt/venvs/paasta-tools/lib/python3.6/site-packages/marathon/client.py", line 687, in list_queue
    return self._parse_response(response, MarathonQueueItem, is_list=True, resource_name='queue')
  File "/opt/venvs/paasta-tools/lib/python3.6/site-packages/marathon/client.py", line 72, in _parse_response
    return [clazz.from_json(resource) for resource in target]
  File "/opt/venvs/paasta-tools/lib/python3.6/site-packages/marathon/client.py", line 72, in <listcomp>
    return [clazz.from_json(resource) for resource in target]
  File "/opt/venvs/paasta-tools/lib/python3.6/site-packages/marathon/models/base.py", line 43, in from_json
    return cls(**{to_snake_case(k): v for k, v in list(attributes.items())})
TypeError: __init__() got an unexpected keyword argument 'last_unused_offers'