Skip to content

Commit 8d90730

Browse files
committed
Add s3 file storage key prefix.
1 parent 1a10aa3 commit 8d90730

2 files changed

Lines changed: 6 additions & 3 deletions

File tree

config/settings/base.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -281,3 +281,4 @@ def immutable_file_test(path, url):
281281
WHITENOISE_IMMUTABLE_FILE_TEST = immutable_file_test
282282

283283
S3_FILE_BUCKET = env.str('DJANGO_S3_FILE_BUCKET')
284+
S3_FILE_PREFIX = env.str('DJANGO_S3_FILE_PREFIX', default='missioncontrol/filestorage/')

missioncontrol/home/models.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -481,14 +481,16 @@ class S3File(models.Model, Serializable):
481481
task_run = models.ForeignKey(TaskRun, to_field='uuid', related_name='files',
482482
on_delete=models.PROTECT, null=True, blank=True)
483483

484-
# TODO prefix these keys
484+
def get_prefix(self):
485+
return f'{settings.S3_FILE_PREFIX}{self.cid}'
486+
485487
def get_download_url(self):
486488
s3 = boto3.client('s3')
487489
url = s3.generate_presigned_url(
488490
ClientMethod='get_object',
489491
Params={
490492
'Bucket': self.bucket,
491-
'Key': self.cid,
493+
'Key': self.get_prefix(),
492494
}
493495
)
494496

@@ -498,7 +500,7 @@ def get_upload_url(self):
498500
s3 = boto3.client('s3')
499501
post = s3.generate_presigned_post(
500502
Bucket=self.bucket,
501-
Key=self.cid
503+
Key=self.get_prefix()
502504
)
503505

504506
return post

0 commit comments

Comments
 (0)