Create a CourseRerunState admin interface

Description

As a site admin, I'd like to be able to manage CourseRerunState via the django admin console.

CourseRerunState has no admin interface, which makes removing rerun tasks a bit cumbersome (remove via django shell) when they become stale.

This is a feature request to make an ops take easier. By admin interface I mean Django admin interface (https://docs.djangoproject.com/en/1.4/ref/contrib/admin/), and by CourseRerunState I mean the CourseRerunState model (https://github.com/edx/edx-platform/blob/d494fe22f1c717c3a0060ef138e3dd4f14c36241/common/djangoapps/course_action_state/models.py#L100-L121).

I've run into a situation where course rerun tasks can go stale, and the CourseRerunState no longer matches up with reality as a result; e.g. the RabbitMQ task is thrown out but the CourseRerunState stays intact. In these rare events (e.g. a worker processing a rerun dies), it would be helpful to be able to remove those tasks through the Django admin interface rather than having to look at the code and drop into a Django shell on the affected deployment. This isn't possible right now because there's currently no ModelAdmin for CourseRerunState.

Steps to Reproduce

None

Current Behavior

None

Expected Behavior

None

Reason for Variance

None

Release Notes

None

User Impact Summary

None

Activity

Show:
Julia Eskew
June 9, 2016, 4:40 PM

FYI - relevant to async tasks.

LeslieG
October 9, 2015, 7:20 PM

I'm going to move this to Platform. please prioritize as appropriate.

Sarina Canelake
August 10, 2015, 5:47 PM

OK that makes sense. In the future please try to put a good amount of information in the ticket when you open it so we understand how to route it correctly.

BrandonD
August 10, 2015, 5:32 PM
Edited

This is a feature request to make an ops take easier. By admin interface I mean Django admin interface (https://docs.djangoproject.com/en/1.4/ref/contrib/admin/), and by CourseRerunState I mean the CourseRerunState model (https://github.com/edx/edx-platform/blob/d494fe22f1c717c3a0060ef138e3dd4f14c36241/common/djangoapps/course_action_state/models.py#L100-L121).

I've run into a situation where course rerun tasks can go stale, and the CourseRerunState no longer matches up with reality as a result; e.g. the RabbitMQ task is thrown out but the CourseRerunState stays intact. In these rare events (e.g. a worker processing a rerun dies), it would be helpful to be able to remove those tasks through the Django admin interface rather than having to look at the code and drop into a Django shell on the affected deployment. This isn't possible right now because there's currently no ModelAdmin for CourseRerunState.

Sarina Canelake
August 10, 2015, 2:51 PM

Could you respond to the questions I wrote above?

Assignee

parthaR

Reporter

BrandonD

Reach

None

Impact

None

Platform Area

None

Customer

None

Partner Manager

None

URL

None

Contributor Name

None

Groups with Read-Only Access

None

Actual Points

None

Category of Work

None

Platform Map Area (Levels 1 & 2)

None

Platform Map Area (Levels 3 & 4)

None

Priority

Unset