Commit Graph

128 Commits

Author SHA1 Message Date
Ahsan Ulhaq
9e9c99ac0a Add eligible for financial aid and sync with course discovery
ECOM-7532
2017-03-31 14:35:56 +05:00
Nimisha Asthagiri
4ac78706a3 Waffle Switch with namespacing and request caching 2017-03-28 17:49:20 -04:00
J. Cliff Dyer
b89736c75c Add compute_grades management command.
TNL-6689
2017-03-21 14:47:33 -04:00
Nimisha Asthagiri
89518d798b Merge pull request #14719 from edx/neem/block-structure-waffle-in-task
Have generate_course_blocks pass with_storage to celery tasks
2017-03-20 17:26:05 -04:00
Nimisha Asthagiri
e83182c743 Have generate_course_blocks pass with_storage option to celery tasks 2017-03-20 16:22:44 -04:00
Nimisha Asthagiri
599982f35d Update BlockStructureModel to support Old Mongo courses 2017-03-20 13:09:04 -04:00
Nimisha Asthagiri
2b0ff8e3a3 Storage-backed Block Structures: Use correct bucket
TNL-6645
2017-03-20 00:05:06 -04:00
Nimisha Asthagiri
a2daa8d0fd Move generate_course_blocks to block_structure 2017-03-20 00:04:16 -04:00
Qubad786
7c1f6ff2c0 Mgmt. Command to Sync Marketing Urls from Catalog service
Introduces a mgmt. command that retrieves course runs from catalog service in order to update marketing urls for the courses found in course metadata cache (i.e. CourseOverview). This also provides an updated utility to retrieve course sharing url.
2017-03-06 20:12:31 +05:00
Nimisha Asthagiri
0465f6bf4a Merge pull request #14627 from edx/neem/bs_fix_logs
Fix BlockStructure log statements
2017-03-03 13:26:11 -05:00
Nimisha Asthagiri
9c2e5f257c Fix BlockStructure log statements. 2017-03-03 12:20:58 -05:00
Nimisha Asthagiri
bda2a793ac Increment BlockStructureBlockData.VERSION 2017-03-03 11:42:52 -05:00
Nimisha Asthagiri
952143b776 Block Structure Storage management command
TNL-6524
2017-03-02 12:07:26 -05:00
Nimisha Asthagiri
00d466224e Consolidate Block Structure folders
TNL-6518
2017-03-01 21:19:28 -05:00
Nimisha Asthagiri
1ee2c27f49 Storage-backed versioned Block Structures: Manager and Store 2017-02-28 23:54:57 -05:00
Nimisha Asthagiri
6f9b810f9a Storage-backed versioned Block Structures: Configuration 2017-02-27 00:39:22 -05:00
Nimisha Asthagiri
2f3b0b4cc8 Storage-backed versioned Block Structures: Settings 2017-02-27 00:39:22 -05:00
Nimisha Asthagiri
fb73888eba Storage-backed versioned Block Structures: Models 2017-02-27 00:39:21 -05:00
Sanford Student
041a3df911 short circuit on library publish; for TNL-6297 2017-02-24 13:59:29 -05:00
Nimisha Asthagiri
e7ea1b47e5 Merge pull request #14572 from edx/beryl/cbs_config
Storage-backed versioned Block Structures: Config
2017-02-23 17:37:41 -05:00
David Ormsbee
8423ecb1c8 Student Dashboard CourseOverviews with one query.
Pre-load the course overviews attached to CourseEnrollments on the
Student Dashboard, if possible. This will only grab the CourseOverviews
that already exist, and will not generate new ones. Any missing
CourseOverviews fall back to the lazily-created one-at-a-time behavior
they've always had. That's mostly because I wanted to optimize for the
common case in the least invasive way possible, and I don't want to get
caught up in locking issues.
2017-02-23 15:50:44 -05:00
David Ormsbee
2051c90924 Test Speedup: Isolate Modulestore Signals
There are a number of Django Signals that are on the modulestore's
SignalHandler class, such as SignalHandler.course_published. These
signals can trigger very expensive processes to occur, such as course
overview or block structures generation. Most of the time, the test
author doesn't care about these side-effects.

This commit does a few things:

* Converts the signals on SignalHandler to be instances of a new
  SwitchedSignal class, that allows signal sending to be disabled.

* Creates a SignalIsolationMixin helper similar in spirit to the
  CacheIsolationMixin, and adds it to the ModuleStoreIsolationMixin
  (and thus to ModuleStoreTestCase and SharedModuleStoreTestCase).

* Converts our various tests to use this new mechanism. In some cases,
  this means adjusting query counts downwards because they no longer
  have to account for publishing listener actions.

Modulestore generated signals are now muted by default during test runs.
Calls to send() them will result in no-ops. You can choose to enable
specific signals for a given subclass of ModuleStoreTestCase or
SharedModuleStoreTestCase by specifying an ENABLED_SIGNALS class
attribute, like the following example:

    from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase

    class MyPublishTestCase(ModuleStoreTestCase):
        ENABLED_SIGNALS = ['course_published', 'pre_publish']

You should take great care when disabling signals outside of a
ModuleStoreTestCase or SharedModuleStoreTestCase, since they can leak
out into other tests. Be sure to always clean up, and never disable
signals outside of testing. Because signals are essentially process
globals, it can have a lot of unpleasant side-effects if we start
mucking around with them during live requests.

Overall, this change has cut the total test execution time for
edx-platform by a bit over a third, though we still spend a lot in
pre-test setup during our test builds.

[PERF-413]
2017-02-23 10:31:16 -05:00
Nimisha Asthagiri
30b5822b0e Storage-backed versioned Block Structures: Config 2017-02-23 09:04:53 -05:00
Douglas Hall
58f0154ee2 Add support for multi-org sites
WL-926
2017-02-13 19:33:47 -05:00
Douglas Hall
450d35a799 Revert "Added instructor info in course overview."
This reverts commit 180cf299a3.
2017-02-03 11:30:17 -05:00
Hasnain
180cf299a3 Added instructor info in course overview. 2017-02-01 15:19:52 +05:00
Eric Fischer
0dd617897b Log course on no-retry update_course_in_cache errors 2017-01-25 12:41:39 -05:00
Nimisha Asthagiri
784ef04221 Merge pull request #14359 from edx/beryl/command_generate_cb_tasks
Update generate_course_blocks management command to enqueue tasks.
2017-01-24 17:24:30 -05:00
Nimisha Asthagiri
c04f4401dc Update generate_course_blocks management command to enqueue tasks 2017-01-24 09:11:57 -05:00
Nimisha Asthagiri
408ed01b1d Block Structure: Don't invalidate immediately upon course publish
Introduces the use of Waffle to put the change behind a Switch.
TNL-6323
2017-01-23 11:27:30 -05:00
Cliff Dyer
6d0af9d423 Merge pull request #14157 from edx/efischer/tnl-5799
update_course_in_cache error handling cleanup.
2017-01-04 12:40:27 -08:00
Gregory Martin
1b2fbbd61d delete datetext functions, implement dateutils 2017-01-03 10:18:26 -05:00
Calen Pennington
47e21ca5b0 Revert "Merge pull request #14078 from edx/yro_remove-datetimetext-functions"
This reverts commit 8c0098812d, reversing
changes made to 5b6e2dd5ee.
2016-12-22 09:29:33 -05:00
J. Cliff Dyer
9259156565 review response. 2016-12-20 14:00:47 -05:00
Gregory Martin
b0bf19a741 delete datetext functions, implement dateutils 2016-12-20 11:10:06 -05:00
Eric Fischer
9d545eca4c update_course_in_cache exception handler cleanup 2016-12-15 14:59:24 -05:00
Gregory Martin
f0cd29f02a Revert "Merge pull request #13915 from edx/revert-13794-yro_implement-dateutil"
This reverts commit d59ab18b27, reversing
changes made to 0ebab35e89.
2016-11-07 17:04:13 -05:00
Jesse Zoldak
ec880138d2 Revert "Implement DateUtils in LMS" 2016-11-04 07:50:26 -04:00
Gregory Martin
3fd16eb6be Implement DateUtils in LMS 2016-11-03 10:06:10 -04:00
Eric Fischer
8f0134b7e4 update_course_in_cache should retry on exceptions
Previously, retry() was never called, so the task was never retried despite
defining several retry-related variables.
2016-10-19 14:09:28 -04:00
John Eskew
3614eb2800 Move xmodule_django app to openedx.core.djangoapps 2016-10-06 14:50:40 -04:00
J. Cliff Dyer
1371739f45 Register block_structure djangoapp.
TNL-5274
2016-09-06 11:42:38 -04:00
Nimisha Asthagiri
b37d2d739a Make BlockStructure tasks more resilient against failures.
https://openedx.atlassian.net/browse/TNL-5041
2016-09-02 08:02:49 -04:00
Calen Pennington
bc20a37c2b Simplify how shards are selected in CI 2016-08-03 16:23:02 -04:00
Kevin Kim
0bf8fc4b44 Converts the dates on the dashboard, sidebar navigation, and important course dates to user specified time zone. 2016-07-05 17:45:13 +00:00
E. Kolpakov
33b3dfcc92 Converts Discussion XModule to Discussion XBlock
* Renames discussion_module to discussion_xblock
* Moves common/lib/xmodule/xmodule_discussion to openedx/core/lib/xblock_builtin/xblock_discussion
2016-06-29 06:47:04 +12:00
Nimisha Asthagiri
8513e823bc Add block_metadata_utils 2016-06-23 20:22:33 -04:00
Nimisha Asthagiri
57dde6516a Update ENABLED_CACHES values 2016-06-23 20:22:33 -04:00
Nimisha Asthagiri
f016647fef Enable Block Transformer Registry in tests 2016-06-23 20:22:31 -04:00
Eric Fischer
fdc6d91588 update_in_cache on lms worker (#12689)
This commit "undoes"a previous hotfix, and allows a cms course_publish
signal to trigger a block_structure update_course_in_cache task, which
is run on an lms worker queue.

Changes:
    -exposes ALTERNATE_QUEUE_ENVS
    -adds routing layer in celery.py
    -moves prior dev_with_worker settings file to devstack_with_worker
    -moves course_block api functionality into openedx/core/djangoapps/content/block_structure
2016-06-16 18:01:06 -04:00