From dbdeeb916fe6984bf1ad4a844eb66589582651a2 Mon Sep 17 00:00:00 2001 From: Eliot Berriot <contact@eliotberriot.com> Date: Fri, 10 May 2019 11:01:34 +0200 Subject: [PATCH] Download API and frontend files --- defaults/main.yml | 1 - molecule/default/playbook.yml | 1 + molecule/default/tests/test_default.py | 17 +++++++++++++++-- tasks/funkwhale.yml | 18 ++++++++++++++++++ templates/env.j2 | 4 ++-- 5 files changed, 36 insertions(+), 5 deletions(-) diff --git a/defaults/main.yml b/defaults/main.yml index 26d6909..7748243 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -5,7 +5,6 @@ funkwhale_media_path: /srv/funkwhale/data/media funkwhale_static_path: /srv/funkwhale/data/static funkwhale_music_path: /srv/funkwhale/data/music funkwhale_config_path: /srv/funkwhale/config -funkwhale_frontend_path: /srv/funkwhale/frontend/dist funkwhale_username: funkwhale funkwhale_database_managed: true funkwhale_database_name: funkwhale diff --git a/molecule/default/playbook.yml b/molecule/default/playbook.yml index 09a690e..99584c4 100644 --- a/molecule/default/playbook.yml +++ b/molecule/default/playbook.yml @@ -8,6 +8,7 @@ vars: funkwhale_hostname: yourdomain.funkwhale funkwhale_protocol: https + funkwhale_version: 0.19.0-rc2 funkwhale_env_vars: - EMAIL_CONFIG=smtp+tls://user@:password@youremail.host:587 - DEFAULT_FROM_EMAIL=noreply@yourdomain diff --git a/molecule/default/tests/test_default.py b/molecule/default/tests/test_default.py index f918a94..0f4439c 100644 --- a/molecule/default/tests/test_default.py +++ b/molecule/default/tests/test_default.py @@ -73,9 +73,9 @@ def test_funkwhale_env_file(host): f.contains("EMAIL_CONFIG=smtp+tls://user@:password@youremail.host:587") is True ) assert f.contains("DEFAULT_FROM_EMAIL=noreply@yourdomain") is True - assert f.contains("FUNKWHALE_FRONTEND_PATH=/srv/funkwhale/frontend/dist") is True + assert f.contains("FUNKWHALE_FRONTEND_PATH=/srv/funkwhale/front/dist") is True assert ( - f.contains("FUNKWHALE_SPA_HTML_ROOT=/srv/funkwhale/frontend/dist/index.html") + f.contains("FUNKWHALE_SPA_HTML_ROOT=/srv/funkwhale/front/dist/index.html") is True ) assert f.contains("NGINX_MAX_BODY_SIZE=100M") is True @@ -84,3 +84,16 @@ def test_funkwhale_env_file(host): # additional vars assert f.contains("ADDITIONAL_VAR=1") is True assert f.contains("ADDITIONAL_VAR=2") is True + + +def test_frontend_download(host): + f = host.file("/srv/funkwhale/front/dist/index.html") + + assert f.exists is True + + +def test_api_download(host): + f = host.file("/srv/funkwhale/api/funkwhale_api/__init__.py") + + assert f.exists is True + assert f.contains('__version__ = "0.19.0-rc2"') is True diff --git a/tasks/funkwhale.yml b/tasks/funkwhale.yml index 8cd5dc1..4327615 100644 --- a/tasks/funkwhale.yml +++ b/tasks/funkwhale.yml @@ -24,9 +24,27 @@ - name: "Create funkwhale configuration file" become: true + become_user: "{{ funkwhale_username }}" template: src: env.j2 dest: "{{ funkwhale_config_path }}/.env" owner: "{{ funkwhale_username }}" vars: secret_key: secret_key + +- name: Download front-end files + become: true + become_user: "{{ funkwhale_username }}" + unarchive: + src: https://dev.funkwhale.audio/funkwhale/funkwhale/-/jobs/artifacts/{{ funkwhale_version }}/download?job=build_front + dest: "{{ funkwhale_install_path }}" + remote_src: true + + +- name: Download api files + become: true + become_user: "{{ funkwhale_username }}" + unarchive: + src: https://dev.funkwhale.audio/funkwhale/funkwhale/-/jobs/artifacts/{{ funkwhale_version }}/download?job=build_api + dest: "{{ funkwhale_install_path }}" + remote_src: true diff --git a/templates/env.j2 b/templates/env.j2 index 848ccfb..3e2e587 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_frontend_path }} -FUNKWHALE_SPA_HTML_ROOT={{ funkwhale_frontend_path }}/index.html +FUNKWHALE_FRONTEND_PATH={{ funkwhale_install_path }}/front/dist +FUNKWHALE_SPA_HTML_ROOT={{ funkwhale_install_path }}/front/dist/index.html {% if funkwhale_nginx_managed %} NGINX_MAX_BODY_SIZE={{ funkwhale_nginx_max_body_size }} {% endif %} -- GitLab