Fix MAS adminapi listener missing — Element Admin panel broken
Add `adminapi` resource to MAS HTTP listener in deploy.sh and quickstart.sh. Without it, MAS never served /api/admin/v1/... causing Element Admin to always throw TypeError: Failed to fetch. Updated docs and added regression test. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -78,6 +78,7 @@ http:
|
||||
- name: graphql
|
||||
playground: true
|
||||
- name: assets # ← Critical: This is required!
|
||||
- name: adminapi # ← Required for Element Admin panel
|
||||
binds:
|
||||
- address: '[::]:8080'
|
||||
```
|
||||
|
||||
@@ -198,5 +198,6 @@ docker compose restart mas
|
||||
| `homeserver.domain not configured` (bridge) | Run `setup-bridges.sh` |
|
||||
| `as_token was not accepted` | Registration not loaded in Synapse — check `homeserver.yaml` |
|
||||
| MAS CSS missing | Add `- name: assets` to MAS listener resources |
|
||||
| Element Admin: `TypeError: Failed to fetch` | Add `- name: adminapi` to MAS listener resources |
|
||||
| `Template rendered to empty string` | Set `fetch_userinfo: true` in MAS upstream provider |
|
||||
| Bridge: `Connection refused` | Bridge hostname is 127.0.0.1 — must be 0.0.0.0 in config |
|
||||
|
||||
@@ -734,6 +734,7 @@ http:
|
||||
- name: graphql
|
||||
playground: true
|
||||
- name: assets # Required for CSS/JS files
|
||||
- name: adminapi
|
||||
binds:
|
||||
- address: '[::]:8080'
|
||||
- name: internal
|
||||
|
||||
@@ -134,6 +134,7 @@ http:
|
||||
- name: graphql
|
||||
playground: true
|
||||
- name: assets
|
||||
- name: adminapi
|
||||
binds:
|
||||
- address: '[::]:8080'
|
||||
- name: internal
|
||||
|
||||
@@ -154,6 +154,8 @@ assert_configs() {
|
||||
assert_file "mas/config/config.yaml" "mas/config/config.yaml generated"
|
||||
assert_contains "mas/config/config.yaml" \
|
||||
"homeserver: '${server_name}'" "MAS → homeserver"
|
||||
assert_contains "mas/config/config.yaml" \
|
||||
"name: adminapi" "MAS → adminapi listener present"
|
||||
|
||||
# Element Web config (heredoc format has spaces: `"key": "value"`)
|
||||
assert_file "element/config/config.json" "element/config/config.json generated"
|
||||
|
||||
Reference in New Issue
Block a user