diff --git a/config/settings/common.py b/config/settings/common.py index 49bcf2ea9191dbb6a08f4ddda11ffc5c02f90411..863954e2d1929edaafb7952c20e252a50415c51c 100644 --- a/config/settings/common.py +++ b/config/settings/common.py @@ -215,6 +215,9 @@ STATICFILES_FINDERS = ( # See: https://docs.djangoproject.com/en/dev/ref/settings/#media-root MEDIA_ROOT = str(APPS_DIR('media')) +USE_SAMPLE_TRACK = env.bool("USE_SAMPLE_TRACK", False) + + # See: https://docs.djangoproject.com/en/dev/ref/settings/#media-url MEDIA_URL = '/media/' diff --git a/docker-compose.yml b/docker-compose.yml index a8a412044627953864e007ad3d33fa6e8e8e937c..1012bdd28880fbf4f12a08e48d24982adb3edd11 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -28,6 +28,8 @@ django: - .:/app ports: - "12081" + environment: + - USE_SAMPLE_TRACK=true links: - postgres - redis diff --git a/funkwhale_api/music/models.py b/funkwhale_api/music/models.py index 62cd4c980eec279185e03b2f283c2055835c36e3..fa2320b05d587b25a76161ac0714f45be0026db7 100644 --- a/funkwhale_api/music/models.py +++ b/funkwhale_api/music/models.py @@ -7,6 +7,7 @@ import shutil from django.conf import settings from django.db import models +from django.contrib.staticfiles.templatetags.staticfiles import static from django.core.files import File from django.core.files.base import ContentFile from django.utils import timezone @@ -232,6 +233,11 @@ class TrackFile(models.Model): shutil.rmtree(tmp_dir) return self.audio_file + @property + def path(self): + if settings.USE_SAMPLE_TRACK: + return static('music/sample1.ogg') + return self.audio_file.url class ImportBatch(models.Model): creation_date = models.DateTimeField(default=timezone.now) diff --git a/funkwhale_api/music/serializers.py b/funkwhale_api/music/serializers.py index d653c45ca860a9cb5775b3da41d932ea4e295353..bb3788157004f40bb068c8705c5ee064b42c5fc5 100644 --- a/funkwhale_api/music/serializers.py +++ b/funkwhale_api/music/serializers.py @@ -34,7 +34,7 @@ class ImportBatchSerializer(serializers.ModelSerializer): class TrackFileSerializer(serializers.ModelSerializer): class Meta: model = models.TrackFile - fields = ('id', 'audio_file', 'duration', 'source') + fields = ('id', 'path', 'duration', 'source') class SimpleAlbumSerializer(serializers.ModelSerializer): diff --git a/funkwhale_api/static/music/sample1.ogg b/funkwhale_api/static/music/sample1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..f2f3b7cda9b590e1c1b0b53115ea7ada52ec9ace Binary files /dev/null and b/funkwhale_api/static/music/sample1.ogg differ