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

Configure the repo as a "smart" template #15

Open
5 of 9 tasks
lebrice opened this issue Jun 26, 2024 · 1 comment
Open
5 of 9 tasks

Configure the repo as a "smart" template #15

lebrice opened this issue Jun 26, 2024 · 1 comment

Comments

@lebrice
Copy link
Collaborator

lebrice commented Jun 26, 2024

Requirements:

  • It should be easy to update "forks" of the template when the template is updated with new features
    • Ideally, it would be possible to setup a github workflow that would create a pull request in a downstream (private) repo whenever a new version of the template is released.
  • The template itself should still be a "runnable", valid python package.
    • Some template libraries use jinja, and as far as I can tell, this requires using {{project_name}}-style filenames or folders, which makes the template impossible to run.

Design / user research

  • Take a look at the different libraries for creating and managing templates
  • Figure out what questions should be asked when creating a new repo from the template. Get some input from some researchers at Mila.

Implementation

  • TDD: Add tests for creating a new repo from the template. Make sure that the user inputs were used correctly and that the resulting repo is usable (e.g. that tests pass in the repo after creation)
  • Add the necessary configuration files / non-invasive templating and github workflows so that the repo can be used as a template

Validation

  • Ask someone at Mila to be a beta user, get them to go through the workflow of setting up a new research project from the template. Gather their feedback.
  • Test out the workflow of updating a downstream repo after new features are pushed to the template.
@lebrice lebrice closed this as completed Oct 8, 2024
@lebrice
Copy link
Collaborator Author

lebrice commented Oct 8, 2024

Part of this is done: When someone uses the template, they get an automated PR every month to incorporate changes.

Caveats:

  • There are no questions asked when creating the repo from the template.
  • I'm not 100% sure about how "smart" the PR is. It's probably just a merge.

@lebrice lebrice reopened this Oct 8, 2024
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