Skip to content

Commit 3156ea0

Browse files
edmundmillerclaude
andcommitted
build: configure package manager plugins for proper compilation
- Update nf-conda and nf-pixi build.gradle to use standard Gradle plugins - Add required MANIFEST.MF files with plugin metadata - Register both plugins in settings.gradle - Configure proper dependencies and source sets for plugin compilation 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]> Signed-off-by: Edmund Miller <[email protected]>
1 parent 33bc8be commit 3156ea0

File tree

5 files changed

+60
-26
lines changed

5 files changed

+60
-26
lines changed

plugins/nf-conda/build.gradle

Lines changed: 23 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -14,22 +14,32 @@
1414
* limitations under the License.
1515
*/
1616

17-
plugins {
18-
id 'nextflow-plugin'
17+
apply plugin: 'java'
18+
apply plugin: 'java-test-fixtures'
19+
apply plugin: 'idea'
20+
apply plugin: 'groovy'
21+
22+
sourceSets {
23+
main.java.srcDirs = []
24+
main.groovy.srcDirs = ['src/main']
25+
main.resources.srcDirs = ['src/resources']
26+
test.groovy.srcDirs = ['src/test']
27+
test.java.srcDirs = []
28+
test.resources.srcDirs = ['src/testResources']
1929
}
2030

21-
group = 'io.nextflow'
22-
version = '1.0.0'
23-
gitBranch = 'main'
31+
configurations {
32+
// see https://docs.gradle.org/4.1/userguide/dependency_management.html#sub:exclude_transitive_dependencies
33+
runtimeClasspath.exclude group: 'org.slf4j', module: 'slf4j-api'
34+
}
2435

2536
dependencies {
26-
// plugin dependencies
27-
api project(':nextflow')
37+
compileOnly project(':nextflow')
38+
compileOnly 'org.slf4j:slf4j-api:2.0.17'
39+
compileOnly 'org.pf4j:pf4j:3.12.0'
2840

29-
// test dependencies
30-
testImplementation(testFixtures(project(':nextflow')))
31-
testImplementation 'org.codehaus.groovy:groovy-test:3.0.19'
32-
testImplementation 'org.spockframework:spock-core:2.3-groovy-3.0'
33-
testImplementation 'org.testcontainers:testcontainers:1.20.0'
34-
testImplementation 'org.testcontainers:spock:1.20.0'
41+
testImplementation(testFixtures(project(":nextflow")))
42+
testImplementation project(':nextflow')
43+
testImplementation "org.apache.groovy:groovy:4.0.28"
44+
testImplementation "org.apache.groovy:groovy-nio:4.0.28"
3545
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
Manifest-Version: 1.0
2+
Plugin-Class: nextflow.conda.CondaPlugin
3+
Plugin-Id: nf-conda
4+
Plugin-Version: 1.0.0
5+
Plugin-Provider: Seqera Labs
6+
Plugin-Requires: >=25.04.0

plugins/nf-pixi/build.gradle

Lines changed: 23 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -14,22 +14,32 @@
1414
* limitations under the License.
1515
*/
1616

17-
plugins {
18-
id 'nextflow-plugin'
17+
apply plugin: 'java'
18+
apply plugin: 'java-test-fixtures'
19+
apply plugin: 'idea'
20+
apply plugin: 'groovy'
21+
22+
sourceSets {
23+
main.java.srcDirs = []
24+
main.groovy.srcDirs = ['src/main']
25+
main.resources.srcDirs = ['src/resources']
26+
test.groovy.srcDirs = ['src/test']
27+
test.java.srcDirs = []
28+
test.resources.srcDirs = ['src/testResources']
1929
}
2030

21-
group = 'io.nextflow'
22-
version = '1.0.0'
23-
gitBranch = 'main'
31+
configurations {
32+
// see https://docs.gradle.org/4.1/userguide/dependency_management.html#sub:exclude_transitive_dependencies
33+
runtimeClasspath.exclude group: 'org.slf4j', module: 'slf4j-api'
34+
}
2435

2536
dependencies {
26-
// plugin dependencies
27-
api project(':nextflow')
37+
compileOnly project(':nextflow')
38+
compileOnly 'org.slf4j:slf4j-api:2.0.17'
39+
compileOnly 'org.pf4j:pf4j:3.12.0'
2840

29-
// test dependencies
30-
testImplementation(testFixtures(project(':nextflow')))
31-
testImplementation 'org.codehaus.groovy:groovy-test:3.0.19'
32-
testImplementation 'org.spockframework:spock-core:2.3-groovy-3.0'
33-
testImplementation 'org.testcontainers:testcontainers:1.20.0'
34-
testImplementation 'org.testcontainers:spock:1.20.0'
41+
testImplementation(testFixtures(project(":nextflow")))
42+
testImplementation project(':nextflow')
43+
testImplementation "org.apache.groovy:groovy:4.0.28"
44+
testImplementation "org.apache.groovy:groovy-nio:4.0.28"
3545
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
Manifest-Version: 1.0
2+
Plugin-Class: nextflow.pixi.PixiPlugin
3+
Plugin-Id: nf-pixi
4+
Plugin-Version: 1.0.0
5+
Plugin-Provider: Seqera Labs
6+
Plugin-Requires: >=25.04.0

settings.gradle

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,3 +43,5 @@ include 'plugins:nf-codecommit'
4343
include 'plugins:nf-wave'
4444
include 'plugins:nf-cloudcache'
4545
include 'plugins:nf-k8s'
46+
include 'plugins:nf-conda'
47+
include 'plugins:nf-pixi'

0 commit comments

Comments
 (0)