Commit Graph

73 Commits

Author SHA1 Message Date
Calen Pennington
061a46beef Formalize various access roles as objects
This centralizes the logic for group membership, and means that we
don't need to make queries to find out whether the legacy groups names exist.
2013-11-13 13:42:37 -05:00
brianhw
93dddf8dc3 Merge pull request #1585 from edx/brian/retry-email-after-dbtimeout
Add retries when encountering DatabaseError when updating InstructorTask.
2013-11-05 08:18:58 -08:00
Brian Wilson
7bef11a7f1 Add retries when encountering DatabaseError when updating InstructorTask. 2013-11-05 11:18:08 -05:00
Sarina Canelake
198452cd1c Adds Staff and Instructor factories 2013-11-04 11:38:43 -05:00
Brian Wilson
5b48ed840b Refactor subtask creation logic to be less email-specific. 2013-10-28 12:58:11 -04:00
Brian Wilson
0f8f82c845 Define and use SubtaskStatus class. 2013-10-28 12:57:41 -04:00
Brian Wilson
ed4b954a53 Remove the use of celery.group from bulk email subtasks. 2013-10-28 12:47:11 -04:00
Sarina Canelake
90baa0c9af Change footer color in bulk email template 2013-10-23 11:37:51 -04:00
Brian Wilson
16b85c0c2a Check for requeued subtasks when in RETRY state. 2013-10-22 18:17:00 -04:00
Brian Wilson
ecb58e863f Add cache-based locking to subtasks to ensure that the same task is not running in two workers at the same time. 2013-10-22 14:32:52 -04:00
Brian Wilson
ba6477abef Handle all exceptions returned by django-ses. 2013-10-18 15:12:07 -04:00
Brian Wilson
aa172272f3 Update master with hotfixes from release-2013-10-17. 2013-10-18 11:50:42 -04:00
Brian Wilson
a699674015 Check that a subtask has not already completed before running. 2013-10-17 13:32:44 -04:00
Sarina Canelake
86c4a03eba admin-console support for enabling email per course 2013-10-16 13:02:41 -04:00
Brian Wilson
b8239068cb Check that email subtasks are known to the InstructorTask before executing. 2013-10-16 13:02:41 -04:00
Brian Wilson
87a72b7e99 Rename some constants, and refactor bulk email task flow. 2013-10-16 13:02:40 -04:00
Brian Wilson
bc599a0662 Update tests with more complete coverage. 2013-10-16 13:02:40 -04:00
Brian Wilson
e75dd4654b Move subtask update logic that was only needed for tests into the tests that needed it. 2013-10-16 13:02:40 -04:00
Brian Wilson
4505fb4e2c Update InstructorTask before performing a retry. 2013-10-16 13:02:40 -04:00
Brian Wilson
c5debc22e7 Add settings to cap infinite retries. 2013-10-16 13:02:36 -04:00
Brian Wilson
41fcd9627b Don't send emails to students who haven't activated. 2013-10-16 13:02:00 -04:00
Brian Wilson
eaec962de9 Internationalize task progress. 2013-10-16 13:01:59 -04:00
Brian Wilson
df0fba9db8 Add more task-level tests for retries and other errors. Respond to initial comments. 2013-10-16 13:01:59 -04:00
Brian Wilson
04f90fee41 Fix subtask code to handle (tests) running in eager mode. 2013-10-16 13:01:59 -04:00
Brian Wilson
a4c35ac4ff Use separate retry count for calculating retry delay. 2013-10-16 13:01:59 -04:00
Brian Wilson
7b7afd472d Incorporate changes in max_retry logic, adding subtask_status as bulk_email arg. 2013-10-16 13:01:59 -04:00
Brian Wilson
08a08448ee Add some handling for SES exceptions. 2013-10-16 13:01:59 -04:00
Brian Wilson
c133fd9168 Use HIGH_PRIORITY_QUEUE for send_course_email. 2013-10-16 13:01:59 -04:00
Brian Wilson
0fd75181e3 Update handling of bulk-email retries to update InstructorTask before each retry. 2013-10-16 13:01:58 -04:00
Brian Wilson
5c29530db9 Factor out subtask-specific code into subtasks.py. 2013-10-16 13:01:58 -04:00
Brian Wilson
01611c33a6 Refactor instructor_task tests, and add handling for general errors in bulk_email subtasks. 2013-10-16 13:01:58 -04:00
Brian Wilson
2f4774f47c Pass status into course_email for tracking retry status. 2013-10-16 13:01:58 -04:00
Brian Wilson
ffbb228acb Add support for counting and reporting skips in background tasks. 2013-10-16 13:01:58 -04:00
Brian Wilson
8fddcdffcd Initial refactoring for bulk_email monitoring. 2013-10-16 13:01:57 -04:00
Brian Wilson
288ccb1e36 Check that email subtasks are known to the InstructorTask before executing. 2013-10-15 18:34:31 -04:00
Sarina Canelake
c24087a912 django-admin command for enabling email per course 2013-10-11 16:39:12 -04:00
Brian Wilson
58bacb4e67 Rename some constants, and refactor bulk email task flow. 2013-10-10 15:34:16 -04:00
Brian Wilson
03b4330c04 Update tests with more complete coverage. 2013-10-10 15:34:16 -04:00
Brian Wilson
39e8b718ca Move subtask update logic that was only needed for tests into the tests that needed it. 2013-10-10 15:34:16 -04:00
Brian Wilson
b909662d6e Update InstructorTask before performing a retry. 2013-10-10 15:34:15 -04:00
Brian Wilson
a6bd1c2132 Add settings to cap infinite retries. 2013-10-10 15:34:06 -04:00
Brian Wilson
8910ea08b1 Don't send emails to students who haven't activated. 2013-10-10 15:33:00 -04:00
Brian Wilson
653442be43 Internationalize task progress. 2013-10-10 15:33:00 -04:00
Brian Wilson
c787a8f500 Add more task-level tests for retries and other errors. Respond to initial comments. 2013-10-10 15:32:59 -04:00
Brian Wilson
e052dde4f5 Fix subtask code to handle (tests) running in eager mode. 2013-10-10 15:32:59 -04:00
Brian Wilson
506f91a95e Use separate retry count for calculating retry delay. 2013-10-10 15:32:59 -04:00
Brian Wilson
32c846249f Incorporate changes in max_retry logic, adding subtask_status as bulk_email arg. 2013-10-10 15:32:59 -04:00
Brian Wilson
853cd874e1 Add some handling for SES exceptions. 2013-10-10 15:32:59 -04:00
Brian Wilson
62bc32d4fd Use HIGH_PRIORITY_QUEUE for send_course_email. 2013-10-10 15:32:59 -04:00
Brian Wilson
42033ca80c Update handling of bulk-email retries to update InstructorTask before each retry. 2013-10-10 15:32:59 -04:00