Currently, there are several values ID values for courses, assignments, and rubric that are hard coded in CanvasIntegrationImpl.java and PhaseUtils.java (and maybe other locations?). Allow for these values to be achieved dynamically, whether from API calls or from the run configuration, to reduce trivial maintenance of the autograder.
Implementation
Ask Michael :P, but likely a series of API calls to Canvas is required. Some potentially useful ones may be
https://canvas.instructure.com/api/v1/courses/:course_id/assignments to retrieve all the assignments in the 240 course
https://canvas.instructure.com/api/v1/courses/:course_id/assignments/:assignment_id to retrieve a specific assignment.
As of Spring Term, the course id is 26141.
As of Summer Term, the course id is 26822
(This may or not be relevant, but personally when making a request I have to prepend 740700000000 to the course id to make valid requests when testing.)
You'll likely want to experiment with Postman to make this process easier.
Overview
Currently, there are several values ID values for courses, assignments, and rubric that are hard coded in
CanvasIntegrationImpl.java
andPhaseUtils.java
(and maybe other locations?). Allow for these values to be achieved dynamically, whether from API calls or from the run configuration, to reduce trivial maintenance of the autograder.Implementation
Ask Michael :P, but likely a series of API calls to Canvas is required. Some potentially useful ones may be
https://canvas.instructure.com/api/v1/courses/:course_id/assignments
to retrieve all the assignments in the 240 coursehttps://canvas.instructure.com/api/v1/courses/:course_id/assignments/:assignment_id
to retrieve a specific assignment.As of Spring Term, the course id is
26141
. As of Summer Term, the course id is26822
(This may or not be relevant, but personally when making a request I have to prepend740700000000
to the course id to make valid requests when testing.)You'll likely want to experiment with Postman to make this process easier.