Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

User not found while syncing users with django

オープン
#709 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
32/100
issue の種類
バグ
明瞭さ
説明が足りない
活発さ
停滞
技術スタック
django, python

調査の方向性

cloudharness_django/services/events.py の36行目にある event_handler から始め、記録された CREATE イベントと、440-442行目付近の cloudharness/auth/keycloak.py get_user を比較してください。cloudharness/events/client.py _consume_task を通じてイベントを追跡し、報告された404を再現してください。新しく作成されたユーザーの同期で UserNotFound が発生しなくなれば完了です。

索引モデルが issue の本文から書いたものです。

説明

cloudharness_django/services/events.py in event_handler at line 36

KeycloakAuthenticationError: 401: b'{"error":"HTTP 401 Unauthorized"}'
  File "cloudharness/auth/keycloak.py", line 42, in wrapper
    return func(self, *args, **kwargs)
  File "cloudharness/auth/keycloak.py", line 440, in get_user
    user = admin_client.get_user(user_id)
  File "keycloak/keycloak_admin.py", line 727, in get_user
    return raise_error_from_response(data_raw, KeycloakGetError)
  File "keycloak/exceptions.py", line 192, in raise_error_from_response
    raise error(
KeycloakGetError: 404: b'{"error":"User not found"}'
  File "cloudharness/auth/keycloak.py", line 440, in get_user
    user = admin_client.get_user(user_id)
  File "keycloak/keycloak_admin.py", line 727, in get_user
    return raise_error_from_response(data_raw, KeycloakGetError)
  File "keycloak/exceptions.py", line 192, in raise_error_from_response
    raise error(
UserNotFound: 7a305088-b8fa-4285-afec-af9d6dc2ef13
  File "cloudharness/events/client.py", line 252, in _consume_task
    handler(event_client=self, app=app, message=message.value)
  File "cloudharness_django/services/events.py", line 50, in event_handler
    raise e
  File "cloudharness_django/services/events.py", line 36, in event_handler
    kc_user = auth_client.get_user(resource_path[1])
  File "cloudharness/auth/keycloak.py", line 45, in wrapper
    return func(self, *args, **kwargs)
  File "cloudharness/auth/keycloak.py", line 442, in get_user
    raise UserNotFound(user_id)

This is happening after a user is just create as can be seen from the event:

<cloudharness.events.client.EventClient object at 0x7f8e19f813a0> {'resource-type': 'USER', 'operation-type': 'CREATE', 'resource-path': 'users/7a305088-b8fa-4285-afec-af9d6dc2ef13'}
asctime: 2023-09-08 08:42:24,492

I suppose that we are sending CREATE on DELETE user events, or the user is not available because it's just created (which I doubt)

主要言語
Python
スター
19
フォーク
5
平均マージ
11日 20時間
マージ済み PR(30日)
1

環境構築

  • Dockerfile・Docker Compose ファイルなし
  • プルリクエストのテンプレートあり
  • コントリビューションガイドなし

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

MetaCell/cloud-harness のほかの issue

MetaCell/cloud-harness の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。