diff --git a/CHANGELOG b/CHANGELOG index 0b91987235f620475b00f26af87787c43670913b..15eacce4f09d9b5083bcd2625daf333102f3bb67 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -3,6 +3,53 @@ Changelog .. towncrier +Release notes: + +Preparing for federation +^^^^^^^^^^^^^^^^^^^^^^^^ + +In order to prepare for federation (see #136 and #137), new API endpoints +have been added under /federation and /.well-known/webfinger. + +For these endpoints to work, you will need to update your nginx configuration, +and add the following snippets:: + + location /federation/ { + include /etc/nginx/funkwhale_proxy.conf; + proxy_pass http://funkwhale-api/federation/; + } + + location /.well-known/webfinger { + include /etc/nginx/funkwhale_proxy.conf; + proxy_pass http://funkwhale-api/.well-known/webfinger; + } + +This will ensure federation endpoints will be reachable in the future. +You can of course skip this part if you know you will not federate your instance. + +A new ``FEDERATION_ENABLED`` env var have also been added to control wether +federation is enabled or not on the application side. This settings defaults +to True, which should have no consequencies at the moment, since actual +federation is not implemented and the only available endpoints are for +testing purposes. + +Add ``FEDERATION_ENABLED=false`` to your .env file to disable federation +on the application side. + +The last step involves generating RSA private and public keys for signing +your instance requests on the federation. This can be done via:: + + # on docker setups + docker-compose --rm api python manage.py generate_keys --no-input + + # on non-docker setups + source /srv/funkwhale/virtualenv/bin/activate + source /srv/funkwhale/load_env + python manage.py generate_keys --no-input + +That's it :) + + 0.7 (2018-03-21) ---------------- diff --git a/deploy/nginx.conf b/deploy/nginx.conf index 1c7b9ae8357d8222aba78e9c6dc34f45fbbb8ca4..1c304b4938892bf87ba50ab05f2394784b020248 100644 --- a/deploy/nginx.conf +++ b/deploy/nginx.conf @@ -62,6 +62,16 @@ server { proxy_pass http://funkwhale-api/api/; } + location /federation/ { + include /etc/nginx/funkwhale_proxy.conf; + proxy_pass http://funkwhale-api/federation/; + } + + location /.well-known/webfinger { + include /etc/nginx/funkwhale_proxy.conf; + proxy_pass http://funkwhale-api/.well-known/webfinger; + } + location /media/ { alias /srv/funkwhale/data/media/; }