* Enable import failure and email with Errors/Warnings This PR enables course import failure in case of olx validation errors. Here is the flow. * Course Import tries to import foo.tar.gz into their course shell * Course olx contains validation errors * During course import, olx is validated and import is failed with the error message "Course olx validation failed. Please check your email." * System generates an email with ERRORs & WARNINGs in the body of the email. This PR also adds a waffle flag contentstore.bypass_olx_failure. The purpose of this test flag is to allow course teams to unblock by enabling them to bypass the the olx-validation failure. The workaround is shared on the ticket TNL8214. * Disable olx validation out of the box.
65 lines
2.4 KiB
Python
65 lines
2.4 KiB
Python
"""
|
|
CMS feature toggles.
|
|
"""
|
|
from edx_toggles.toggles import LegacyWaffleFlag, LegacyWaffleFlagNamespace, SettingDictToggle
|
|
|
|
# .. toggle_name: FEATURES['ENABLE_EXPORT_GIT']
|
|
# .. toggle_implementation: SettingDictToggle
|
|
# .. toggle_default: False
|
|
# .. toggle_description: When enabled, a "Export to Git" menu item is added to the course studio for courses that have a
|
|
# valid "giturl" attribute. Exporting a course to git causes the course to be exported in the directory indicated by
|
|
# the GIT_REPO_EXPORT_DIR setting. Note that when this feature is disabled, courses can still be exported to git with
|
|
# the git_export management command.
|
|
# .. toggle_warnings: To enable this feature, the GIT_REPO_EXPORT_DIR setting must be properly defined and point to an
|
|
# existing directory.
|
|
# .. toggle_use_cases: open_edx
|
|
# .. toggle_creation_date: 2014-02-13
|
|
EXPORT_GIT = SettingDictToggle(
|
|
"FEATURES", "ENABLE_EXPORT_GIT", default=False, module_name=__name__
|
|
)
|
|
|
|
# Namespace for studio dashboard waffle flags.
|
|
WAFFLE_NAMESPACE = 'contentstore'
|
|
WAFFLE_FLAG_NAMESPACE = LegacyWaffleFlagNamespace(name=WAFFLE_NAMESPACE, log_prefix='Contentstore: ')
|
|
|
|
# .. toggle_name: split_library_on_studio_dashboard
|
|
# .. toggle_implementation: WaffleFlag
|
|
# .. toggle_default: False
|
|
# .. toggle_description: Enables data new view for library on studio dashboard.
|
|
# .. toggle_use_cases: open_edx
|
|
# .. toggle_creation_date: 2020-07-8
|
|
# .. toggle_tickets: TNL-7536
|
|
SPLIT_LIBRARY_ON_DASHBOARD = LegacyWaffleFlag(
|
|
waffle_namespace=LegacyWaffleFlagNamespace(name=WAFFLE_NAMESPACE),
|
|
flag_name='split_library_on_studio_dashboard',
|
|
module_name=__name__
|
|
)
|
|
|
|
# .. toggle_name: bypass_olx_failure
|
|
# .. toggle_implementation: WaffleFlag
|
|
# .. toggle_default: False
|
|
# .. toggle_description: Enables bypassing olx validation failures during course import.
|
|
# .. toggle_use_cases: open_edx
|
|
# .. toggle_creation_date: 2021-04-15
|
|
# .. toggle_target_removal_date: 2021-05-15
|
|
# .. toggle_tickets: TNL-8214
|
|
BYPASS_OLX_FAILURE = LegacyWaffleFlag(
|
|
waffle_namespace=LegacyWaffleFlagNamespace(name=WAFFLE_NAMESPACE),
|
|
flag_name='bypass_olx_failure',
|
|
module_name=__name__
|
|
)
|
|
|
|
|
|
def split_library_view_on_dashboard():
|
|
"""
|
|
check if data new view for library is enabled on studio dashboard.
|
|
"""
|
|
return SPLIT_LIBRARY_ON_DASHBOARD.is_enabled()
|
|
|
|
|
|
def bypass_olx_failure_enabled():
|
|
"""
|
|
Check if bypass is enabled for course olx validation errors.
|
|
"""
|
|
return BYPASS_OLX_FAILURE.is_enabled()
|