Skip to content
This repository has been archived by the owner on Aug 30, 2022. It is now read-only.

too much data exposed here #70

Open
tansaku opened this issue Feb 3, 2016 · 8 comments · May be fixed by #84
Open

too much data exposed here #70

tansaku opened this issue Feb 3, 2016 · 8 comments · May be fixed by #84
Assignees

Comments

@tansaku
Copy link
Contributor

tansaku commented Feb 3, 2016

@zhangaaron @armandofox - we should probably review how much of the assignment solutions are being exposed here:

https://github.com/saasbook/rag/tree/master/features/support

@tansaku tansaku added the ready label Feb 3, 2016
@tansaku
Copy link
Contributor Author

tansaku commented Feb 5, 2016

I guess there's a desire to have a single place to run the grader against multiple assignments, however it seems like the sensitive data associated with the assignments should be in private repos.

I wonder if there's some way we can set up travis to pull in the specs for the individual assignments from the private repos without compromising them ...

@bill-auger
Copy link
Member

the travis build sequence is fully customizable - the travis build environment provides full shell access where you can run any shell commend - to accomplish what you are suggesting is just a matter of adding a wget line to the .travis.yml to get any external resources - with the container based build environment they can even be cached

@tansaku
Copy link
Contributor Author

tansaku commented Feb 8, 2016

right @bill-auger but if that is a private repo that needs authorization, then that auth has to go in .travis.yml or similar and then others can access the private repo no?

@bill-auger
Copy link
Member

not neccessarily - you can define serect ENV vars in the travis web interface - this is where API keys and such typically go

travis will define these in the setup phase and the build log will show something like this:

Setting environment variables from repository settings
$ export PRIVATE_SSH_KEY=[secure]

you simply reference them in the repo .travis.yml like:

echo $PRIVATE_SSH_KEY > /home/travis/.ssh/id_rsa

@tansaku
Copy link
Contributor Author

tansaku commented Feb 9, 2016

oh right - thanks @bill-auger - that could be the solution ...

@bill-auger
Copy link
Member

and as i mentioned - entire directories can be cached when using the container-based environment - so if these do not change often you could upload them anywhere temporarily and have the build download them once and cache them - i have not used the container-based environment tho so ymmv - i read about it in the travis docs

@tansaku
Copy link
Contributor Author

tansaku commented Feb 25, 2016

I don't think we need to cache entire directories as such - just a key that allows Travis (but not anyone else) access to the necessary directories should sort this issue.

And in fact it presents the possibility of a completely different grader architecture where students submit their code via pull requests - hmm - although that still exposes their actual code, which is not quite what Armando wants.

What we need is a setup so students can see each others code, but only after they've submitted their own - like codewars has. I think to really learn from looking at other solutions you have to try to solve a problem yourself. However being prevented from looking at other solutions after you have developed your own is actually a barrier to learning ...

@tansaku
Copy link
Contributor Author

tansaku commented Feb 25, 2016

if we had some kind of private repo for submissions, that you could send PRs to but couldn't see the actual repo (and other PRs) until you had submitted your own ... I wonder if the github hub tool could be retrofitted to support that ...

and everyone would get full access to all the PRs once they submitted their first (and their grade would be based on that ...)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants