You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The nf-core tools and pipeline templates will periodically be updated and require synchronization. The overall sync process is controlled via the nf-core sync command, but relies heavily on git branches (the TEMPLATE branch) and manual work to resolve merge conflicts. This is described in details here: https://nf-co.re/docs/contributing/sync
Not keeping pipelines in sync might lead to test/lint failures in a pipeline.
Solution 1: Keep our pipelines in sync with nf-core
This solution involves spending active effort to keep our pipelines in sync with nf-core. Mainly, by going through https://nf-co.re/docs/contributing/sync whenever there's a new release.
Advantages
We get latest updates for files by nf-core team. These could include fixes or additional features, or ways of running pipelines that keep us up-to-date.
Our tests in GitHub actions continue to work after syncing
Disadvantages
Syncing is a complicated process that may involve manual review of changes to many files and fixing merge conflicts in git
Syncing might make modifications to files in our pipelines that break integration with IRIDA Next (this would have to be part of review).
Solution 2: Make only minimal changes necessary to keep GitHub actions tests working
In this solution, we only make the minimal changes necessary to keep our test suite working in GitHub. The pipeline code itself should largely remain unchanged.
Advantages
Less complex process to update
Aren't changing pipeline code as much, hence less concern about introducing errors or breaking integration with IRIDA Next.
Disadvantages
Don't keep in-sync with latest changes by nf-core team
Trying to synchronize later may be a much larger task
The text was updated successfully, but these errors were encountered:
apetkau
changed the title
Revisit/come up with plan for keeping in sync with nf-core
Come up with plan for keeping in sync with nf-core
Feb 1, 2024
The current decided solution will be in between Solution 1 (keep pipelines in sync) and Solution 2 (minimal changes).
We will make an effort to keep the iridanextexample pipeline in-sync with nf-core as new changes are made.
This pipeline is used to test out integration with IRIDA Next but is not used for data analysis, so provides an opportunity to test out any changes from nf-core prior to incorporation into other pipelines.
We are using this pipeline as a template for developing other pipelines, and so it's more useful to keep in sync.
For other pipelines we develop, we will only look into synchronizing with nf-core when making a new major release of our pipeline.
Major releases will require testing integration with IRIDA Next anyways.
These will be less frequent and so less work for us to manage.
We could try and re-use work done in keeping iridanextexample in sync with nf-core to synchronize code for other pipelines.
For minor releases, we will look into Solution 2 (minimal changes) in situations where the GitHub actions/test suite is broken.
Problem
The
nf-core
tools and pipeline templates will periodically be updated and require synchronization. The overall sync process is controlled via thenf-core sync
command, but relies heavily on git branches (theTEMPLATE
branch) and manual work to resolve merge conflicts. This is described in details here: https://nf-co.re/docs/contributing/syncNot keeping pipelines in sync might lead to test/lint failures in a pipeline.
Solution 1: Keep our pipelines in sync with nf-core
This solution involves spending active effort to keep our pipelines in sync with nf-core. Mainly, by going through https://nf-co.re/docs/contributing/sync whenever there's a new release.
Advantages
Disadvantages
Solution 2: Make only minimal changes necessary to keep GitHub actions tests working
In this solution, we only make the minimal changes necessary to keep our test suite working in GitHub. The pipeline code itself should largely remain unchanged.
Advantages
Disadvantages
The text was updated successfully, but these errors were encountered: