Channel creation/management not working in dev setup
Steps to reproduce
- Setup an development environment following the steps in https://docs.funkwhale.audio/contributing.html#setup-your-development-environment
- Open the front-end at http://localhost:8000
- Login and click on the upload icon and "Get Started" for the "Publish your work in a Channel"
What happens?
- The loading wheel is turning, nothing happens.
- No logs are printed in the server console
- Firefox Web console shows following logs:
XHR GEThttp://localhost:8000/api/v1/federation/actors/demo@localhost/
[HTTP/1.1 404 Not Found 82ms]
GET
http://localhost:8000/api/v1/federation/actors/demo@localhost/
Status404
Not Found
VersionHTTP/1.1
Transferred3.82 KB (70.70 KB size)
Connection
keep-alive
Content-Encoding
gzip
Content-Type
text/html; charset=utf-8
Date
Thu, 19 Nov 2020 09:10:57 GMT
Server
nginx/1.19.4
Transfer-Encoding
chunked
Vary
Accept-Encoding
vary
Cookie, Origin
x-content-type-options
nosniff
x-frame-options
DENY
x-xss-protection
1; mode=block
Accept
application/json, text/plain, */*
Accept-Encoding
gzip, deflate
Accept-Language
en-US,en;q=0.5
Connection
keep-alive
Cookie
csrftoken=0nQU0ARyKYlYfzNxFOIE7H1mdIvH4OnZYvauoQCRKgzh0pGXtXOKm3CH5TreVGDT; sessionid=xbfe9s4can2tlybhzjm4k2d7710l7roo
DNT
1
Host
localhost:8000
Referer
http://localhost:8000/@demo/
User-Agent
Mozilla/5.0 (X11; Linux x86_64; rv:83.0) Gecko/20100101 Firefox/83.0
X-CSRFToken
0nQU0ARyKYlYfzNxFOIE7H1mdIvH4OnZYvauoQCRKgzh0pGXtXOKm3CH5TreVGDT
Uncaught (in promise) Error: Request failed with status code 404
createError http://localhost:8000/front/js/chunk-vendors.js:751
settle http://localhost:8000/front/js/chunk-vendors.js:914
handleLoad http://localhost:8000/front/js/chunk-vendors.js:284
dispatchXhrRequest http://localhost:8000/front/js/chunk-vendors.js:259
xhrAdapter http://localhost:8000/front/js/chunk-vendors.js:236
dispatchRequest http://localhost:8000/front/js/chunk-vendors.js:824
promise callback*request http://localhost:8000/front/js/chunk-vendors.js:631
method http://localhost:8000/front/js/chunk-vendors.js:641
wrap http://localhost:8000/front/js/chunk-vendors.js:1084
fetch http://localhost:8000/front/js/core.js:2756
created http://localhost:8000/front/js/core.js:2744
invokeWithErrorHandling http://localhost:8000/front/js/chunk-vendors.js:17606
callHook http://localhost:8000/front/js/chunk-vendors.js:19966
_init http://localhost:8000/front/js/chunk-vendors.js:20751
_init http://localhost:8000/front/js/chunk-index-vendors.js:33457
VueComponent http://localhost:8000/front/js/chunk-vendors.js:20897
createComponentInstanceForVnode http://localhost:8000/front/js/chunk-vendors.js:19033
init http://localhost:8000/front/js/chunk-vendors.js:18864
merged http://localhost:8000/front/js/chunk-vendors.js:19051
createComponent http://localhost:8000/front/js/chunk-vendors.js:21721
createElm http://localhost:8000/front/js/chunk-vendors.js:21668
updateChildren http://localhost:8000/front/js/chunk-vendors.js:21959
patchVnode http://localhost:8000/front/js/chunk-vendors.js:22062
patch http://localhost:8000/front/js/chunk-vendors.js:22225
_update http://localhost:8000/front/js/chunk-vendors.js:19695
updateComponent http://localhost:8000/front/js/chunk-vendors.js:19813
get http://localhost:8000/front/js/chunk-vendors.js:20226
run http://localhost:8000/front/js/chunk-vendors.js:20301
flushSchedulerQueue http://localhost:8000/front/js/chunk-vendors.js:20057
nextTick http://localhost:8000/front/js/chunk-vendors.js:17732
flushCallbacks http://localhost:8000/front/js/chunk-vendors.js:17658
promise callback*timerFunc http://localhost:8000/front/js/chunk-vendors.js:17685
nextTick http://localhost:8000/front/js/chunk-vendors.js:17742
queueWatcher http://localhost:8000/front/js/chunk-vendors.js:20149
update http://localhost:8000/front/js/chunk-vendors.js:20291
notify http://localhost:8000/front/js/chunk-vendors.js:16484
reactiveSetter http://localhost:8000/front/js/chunk-vendors.js:16809
init http://localhost:8000/front/js/chunk-index-vendors.js:38288
init http://localhost:8000/front/js/chunk-index-vendors.js:38287
updateRoute http://localhost:8000/front/js/chunk-index-vendors.js:37677
transitionTo http://localhost:8000/front/js/chunk-index-vendors.js:37525
confirmTransition http://localhost:8000/front/js/chunk-index-vendors.js:37663
step http://localhost:8000/front/js/chunk-index-vendors.js:37264
step http://localhost:8000/front/js/chunk-index-vendors.js:37271
step http://localhost:8000/front/js/chunk-index-vendors.js:37271
runQueue http://localhost:8000/front/js/chunk-index-vendors.js:37275
confirmTransition http://localhost:8000/front/js/chunk-index-vendors.js:37658
step http://localhost:8000/front/js/chunk-index-vendors.js:37264
step http://localhost:8000/front/js/chunk-index-vendors.js:37268
iterator http://localhost:8000/front/js/chunk-index-vendors.js:37643
resolveAsyncComponents http://localhost:8000/front/js/chunk-index-vendors.js:37424
iterator http://localhost:8000/front/js/chunk-index-vendors.js:37621
step http://localhost:8000/front/js/chunk-index-vendors.js:37267
step http://localhost:8000/front/js/chunk-index-vendors.js:37271
step http://localhost:8000/front/js/chunk-index-vendors.js:37271
step http://localhost:8000/front/js/chunk-index-vendors.js:37271
step http://localhost:8000/front/js/chunk-index-vendors.js:37271
runQueue http://localhost:8000/front/js/chunk-index-vendors.js:37275
confirmTransition http://localhost:8000/front/js/chunk-index-vendors.js:37651
transitionTo http://localhost:8000/front/js/chunk-index-vendors.js:37521
chunk-vendors.js:751:15
- At
/api/admin/federation/actor
, the actor (= logged in user) is available, which means the actor exists in the database with the correct domain/username, with following content:
What is expected?
The channel management page is loaded
Context
Funkwhale version(s) affected: develop
and aster(=
v1.0.1`) with the development docker setup (see https://docs.funkwhale.audio/contributing.html#setup-your-development-environment)
- Browser: Firefox
- Can reproduce on my test machine (also after wiping the container/dev setup and rebuilding again) as well as on a fresh installed debian VM
- Can reproduce with users created either through the command line (
createsuperuser
), as well as with user created through the front-end - @eliotberriot suggested looking at
api/funkwhale_api/federation/api_views::ActorViewSet
file, especially in theget_object
method - Obviously this doesn't happen in production setup