Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion openedx/core/djangoapps/content_libraries/tasks.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
from django.core.files.base import ContentFile
from django.contrib.auth import get_user_model
from django.core.serializers.json import DjangoJSONEncoder
from django.conf import settings
from celery import shared_task
from celery.utils.log import get_task_logger
from celery_utils.logged_task import LoggedTask
Expand Down Expand Up @@ -557,7 +558,9 @@ def backup_library(self, user_id: int, library_key_str: str) -> None:
timestamp = datetime.now().strftime("%Y-%m-%d-%H%M%S")
filename = f'{sanitized_lib_key}-{timestamp}.zip'
file_path = os.path.join(root_dir, filename)
create_lib_zip_file(lp_key=str(library_key), path=file_path)
user = User.objects.get(id=user_id)
origin_server = getattr(settings, 'CMS_BASE', None)
create_lib_zip_file(lp_key=str(library_key), path=file_path, user=user, origin_server=origin_server)
set_custom_attribute("exporting_completed", str(library_key))

with open(file_path, 'rb') as zipfile:
Expand Down
7 changes: 7 additions & 0 deletions openedx/core/djangoapps/content_libraries/tests/test_tasks.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
Unit tests for content libraries Celery tasks
"""

from django.test import override_settings
from ..models import ContentLibrary
from .base import ContentLibrariesRestApiTest

Expand All @@ -28,13 +29,19 @@ def test_backup_task_returns_task_id(self):
result = backup_library.delay(self.user.id, str(self.lib1.library_key))
assert result.task_id is not None

@override_settings(CMS_BASE="test.com")
def test_backup_task_success(self):
result = backup_library.delay(self.user.id, str(self.lib1.library_key))
assert result.state == 'SUCCESS'
# Ensure an artifact was created with the output file
artifact = UserTaskArtifact.objects.filter(status__task_id=result.task_id, name='Output').first()
assert artifact is not None
assert artifact.file.name.endswith('.zip')
# test artifact content
with artifact.file.open('rb') as f:
content = f.read()
assert b'created_by_email = "bob@example.com"' in content
assert b'origin_server = "test.com"' in content

def test_backup_task_failure(self):
result = backup_library.delay(self.user.id, self.wrong_task_id)
Expand Down
2 changes: 1 addition & 1 deletion requirements/constraints.txt
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ numpy<2.0.0
# Date: 2023-09-18
# pinning this version to avoid updates while the library is being developed
# Issue for unpinning: https://github.com/openedx/edx-platform/issues/35269
openedx-learning==0.30.0
openedx-learning==0.30.1

# Date: 2023-11-29
# Open AI version 1.0.0 dropped support for openai.ChatCompletion which is currently in use in enterprise.
Expand Down
2 changes: 1 addition & 1 deletion requirements/edx/base.txt
Original file line number Diff line number Diff line change
Expand Up @@ -842,7 +842,7 @@ openedx-filters==2.1.0
# ora2
openedx-forum==0.3.8
# via -r requirements/edx/kernel.in
openedx-learning==0.30.0
openedx-learning==0.30.1
# via
# -c requirements/constraints.txt
# -r requirements/edx/kernel.in
Expand Down
2 changes: 1 addition & 1 deletion requirements/edx/development.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1404,7 +1404,7 @@ openedx-forum==0.3.8
# via
# -r requirements/edx/doc.txt
# -r requirements/edx/testing.txt
openedx-learning==0.30.0
openedx-learning==0.30.1
# via
# -c requirements/constraints.txt
# -r requirements/edx/doc.txt
Expand Down
2 changes: 1 addition & 1 deletion requirements/edx/doc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1020,7 +1020,7 @@ openedx-filters==2.1.0
# ora2
openedx-forum==0.3.8
# via -r requirements/edx/base.txt
openedx-learning==0.30.0
openedx-learning==0.30.1
# via
# -c requirements/constraints.txt
# -r requirements/edx/base.txt
Expand Down
2 changes: 1 addition & 1 deletion requirements/edx/testing.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1066,7 +1066,7 @@ openedx-filters==2.1.0
# ora2
openedx-forum==0.3.8
# via -r requirements/edx/base.txt
openedx-learning==0.30.0
openedx-learning==0.30.1
# via
# -c requirements/constraints.txt
# -r requirements/edx/base.txt
Expand Down
Loading