feat: lifebit related changes for 22.10 version#29
feat: lifebit related changes for 22.10 version#29mageshwaran-lifebit merged 7 commits into22.10.8from
Conversation
tiagofilipe12
left a comment
There was a problem hiding this comment.
Looks good as well, but add branch protection rules.
| boolean important = false | ||
| if( version.startsWith('!') ) { | ||
| important = true | ||
| // important = true // commenting to avoid pipeline failure due to lower version. https://github.com/nf-core/raredisease/blob/master/nextflow.config#L295C5-L295C35 |
This comment was marked as outdated.
This comment was marked as outdated.
Sorry, something went wrong.
There was a problem hiding this comment.
Pull request overview
This pull request introduces two significant changes to Nextflow: a mechanism to preload Lifebit-specific plugins via environment variable before pipeline execution, and a modification to version checking logic that disables strict version enforcement when the '!' prefix is used in version requirements.
Changes:
- Added environment variable-based plugin preloading functionality specifically for Lifebit plugins (NXF_LIFEBIT_PRELOAD_PLUGINS)
- Disabled strict version checking by commenting out the flag that causes pipeline failures when version requirements are prefixed with '!'
- Added .DS_Store to .gitignore for better macOS compatibility
Reviewed changes
Copilot reviewed 2 out of 3 changed files in this pull request and generated 7 comments.
| File | Description |
|---|---|
| modules/nextflow/src/main/groovy/nextflow/cli/CmdRun.groovy | Adds preloadLifebitPlugins() method and calls it early in the run() method to load vendor-specific plugins before script execution |
| modules/nextflow/src/main/groovy/nextflow/Session.groovy | Comments out the assignment to the 'important' flag in version checking logic, effectively disabling strict version enforcement |
| .gitignore | Adds .DS_Store to ignore macOS system files |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| def envPlugins = sysEnv.get('NXF_LIFEBIT_PRELOAD_PLUGINS') | ||
| if( envPlugins && envPlugins.trim().length() > 0 ) { | ||
| log.debug("Pre-loading Lifebit's plugins '${envPlugins}'...") | ||
| Plugins.load([plugins: envPlugins.tokenize(',').collect { it.trim() }.findAll { it }.unique()]) |
This comment was marked as outdated.
This comment was marked as outdated.
Sorry, something went wrong.
This pull request introduces a mechanism to preload Lifebit plugins before running a Nextflow pipeline and makes a minor change to the version checking logic to prevent pipeline failures due to lower version constraints.
Plugin Preloading Enhancements:
preloadLifebitPluginsto theCmdRunclass inCmdRun.groovy, which checks theNXF_LIFEBIT_PRELOAD_PLUGINSenvironment variable and preloads the specified plugins if present.CmdRunexecution by invokingthis.preloadLifebitPlugins()before script file resolution.Version Checking Adjustment:
importantflag in the version checking logic inSession.groovyto avoid pipeline failures when a lower version is detected, referencing a specific issue in thenf-core/rarediseaserepository.