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

[staff-cli] Allow custom checkout/merge strategies #3

Open
nwalters512 opened this issue Aug 12, 2018 · 0 comments
Open

[staff-cli] Allow custom checkout/merge strategies #3

nwalters512 opened this issue Aug 12, 2018 · 0 comments

Comments

@nwalters512
Copy link
Member

It should be possible to specify the way in which assignment files are checked out and merged with student files. This will be necessary to support a broader variety of use cases. For example, in 225, we want to check out a specific directory from our assignment monorepo and then merge specific subdirectories in that together before finally merging in student code. However, 241 wants to checkout their entire monorepo, checkout all student files, and then handle them inside its own grader.

We could use the existing course-level config.yml to specify this. There are a few options:

  • Declare behaviors as npm packages and then have Zephyr dynamically install them on the fly if needed. This makes things extremely flexible and prevents us from having to bundle every possible behavior with the CLI, but I can forsee versioning being an issue (it'd be possible to accidentally be on an old version without knowing it).
  • Bundle all strategies with Zephyr. Makes versioning easy, but could bloat the CLI as more are added.

This same kind of decision will need to be made for how to handle different graders. The same solution should probably be used in both places.

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

No branches or pull requests

1 participant