Skip to content

List all Users + Gitlab 8.6 with python-gitlab #106

Closed
@ghost

Description

Hi Gauvain,

Before the update from Gitlab 8.5 to 8.6, python-gitlab was working perfectly.

But after the update to Gitlab 8.6, this code raised the exception below:

result = {}
for user in git.User(all=True):
    result[user.email.lower()] = user

The exception (It says it took too much time to respond, but the exception is raised instantaneously):

 File "./buggy.py", line 424, in <module>
    main()
  File "./buggy.py", line 420, in main
    add_missing_emails_to_projects(ldap_emails, gpg_emails, acl_emails)
  File "./buggy.py", line 218, in add_missing_emails_to_projects
    gitlab_users = gitlab_get_users()
  File "./buggy.py", line 201, in gitlab_get_users
    for user in git.User(all=True):
  File "/var/lib/work/.bin/python/gitlab/__init__.py", line 717, in User
    return User._get_list_or_object(self, id, **kwargs)
  File "/var/lib/work/.bin/python/gitlab/objects.py", line 279, in _get_list_or_object
    return cls.list(gl, **kwargs)
  File "/var/lib/work/.bin/python/gitlab/objects.py", line 246, in list
    return gl.list(cls, **kwargs)
  File "/var/lib/work/.bin/python/gitlab/__init__.py", line 398, in list
    results.extend(self.list(obj_class, **args))
  File "/var/lib/work/.bin/python/gitlab/__init__.py", line 398, in list
    results.extend(self.list(obj_class, **args))
  File "/var/lib/work/.bin/python/gitlab/__init__.py", line 398, in list
    results.extend(self.list(obj_class, **args))
  File "/var/lib/work/.bin/python/gitlab/__init__.py", line 398, in list
    results.extend(self.list(obj_class, **args))
  File "/var/lib/work/.bin/python/gitlab/__init__.py", line 376, in list
    raise_error_from_response(r, GitlabListError)
  File "/var/lib/work/.bin/python/gitlab/exceptions.py", line 135, in raise_error_from_response
    response_body=response.content)
gitlab.exceptions.GitlabListError: 502: b'<!DOCTYPE html>\n<html>\n<head>\n  <title>GitLab is not responding (502)</title>\n  <style>\n    body {\n      color: #666;\n      text-align: center;\n      font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;\n      margin: 0;\n      width: 800px;\n      margin: auto;\n      font-size: 14px;\n    }\n\n    h1 {\n      font-size: 56px;\n      line-height: 100px;\n      font-weight: normal;\n      color: #456;\n    }\n\n    h2 {\n      font-size: 24px;\n      color: #666;\n      line-height: 1.5em;\n    }\n\n    h3 {\n      color: #456;\n      font-size: 20px;\n      font-weight: normal;\n      line-height: 28px;\n    }\n\n    hr {\n      margin: 18px 0;\n      border: 0;\n      border-top: 1px solid #EEE;\n      border-bottom: 1px solid white;\n    }\n  </style>\n</head>\n<body>\n  <h1>\n    <img src="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEwIiBoZWlnaHQ9IjIxMCIgdmlld0JveD0iMCAwIDIxMCAyMTAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPHBhdGggZD0iTTEwNS4wNjE0IDIwMy42NTVsMzguNjQtMTE4LjkyMWgtNzcuMjhsMzguNjQgMTE4LjkyMXoiIGZpbGw9IiNlMjQzMjkiLz4KICA8cGF0aCBkPSJNMTA1LjA2MTQgMjAzLjY1NDhsLTM4LjY0LTExOC45MjFoLTU0LjE1M2w5Mi43OTMgMTE4LjkyMXoiIGZpbGw9IiNmYzZkMjYiLz4KICA8cGF0aCBkPSJNMTIuMjY4NSA4NC43MzQxbC0xMS43NDIgMzYuMTM5Yy0xLjA3MSAzLjI5Ni4xMDIgNi45MDcgMi45MDYgOC45NDRsMTAxLjYyOSA3My44MzgtOTIuNzkzLTExOC45MjF6IiBmaWxsPSIjZmNhMzI2Ii8+CiAgPHBhdGggZD0iTTEyLjI2ODUgODQuNzM0Mmg1NC4xNTNsLTIzLjI3My03MS42MjVjLTEuMTk3LTMuNjg2LTYuNDExLTMuNjg1LTcuNjA4IDBsLTIzLjI3MiA3MS42MjV6IiBmaWxsPSIjZTI0MzI5Ii8+CiAgPHBhdGggZD0iTTEwNS4wNjE0IDIwMy42NTQ4bDM4LjY0LTExOC45MjFoNTQuMTUzbC05Mi43OTMgMTE4LjkyMXoiIGZpbGw9IiNmYzZkMjYiLz4KICA8cGF0aCBkPSJNMTk3Ljg1NDQgODQuNzM0MWwxMS43NDIgMzYuMTM5YzEuMDcxIDMuMjk2LS4xMDIgNi45MDctMi45MDYgOC45NDRsLTEwMS42MjkgNzMuODM4IDkyLjc5My0xMTguOTIxeiIgZmlsbD0iI2ZjYTMyNiIvPgogIDxwYXRoIGQ9Ik0xOTcuODU0NCA4NC43MzQyaC01NC4xNTNsMjMuMjczLTcxLjYyNWMxLjE5Ny0zLjY4NiA2LjQxMS0zLjY4NSA3LjYwOCAwbDIzLjI3MiA3MS42MjV6IiBmaWxsPSIjZTI0MzI5Ii8+Cjwvc3ZnPgo=" /><br />\n    502\n  </h1>\n  <h3>Whoops, GitLab is taking too much time to respond.</h3>\n  <hr/>\n  <p>Try refreshing the page, or going back and attempting the action again.</p>\n  <p>Please contact your GitLab administrator if this problem persists.</p>\n</body>\n</html>\n'

Any idea Gauvain?

Thank you in advance!

Asher256

PS: I tried the same thing with pyapi-gitlab:

result = {}
for user in old_git.getall(old_git.getusers, per_page=100):
    result[user['email']] = user

And it listed the users without any error.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions