diff --git a/defaults/main.yml b/defaults/main.yml index 4619417bce44b41a7927626e56c0d8111b8c1f61..2a1f3e74a394aab202623011a8c8787183b2f86b 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -8,6 +8,7 @@ funkwhale_config_path: /srv/funkwhale/config funkwhale_external_storage_enabled: false funkwhale_username: funkwhale funkwhale_database_managed: true +funkwhale_frontend_managed: true funkwhale_database_name: funkwhale funkwhale_database_user: funkwhale funkwhale_nginx_managed: true diff --git a/tasks/funkwhale.yml b/tasks/funkwhale.yml index 01d9f44232afa9b2a72134f6d4993e86696450d2..9e6a0f990cc1435c8aae5b199e23589f9c80cce4 100644 --- a/tasks/funkwhale.yml +++ b/tasks/funkwhale.yml @@ -70,6 +70,7 @@ - name: Download front-end files become: true become_user: "{{ funkwhale_username }}" + when: funkwhale_frontend_managed unarchive: src: https://dev.funkwhale.audio/funkwhale/funkwhale/-/jobs/artifacts/{{ funkwhale_version }}/download?job=build_front dest: "{{ funkwhale_install_path }}" diff --git a/tasks/main.yml b/tasks/main.yml index 6bafe0b0cc91a47543db99ce2482280b2bf00259..867ccc68e32bd53d798372c7fece79c433ccf7ea 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -1,4 +1,9 @@ --- +- name: "Set frontend path" + when: funkwhale_frontend_managed + set_fact: + funkwhale_frontend_path: "{{ funkwhale_install_path }}/front/dist" + - include: packages.yml tags: [packages] - include: db.yml diff --git a/templates/env.j2 b/templates/env.j2 index 587e63be80aacb473ab414c1f6bf57a363bab02c..b3654f9e4177313bef339558b52ceafb5a816be9 100644 --- a/templates/env.j2 +++ b/templates/env.j2 @@ -24,8 +24,8 @@ MEDIA_ROOT={{ funkwhale_media_path }} STATIC_ROOT={{ funkwhale_static_path }} MUSIC_DIRECTORY_PATH={{ funkwhale_music_path }} MUSIC_DIRECTORY_SERVE_PATH={{ funkwhale_music_path }} -FUNKWHALE_FRONTEND_PATH={{ funkwhale_install_path }}/front/dist -FUNKWHALE_SPA_HTML_ROOT={{ funkwhale_install_path }}/front/dist/index.html +FUNKWHALE_FRONTEND_PATH={{ funkwhale_frontend_path }} +FUNKWHALE_SPA_HTML_ROOT={{ funkwhale_frontend_path }}/index.html {% if funkwhale_nginx_managed %} NGINX_MAX_BODY_SIZE={{ funkwhale_nginx_max_body_size }} {% endif %} diff --git a/templates/nginx.conf.j2 b/templates/nginx.conf.j2 index d917820f625b18fa7ec81a693b9f8fd679168a0f..f1a4cdaa67f18ee7914d3bb512133165fc4e0f5e 100644 --- a/templates/nginx.conf.j2 +++ b/templates/nginx.conf.j2 @@ -38,7 +38,8 @@ server { add_header Strict-Transport-Security "max-age=63072000; preload"; {% endif -%} - root {{ funkwhale_install_path }}/front/dist; + + root {{ funkwhale_frontend_path }}; # compression settings gzip on; @@ -75,7 +76,7 @@ server { } location /front/ { - alias {{ funkwhale_install_path }}/front/dist/; + alias {{ funkwhale_frontend_path }}/; expires 30d; add_header Pragma public; add_header Cache-Control "public, must-revalidate, proxy-revalidate";