cytomining/profiling-template

Revisit the instructions to fork profiling-recipe

Opened this issue · 3 comments

A major shortcoming of the current approach is forking profiling-recipe means that you are limited to one fork (for a given GitHub account). Consider this scenario:

  1. I am user-A and I create a repo user-A/dataset-1 using cytomining/profiling-template
  2. I then fork cytomining/profiling-recipe into user-A/profiling-recipe and weld it to user-A/dataset-1, following the instructions in README
  3. I later want to create a new repo user-A/dataset-2 using cytomining/profiling-template
  4. I have to now used the same fork user-A/profiling-recipe and weld it to user-A/dataset-2

So user-A/dataset-1 and user-A/dataset-2 have to use the same fork user-A/profiling-recipe; there is no way around this.

One could create a branch per dataset, i.e.,

  • user-A/profiling-recipe has a branch dataset-1 which is welded to user-A/dataset-1
  • user-A/profiling-recipe has a branch dataset-2 which is welded to user-A/dataset-2

and so on. But this is getting messy!

Did you already ponder this @gwaygenomics ?

I think this is likely a terminology issue, aka the instructions shouldn't use fork? I believe there is no such restriction on number of copies of a template repository (user-A can make as many copies as they want, as long as they all have different names), which is ultimately how the template is set up.

I'm sorry, you were discussing the RECIPE, not the TEMPLATE (this is the part that is most confusing about the new approach IMO!).

Could we make the recipe repo also a template-style repository, in order to get around this?

Great point @bethac07
I was trying to look for notes that Greg and I had made on this decision because there was some good reasoning here (clearly with some shortcomings). More next week

Update: This was the related thread broadinstitute/pooled-cell-painting-profiling-recipe#3

The key part was in the first comment broadinstitute/pooled-cell-painting-profiling-recipe#3 (comment)

Could we make the recipe repo also a template-style repository, in order to get around this?

https://github.com/broadinstitute/pooled-cell-painting-profiling-template#pooled-cell-painting-data-pipeline-welding-template-hammer_and_wrench

We chose to fork the recipe rather than duplicate from a template was so that it would be easy to

  1. pull updates from upstream
  2. push updates to upstream

A template will not allow this.

But the downside of being able to have only one fork per account is a major one, so we should revisit this.