Skip to content
This repository was archived by the owner on Apr 26, 2024. It is now read-only.

Commit 2f416fc

Browse files
authored
Ensure the list media admin API is always available (#5966)
* Ensure the list media admin API is always available This API is required for some external media repo implementations to operate (mostly for doing quarantine operations on a room). * changelog
1 parent 6b6086b commit 2f416fc

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

changelog.d/5966.bugfix

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Fix admin API for listing media in a room not being available with an external media repo.

synapse/rest/admin/__init__.py

+5-2
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
assert_user_is_admin,
4242
historical_admin_path_patterns,
4343
)
44-
from synapse.rest.admin.media import register_servlets_for_media_repo
44+
from synapse.rest.admin.media import ListMediaInRoom, register_servlets_for_media_repo
4545
from synapse.rest.admin.purge_room_servlet import PurgeRoomServlet
4646
from synapse.rest.admin.server_notice_servlet import SendServerNoticeServlet
4747
from synapse.rest.admin.users import UserAdminServlet
@@ -761,9 +761,12 @@ def register_servlets_for_client_rest_resource(hs, http_server):
761761
DeleteGroupAdminRestServlet(hs).register(http_server)
762762
AccountValidityRenewServlet(hs).register(http_server)
763763

764-
# Load the media repo ones if we're using them.
764+
# Load the media repo ones if we're using them. Otherwise load the servlets which
765+
# don't need a media repo (typically readonly admin APIs).
765766
if hs.config.can_load_media_repo:
766767
register_servlets_for_media_repo(hs, http_server)
768+
else:
769+
ListMediaInRoom(hs).register(http_server)
767770

768771
# don't add more things here: new servlets should only be exposed on
769772
# /_synapse/admin so should not go here. Instead register them in AdminRestResource.

0 commit comments

Comments
 (0)