From 72419447ec216c5ac1856f70543ff14701d4e5cb Mon Sep 17 00:00:00 2001 From: Bavisetti Narayan <72156168+NarayanBavisetti@users.noreply.github.com> Date: Wed, 16 Aug 2023 00:09:17 -0400 Subject: [PATCH] fix: added slug in filename for export issues (#1870) * chore: file name changed for exported issues * fix: added slug in filename for export issues --------- Co-authored-by: NarayanBavisetti --- apiserver/plane/api/views/exporter.py | 1 + apiserver/plane/bgtasks/export_task.py | 9 +++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/apiserver/plane/api/views/exporter.py b/apiserver/plane/api/views/exporter.py index f158f783d..7e14aa82f 100644 --- a/apiserver/plane/api/views/exporter.py +++ b/apiserver/plane/api/views/exporter.py @@ -48,6 +48,7 @@ class ExportIssuesEndpoint(BaseAPIView): project_ids=project_ids, token_id=exporter.token, multiple=multiple, + slug=slug, ) return Response( { diff --git a/apiserver/plane/bgtasks/export_task.py b/apiserver/plane/bgtasks/export_task.py index e9ca078bc..d8cb9f0cd 100644 --- a/apiserver/plane/bgtasks/export_task.py +++ b/apiserver/plane/bgtasks/export_task.py @@ -7,6 +7,7 @@ import zipfile # Django imports from django.conf import settings +from django.utils import timezone # Third party imports from celery import shared_task @@ -64,7 +65,7 @@ def create_zip_file(files): return zip_buffer -def upload_to_s3(zip_file, workspace_id, token_id): +def upload_to_s3(zip_file, workspace_id, token_id, slug): s3 = boto3.client( "s3", region_name="ap-south-1", @@ -72,7 +73,7 @@ def upload_to_s3(zip_file, workspace_id, token_id): aws_secret_access_key=settings.AWS_SECRET_ACCESS_KEY, config=Config(signature_version="s3v4"), ) - file_name = f"{workspace_id}/issues-{token_id}.zip" + file_name = f"{workspace_id}/export-{slug}-{token_id[:6]}-{timezone.now()}.zip" s3.upload_fileobj( zip_file, @@ -232,7 +233,7 @@ def generate_xlsx(header, project_id, issues, files): @shared_task -def issue_export_task(provider, workspace_id, project_ids, token_id, multiple): +def issue_export_task(provider, workspace_id, project_ids, token_id, multiple, slug): try: exporter_instance = ExporterHistory.objects.get(token=token_id) exporter_instance.status = "processing" @@ -330,7 +331,7 @@ def issue_export_task(provider, workspace_id, project_ids, token_id, multiple): ) zip_buffer = create_zip_file(files) - upload_to_s3(zip_buffer, workspace_id, token_id) + upload_to_s3(zip_buffer, workspace_id, token_id, slug) except Exception as e: exporter_instance = ExporterHistory.objects.get(token=token_id)