Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problems that use files for input don't work #14

Closed
2 tasks done
bazadactyl opened this issue Jan 9, 2018 · 1 comment
Closed
2 tasks done

Problems that use files for input don't work #14

bazadactyl opened this issue Jan 9, 2018 · 1 comment
Assignees
Labels
🐞 bug Something isn't working

Comments

@bazadactyl
Copy link
Member

bazadactyl commented Jan 9, 2018

When submitting code for problems 7-10, the website always returns a 500 (internal server) error. These are the problems that depend on files for input (as opposed to using command-line arguments).

The problem is in the Engine. Many of the path strings in the code are relative (e.g, just the basename) which can fail to refer to problem input files. These failures occur when running the Engine from a working directory that is different than the working directory used on my personal development machine.

To fix this issue, use of path strings must be consistent and robust to the different working directories.

This issue will be deemed resolved when:

  • the Engine does not use paths that depend on the working directory, nor depend on the location of any source file
  • problems 7-10 work properly in both development and production
@bazadactyl bazadactyl self-assigned this Jan 9, 2018
@bazadactyl bazadactyl added the 🐞 bug Something isn't working label Jan 9, 2018
@ali-ramadhan
Copy link
Member

I think you partly fixed this but this should be completely fixed now. Problem modules now define static resources which the engine will push into the LXD containers before running any test cases. Individual test cases can also define dynamic resources, which test case specific files the user must read, and user generated files, which are test case specific files the write writes out that the engine must pull and read to evaluate test case correctness.

We've moved away from reading and writing files for problems 1-10 so this functionality isn't used anymore but it's available and works (when I tested it using the old versions of problems 1-10) if we decide we need it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🐞 bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants