-
Notifications
You must be signed in to change notification settings - Fork 22
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
Address deprecation warnings for tests and add local install gradle action #19
base: master
Are you sure you want to change the base?
Changes from all commits
6c765f6
1168032
2482e91
9553876
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
@@ -153,6 +153,44 @@ subprojects { | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
task upload(dependsOn: [uploadPlugin] ) { } | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
/* | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
* Task to install plugin to the Nextflow plugins directory for local testing and development. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
* For production deployment, see "Package, upload, and publish" section in README.md. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
*/ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
task installPlugin(type: Copy, dependsOn: copyPluginZip) { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
description = "Installs ${project.name} plugin to the Nextflow plugins directory" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
group = 'Plugin Installation' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
def pluginsDir = System.getenv('NXF_PLUGINS_DIR') ?: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
System.getenv('NXF_HOME') ? "${System.getenv('NXF_HOME')}/plugins" : | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
"${System.getProperty('user.home')}/.nextflow/plugins" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
// Use the subproject's name and version | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
def pluginZip = file("$rootProject.buildDir/plugins/${project.name}-${project.version}.zip") | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
def pluginDir = file("$pluginsDir/${project.name}-${project.version}") | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
doFirst { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
println "Installing plugin ${project.name} version ${project.version} to: $pluginDir" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
pluginDir.mkdirs() | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
from zipTree(pluginZip) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
into pluginDir | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
doLast { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
println "Plugin ${project.name} installed successfully!" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
println "Installation location: $pluginDir" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
println "Installation location determined by:" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
if (System.getenv('NXF_PLUGINS_DIR')) { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
println " - NXF_PLUGINS_DIR environment variable" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} else if (System.getenv('NXF_HOME')) { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
println " - NXF_HOME environment variable" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} else { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
println " - Default location (~/.nextflow/plugins)" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
/* | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
@@ -176,3 +214,34 @@ task publishIndex( type: io.nextflow.gradle.tasks.GithubRepositoryPublisher ) { | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
githubEmail = github_commit_email | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
githubToken = github_access_token | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
/* | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
* Task to install all plugins to the Nextflow plugins directory | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
*/ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
task installPlugins() { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
description = 'Installs all plugins to the Nextflow plugins directory' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
group = 'Plugin Installation' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
dependsOn subprojects.installPlugin | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
/* | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
* Task to install a specific plugin by name | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
* Usage: ./gradlew installPlugin -Pplugin=nf-hello | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
*/ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
task installSpecificPlugin { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
description = 'Installs a specific plugin (specify with -Pplugin=plugin-name)' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
group = 'Plugin Installation' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
doFirst { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
if (!project.hasProperty('plugin')) { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
throw new GradleException("Please specify a plugin name using -Pplugin=plugin-name") | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
def pluginName = project.property('plugin') | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
def pluginProject = project.findProject(":plugins:${pluginName}") | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
if (!pluginProject) { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
throw new GradleException("Plugin '${pluginName}' not found") | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
dependsOn pluginProject.installPlugin | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Comment on lines
+218
to
+247
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Don't forget to remove these
Suggested change
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -78,6 +78,9 @@ dependencies { | |
modules { | ||
module("commons-logging:commons-logging") { replacedBy("org.slf4j:jcl-over-slf4j") } | ||
} | ||
|
||
// Add this line to explicitly declare the test framework launcher | ||
testRuntimeOnly 'org.junit.platform:junit-platform-launcher' | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This is an addition to address the warning when running
|
||
} | ||
|
||
// use JUnit 5 platform | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Gradle isn't the most intuitive, but in this case these two tasks (
installPlugins
andinstallSpecificPlugin
) are actually implied byinstallPlugin
.The command
will execute the
installPlugin
task on all modules which define it, and since we define theinstallPlugin
in thesubmodules
block, it's automatically defined on all the individual plugin modules.To execute the task only for a specific plugin, we can explicitly state which submodule to run the task on:
This means we can remove both of these tasks, and update the Makefile to use the above forms.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah! I didn't know that! Thanks Tom!!