autolab / Tango

Standalone RESTful autograding service
http://www.autolabproject.com/
Apache License 2.0
48 stars 60 forks source link

Tango3 is not verifying job requests #10

Closed droh closed 9 years ago

droh commented 9 years ago

If the user specifies a non-existing VM image, Tango should return immediately with a validation error. It doesn't. Instead, Tango runs waitVM three times in an unsuccessful attempt to start a non-existing VM image.

Tango should be doing extensive validation of job requests, which it apparently isn't.

mihirpandya commented 9 years ago

The check for an existing VM image was removed in the open sourced version of Tango3, since it is CMU specific, and was accidentally merged into prod. The check has been added again in prod (and tested) but not in the open sourced version.

droh commented 9 years ago

This kind of validation definitely needs to be in the open source version. Otherwise people get very strange behavior when forget to update the VM name. You can make it non-CMU specific by adding a config variable that lists the pathname where images can be found.

-- David O'Hallaron -- Prof of CS and ECE, Carnegie Mellon University -- GHC 7517, x8-8199 -- http://www.cs.cmu.edu/~droh

On Wed, Jan 14, 2015 at 2:49 PM, Mihir Pandya notifications@github.com wrote:

The check for an existing VM image was removed in the open sourced version of Tango3, since it is CMU specific, and was accidentally merged into prod. The check has been added again in prod (and tested) but not in the open sourced version.

— Reply to this email directly or view it on GitHub https://github.com/autolab/Tango/issues/10#issuecomment-69979212.

mihirpandya commented 9 years ago

First, we check if Tashi is being used as the VMMS. If so, make sure that a directory is defined for the VM images, as Config.TASHI_IMAGE_PATH.

Here's the piece of code that does that.

https://github.com/autolab/Tango/blob/master/tangod.py#L237