Skip to content

Add a way to debug failing batch requests #220

Open
@leplatrem

Description

Currently, if a batch request fails, we have no way to track the underlying failing request:

Traceback (most recent call last):
  File "/usr/local/bin/kinto-wizard", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.10/site-packages/kinto_wizard/__main__.py", line 109, in main
    event_loop.run_until_complete(
  File "/usr/local/lib/python3.10/asyncio/base_events.py", line 646, in run_until_complete
    return future.result()
  File "/usr/local/lib/python3.10/site-packages/kinto_wizard/yaml2kinto.py", line 31, in initialize_server
    with async_client.batch() as batch:
  File "/usr/local/lib/python3.10/contextlib.py", line 142, in __exit__
    next(self.gen)
  File "/usr/local/lib/python3.10/site-packages/kinto_http/client.py", line 91, in batch
    batch_session.send()
  File "/usr/local/lib/python3.10/site-packages/kinto_http/batch.py", line 81, in send
    resp, headers = self.session.request(**kwargs)
  File "/usr/local/lib/python3.10/site-packages/kinto_http/session.py", line 136, in request
    raise exception
kinto_http.exceptions.KintoException: POST /v1/batch - 400 400 - {'code': 400, 'errno': 109, 'error': 'Bad Request', 'message': "Cannot set status to 'signed'"}
Traceback (most recent call last):
  File "/home/jenkins/slave/workspace/pipelines/remote-settings-permissions/load.py", line 50, in <module>
    load(auto_envvar_prefix="LOAD")
  File "/usr/local/lib/python3.10/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.10/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.10/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.10/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/home/jenkins/slave/workspace/pipelines/remote-settings-permissions/load.py", line 42, in load
    load_file(server, auth, path.join(yaml_path, "kinto.prod.yaml"))
  File "/home/jenkins/slave/workspace/pipelines/remote-settings-permissions/load.py", line 20, in load_file
    raise e
  File "/home/jenkins/slave/workspace/pipelines/remote-settings-permissions/load.py", line 8, in load_file
    subprocess.check_call(
  File "/usr/local/lib/python3.10/subprocess.py", line 369, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['kinto-wizard', 'load', '--server=https://settings-writer.stage.mozaws.net/v1', '--auth', 'REDACTED', './kinto.prod.yaml']' returned non-zero exit status 1.

Metadata

Assignees

No one assigned

    Labels

    staleFor marking issues as stale. Labeled issues will be closed soon if label is not removed.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions